Pull to refresh
Artem @storage read-only

User

Бинарники из Python-файлов: Nuitka-компилятор, обзор и небольшое исследование

Сбер corporate blog Python *Programming *System Analysis and Design *


Здравствуйте, дорогие хабровчане. Сегодняшняя статья — результат моего небольшого исследования. Я хочу показать, как компилировать бинарные модули расширения (.so) из python-файлов, чем они будут отличаться и как с ними работать. Делать это мы будем при помощи компилятора Nuitka. Он наиболее известен тем, что с его помощью можно создавать исполняемые файлы (.exe) для Windows. Однако, кроме того, он позволяет создавать и бинарные модули python. Всех, кому это интересно, прошу под кат.

Читать дальше →
Total votes 12: ↑11 and ↓1 +10
Views 2.8K
Comments 2

Полезные ресурсы для погружения в Go: выбор сотрудников Selectel

Selectel corporate blog Programming *Go *Reading room

Попросили коллег порекомендовать ресурсы — подкасты, ютуб-каналы, книги, блоги и GitHub-репозитории — для изучения языка программирования Go. Сохраняйте подборку в закладки: пригодится и начинающим, и опытным специалистам. А также делитесь своими вариантами в комментариях.
Читать дальше →
Total votes 46: ↑45 and ↓1 +44
Views 12K
Comments 4

30 фильмов про IT и киберпанк, которые можно пересмотреть на новогодних праздниках

Timeweb Cloud corporate blog Cyberpunk Popular science Science fiction
Digest
На новогодних праздниках можно позволить себе отдохнуть и посмотреть старое и новое кино. Фильмы про IT подбирал так, чтобы можно было найти на любой вкус. Ниже список, которым решил с вами поделиться.

Читать дальше →
Total votes 62: ↑45 and ↓17 +28
Views 21K
Comments 99

Собираем логи с Loki

Badoo corporate blog Open source *System administration *DevOps *Kubernetes *


Мы в Badoo постоянно мониторим свежие технологии и оцениваем, стоит ли использовать их в нашей системе. Одним из таких исследований и хотим поделиться с сообществом. Оно посвящено Loki — системе агрегирования логов.


Loki — это решение для хранения и просмотра логов, также этот стек предоставляет гибкую систему для их анализа и отправки данных в Prometheus. В мае вышло очередное обновление, которое активно продвигают создатели. Нас заинтересовало, что умеет Loki, какие возможности предоставляет и в какой степени может выступать в качестве альтернативы ELK — стека, который мы используем сейчас.

Total votes 44: ↑44 and ↓0 +44
Views 71K
Comments 16

Loki — сбор логов, используя подход Prometheus

OTUS corporate blog DevOps *Kubernetes *
Translation
Салют, хабровчане! В преддверии старта нового набора на курс «DevOps практики и инструменты» подготовили для вас перевод интересного материала.





Эта статья — краткое введение в Loki. Проект Loki поддерживается Grafana и направлен на централизованный сбор логов (с серверов или контейнеров).

Основным источником вдохновения для Loki был Prometheus с идеей применения его подходов к управлению логами:

  • использование меток (labels) для хранения данных
  • потребление малого количества ресурсов

Мы еще вернемся к принципам работы Prometheus и приведем несколько примеров его использования в контексте Kubernetes.

Несколько слов о Prometheus


Чтобы полностью понять, как работает Loki, важно сделать шаг назад и немного вспомнить Prometheus.

Одной из отличительных характеристик Prometheus является извлечение метрик из точек сбора (через экспортеры) и сохранение их в TSDB (Time Series Data Base, база данных временных рядов) с добавлением метаданных в виде меток.
Читать дальше →
Total votes 17: ↑15 and ↓2 +13
Views 38K
Comments 7

Лучшие книги по Golang: что стоит почитать как начинающему, так и опытному разработчику

Quadcode corporate blog Go *

Мы в Quadcode любим Golang и можем рассказать о языке и его преимуществах много интересного. Все это неспроста - не так давно мы переписали некоторые наши продукты или отдельные их модули именно на Go, чему радуемся до сих пор. Подробности самых интересных кейсов вскоре планируем раскрыть на Хабре, а пока что поделимся подборкой любимых книг, которые посвящены этому языку. Некоторые из них подходят для начинающих разработчиков, другие - для программистов с опытом. Объединяет все представленные в подборке книги одно - они могут оказаться ну очень полезными для тех, кто так или иначе связан с Go. Подборка - под катом, и, кстати, если вы уже читали какую-то из рекомендованных нами книг, расскажите о своих впечатлениях в комментариях. Поехали!

Да, кстати, еще одна ремарка - некоторые книги переведены на русский, некоторые - нет. Если перевода (пока, как хотелось бы надеяться) нет, то мы об этом скажем.

Читать далее
Total votes 9: ↑8 and ↓1 +7
Views 27K
Comments 14

Введение в мониторинг серверов с помощью Prometheus и Grafana

System administration *
Translation

Мониторинг нужен всем: и серверам крупных технологических компаний и домашним Raspberry PI. Мониторинг позволяет узнать, когда сервер выходит из строя, когда заканчивается дисковое пространство и даже когда подходит время апгрейда.

В этой статье рассмотрим настройку базового мониторинга с помощью Prometheus, Node Exporter и Grafana.

Читать далее
Total votes 13: ↑8 and ↓5 +3
Views 38K
Comments 4

Хостим Bitwarden — open-source менеджер паролей

VDSina.ru corporate blog Information Security *Open source *System administration *Software
Tutorial


Менеджеры паролей действительно полезны и важны как для отдельных пользователей, так и для организаций, и они пригодятся, когда у вас много разных учетных записей и паролей. Обычно люди не любят пользоваться сторонними менеджерами паролей с сервисной архитектурой — неизвестно, что происходит с данными на чужом сервере, и не будет ли он скомпрометирован. Самое безопасное решение это разместить менеджер на своём собственном (как следует защищенном) сервере. Разумеется, к такому self-hosted варианту возникает много требований, и большой список решений с открытым исходным кодом довольно быстро сужается до нескольких известных, проверенных продуктов. Среди них мне больше всего нравится Bitwarden, и сейчас я объясню почему.
Читать дальше →
Total votes 35: ↑35 and ↓0 +35
Views 50K
Comments 42

vCloud Director

Cloud4Y corporate blog System administration *IT Infrastructure *Virtualization *Cloud computing *


Привет, Хабр!
Мы обновили платформу VMware vCloud Director с версии 8.10 до 8.20.

Что нового и какие особенности у версии 8.20? Ответ на этот вопрос вероятно интересует тех, кто ранее уже пользовался облаками по модели IaaS (Infrastructure-as-a-Service) и знаком с продуктом vCloud Director. Мы расскажем об этом во второй половине нашей статьи, но прежде нам хотелось бы дать краткий обзор модулей и компонентов vCloud Director для менее опытных в вопросах виртуализации читателей.

Что нам стоит vЦОД построить?


VMware vCloud Director — это платформа, которая позволяет создавать программно-определяемые, виртуальные центры обработки данных, преобразуя физические ЦОДы в эластичные пулы вычислительных ресурсов, которые конечным потребителям предлагается использовать по различным моделям распределения и потребления. vCloud Director имеет панель управления, которая помогает провайдерам облачных услуг делегировать некоторые из повседневных IT-операций своим клиентам.

Все физические ресурсы дата-центра, такие как вычислительные мощности, диски и сети, объединяются в большие пулы виртуальных ресурсов. В дальнейшем части этих ресурсов предоставляются в виде «сборных» vЦОДов, которые выделяются для арендаторов (tenants).

VCloud Director использует VMware vCenter и VMware vSphere для преобразования физических вычислительных ресурсов и ресурсов хранения в виртуальные пулы, а NSX/vCNS для создания виртуальных сетей с различной топологией.
Читать дальше →
Total votes 9: ↑8 and ↓1 +7
Views 16K
Comments 2

Безопасность в Linux

Southbridge corporate blog Configuring Linux *System administration *DevOps *

В новой статье говорим про безопасность в Linux: как настроить и что важно учитывать в процессе. Дополнительно разбираем PAM и модули аутентификации, рассматриваем iptables. 

За основу взят один из уроков нашего практического курса «Администрирование Linux Мега».

Читать далее
Total votes 24: ↑14 and ↓10 +4
Views 18K
Comments 19

Как справиться с устареванием apt-key и add-apt-repository с помощью gpg в Ubuntu 22.04

*nix *
Sandbox
Translation

apt-key - это утилита, используемая для управления ключами, которые APT использует для аутентификации пакетов. Это тесно связано с утилитой add-apt-repository, которая добавляет внешние репозитории с использованием серверов ключей в список надежных источников установки APT. Однако ключам, добавленным с помощью apt-key и add-apt-repository, apt доверяет глобально. Эти ключи не ограничиваются авторизацией единственного хранилища, для которого они были предназначены. Любой ключ, добавленный таким образом, может быть использован для авторизации добавления любого другого внешнего хранилища, что представляет собой важную проблему безопасности.

Начиная с Ubuntu 20.10, использование apt-key выдает предупреждение о том, что инструмент устареет в ближайшем будущем; аналогичным образом, add-apt-repository также скоро устареет. Хотя эти предупреждения об устаревании строго не запрещают использовать apt-key и add-apt-repository с Ubuntu 22.04, но игнорировать их не рекомендуется.

В настоящее время рекомендуется использовать gpg вместо apt-key и add-apt-repository, и в будущих версиях Ubuntu это будет единственным вариантом. apt-key и add-apt-repository сами по себе всегда действовали как оболочки, вызывая gpg в фоновом режиме. Использование gpg напрямую отсекает посредника. По этой причине метод gpg обратно совместим со старыми версиями Ubuntu и может использоваться в качестве замены apt-key.

В этом руководстве будут описаны две процедуры, использующие альтернативы apt-key и add-apt-repository соответственно. Сначала будет добавлено внешнее хранилище с использованием открытого ключа с помощью gpg вместо использования apt-key. Во-вторых, в качестве дополнения в этом руководстве будет рассмотрено добавление внешнего репозитория с использованием сервера ключей с gpg в качестве альтернативы использованию add-apt-repository.

Читать далее
Total votes 7: ↑5 and ↓2 +3
Views 8.6K
Comments 11

Защита контейнеров с помощью фильтров Seccomp

RUVDS.com corporate blog Virtualization *Development for Linux *
Translation

Многие компании используют контейнеры в качестве фундаментальной технологии для управления своими приложениями и их выполнения. Если вы уже имеете опыт работы с контейнерами, то понимаете их мотивацию: контейнеры обеспечивают совершенно новые уровни портируемости и масштабируемости. Однако использование контейнеров, как и любой другой технологии, также означает и появление новых способов применения эксплойтов приложений.
Читать дальше →
Total votes 37: ↑37 and ↓0 +37
Views 2.3K
Comments 0

Руководство по Docker Compose для начинающих

RUVDS.com corporate blog Website development *Virtualization *
Tutorial
Translation
Автор статьи, перевод которой мы сегодня публикуем, говорит, что она предназначена для тех разработчиков, которые хотят изучить Docker Compose и идут к тому, чтобы создать своё первое клиент-серверное приложение с использованием Docker. Предполагается, что читатель этого материала знаком с основами Docker. Если это не так — можете взглянуть на эту серию материалов, на эту публикацию, где основы Docker рассмотрены вместе с основами Kubernetes, и на эту статью для начинающих.

image
Читать дальше →
Total votes 40: ↑37 and ↓3 +34
Views 498K
Comments 11

Как держать 20 тысяч VPN клиентов на серверах за $5

Self Promo
Месяц назад мы с друзьями сделали бесплатный сервис для обхода блокировок сайтов в Украине Zaborona.Help. За это время сервис стал довольно популярным, аудитория выросла до 20 000 пользователей. Число одновременных подключений в пиковые часы — ≈6 000 клиентов.

Главная особенность нашего сервиса в том, что через VPN маршрутизируется трафик только к заблокированным сетям, остальные сайты работают напрямую. Это не влияет на скорость интернета и не подменяет IP-адрес для остальных сайтов.

В статье описываются тонкости настройки OpenVPN для большого числа клиентов, на дешевых VPS.

  • Как выбрать подходящий хостинг. Отличительные черты плохого хостинга. История о том, как мы долго искали и нашли хостинг в России.
  • Почему IPv6 — хорошо. Правильная настройка IPv6-адресов для VPN-клиентов.
  • Изменение конфигурации OpenVPN на лету, без перезапуска сервера и отключения клиентов.
  • Балансировка нагрузки между серверами и процессами OpenVPN
  • Тонкая настройка Linux для большого числа подключений
  • Особенности кривых операционных систем и роутеров пользователей

Наш опыт будет полезен для тех, кто собирается развернуть VPN для личных нужд, и тех, кто хочет создать сервис с большим числом клиентов.
Читать дальше →
Total votes 79: ↑71 and ↓8 +63
Views 74K
Comments 149

Пользователи и авторизация RBAC в Kubernetes

Флант corporate blog Information Security *System administration *DevOps *Kubernetes *
Translation
Прим. перев.: Продолжая недавно затронутую нами тему безопасности Kubernetes в целом и RBAC — в частности, публикуем перевод этого материала от французского консультанта из международной компании Big Data-компании Adaltas. Автор в деталях показывает, как создавать пользователей, наделять их правами и в дальнейшем обслуживать.

Настройка и запуск кластера Kubernetes – это только начало: ведь его необходимо еще и эксплуатировать. Чтобы обезопасить доступ к кластеру, нужно задать идентификационные данные пользователей и грамотно управлять настройками аутентификации и авторизации.

(Иллюстрация взята из блога CNCF — прим. перев.)

Эта статья посвящена тому, как создавать пользователей, используя клиентские сертификаты X.509, и как управлять авторизацией с помощью базовых API-объектов RBAC в Kubernetes. Мы также поговорим о некоторых открытых проектах, упрощающих администрирование кластера: rakkess, kubectl-who-can, rbac-lookup и RBAC Manager.
Читать дальше →
Total votes 42: ↑41 and ↓1 +40
Views 27K
Comments 0

Локальные репозитории пакетов

System administration **nix *Build automation *

Всем привет! Сегодня хочу поделиться нашими мыслями относительно того, как защититься от санкций палок в колёсах в современных условиях. Собственно, что мы имеем ввиду? Речь идёт о том, что в крупных проектах часто есть единые точки отказа в процессах CI/CD, это может быть как простой репозиторий кодом, так и различные конвеерные системы сборки кода и доставки его в рабочие окружения. Если мы говорим про системный софт, то его можно просто перестать обновлять, запретить ему ходить "наружу", но в данной статье мы поговорим про внешние репозитории с кодом.

Читать далее
Total votes 11: ↑10 and ↓1 +9
Views 7.4K
Comments 11

Безопасное хранение secrets в Kubernetes

Southbridge corporate blog Information Security *System administration *DevOps *Kubernetes *

В Kubernetes есть такая сущность, как secrets, или секреты. Из названия понятно, что эти данные не могут быть общедоступными, и их нужно как-то защищать и особым образом доставлять в кластеры Kubernetes. В статье разберём, что такое secrets и в чём особенности их хранения и доставки. А также рассмотрим два популярных инструмента для работы с секретами: Hashicorp Vault и Helm Secrets.

Читать дальше
Total votes 34: ↑33 and ↓1 +32
Views 12K
Comments 8

Автоматизация установки Kubernetes кластера с помощью Kubespray и Terraform в Yandex Cloud

System administration *IT Infrastructure *Server Administration *DevOps *Kubernetes *

Инструкция была основана на базе видео "Установка кластера Kubernetes с помощью Kubespray" в Youtube.


Код был форкнут из репозитория https://git.cloud-team.ru/lections/kubernetes_setup и добавлен с патчами в репозиторий https://github.com/patsevanton/kubespray_terraform_yandex_cloud


Самое интересное в этом посте для devops специалистов с опытом это скрипт для создания ansible inventory файла из terraform структур.

Читать дальше →
Total votes 6: ↑5 and ↓1 +4
Views 9.1K
Comments 3

CrowPi L: ноутбук на базе Raspberry Pi для обучения и проектирования электроники. Характеристики и возможности

Selectel corporate blog Development for Raspberry Pi *Manufacture and development of electronics *Gadgets Computer hardware

Наша команда не устает удивляться возможностям «малинки» всех моделей, а также творческой фантазии и профессионализму разработчиков, которые работают с этими одноплатниками. Что только не создавали уже на базе Raspberry Pi — от умных камер до спутника. Ну а сейчас разработано устройство, в качестве вычислительного ядра которого работает Raspberry Pi 4B. Девайс выглядит, как ноутбук, и, собственно, им и является. Предназначен он, как и указано в заголовке, для обучения — в первую очередь, программированию и разработке электронных устройств. Правда, не продвинутых систем, а начального уровня. Подробности — под катом.
Читать дальше →
Total votes 45: ↑45 and ↓0 +45
Views 11K
Comments 24

Установка HA Master Kubernetes кластера с помощью Kubespray

Open source **nix *Server Administration *DevOps *Kubernetes *
Tutorial


Kubespray (ранее Kargo) — это набор Ansible ролей для установки и конфигурации системы оркестрации контейнерами Kubernetes. В качестве IaaS в этом случае могут выступать AWS, GCE, Azure, OpenStack или обычные виртуальные машины. Проект раньше назывался Kargo. Это проект с открытым исходным кодом и открытой моделью разработки, поэтому по желанию каждый может повлиять на его жизненный цикл.

На Хабре уже писали об установке Kubernetes с помощью Kubeadm, но в этом способе есть значительные недостатки: он до сих пор не поддерживает мультимастер конфигураций и, порой, не очень гибкий. Kubespray, хоть и использует Kubeadm под капотом, уже имеет функционал обеспечения высокой доступности как для мастера, так и для etcd на этапе инсталляции. О его сравнении с другими актуальными методами установки Kubernetes можно почитать по ссылке https://github.com/kubernetes-incubator/kubespray/blob/master/docs/comparisons.md

В этой статье мы создадим 5 серверов на ОС Ubuntu 16.04. В моем случае их перечень будет следующим:

192.168.20.10 k8s-m1.me
192.168.20.11 k8s-m2.me
192.168.20.12 k8s-m3.me
192.168.20.13 k8s-s1.me
192.168.20.14 k8s-s2.me

Добавляем их к /etc/hosts всех этих серверов, в том числе локальной системы, или же к dns-серверу. Фаервол и другие ограничения в сети этих хостов должны быть деактивированы. Кроме этого, необходимо разрешить IPv4 forwarding и каждый из хостов должен иметь свободный доступ к сети Интернет для загрузки docker-образов.
Читать дальше →
Total votes 17: ↑16 and ↓1 +15
Views 29K
Comments 2

Information

Rating
Does not participate
Registered
Activity