Установка и настройка среды разработки Python 3 в Ubuntu 18.04

Python — это гибкий и универсальный язык программирования, который является отличным решением для реализации сценариев, автоматизации, анализа данных, машинного обучения и общей разработки.

Из этой статьи вы узнаете, как установить Python и настроить среду разработки на Ubuntu 18.04.

Читать далее

Принципы работы кластера Galera для MySQL и управление кластером с помощью ClusterControl

В данном руководстве предоставляется основная информация о высокодоступном кластере Galera для MySQL/MariaDB. Прочитав статью до конца, вы узнаете ответы на вопросы:

  • как работает Galera Cluster;
  • чем репликация Galera Cluster отличается от репликации MySQL;
  • какие настройки рекомендованы для кластера Galera;
  • какими преимуществами и недостатками обладает Galera Cluster;
  • какие преимущества есть в объединении обоих способов репликации в рамках одного развертывания;
  • какие существуют различия в реализациях Galera у различных поставщиков;
  • как управлять кластером Galera;
  • какие стратегии резервного копирования необходимо использовать при использовании Galera.

Также, в статье вы найдете практический раздел о том, как быстро развернуть и управлять кластером с помощью ClusterControl. Для выполнения практической части статьи вам понадобится 4 сервера под управлением Ubuntu Linux 16.04 и новее, или CentOS 7.

Читать далее

Настройка сервера Linux для Tornado в CentOS 7, Debian 9 Stretch, Ubuntu 18.04 Bionic

Tornado — популярный минималистичный фреймворк для разработки web-сервисов с помощью Python. Он часто применяется как для создания обычных сервисов с RESTful-интерфейсом, так и для реализации приложений, использующих Websocket, что идеально реализуется с помощью асинхронных функций языка.

Разработка фреймворка ведется на GitHub. На следующем изображении вы можете видеть, что Tornado активно разрабатывается сообществом:

Настройка сервера для продуктового использования Tornado сопряжена с рядом дополнительных действий, которые требуется выполнить для преодоления ограничений однопоточной природы сервера Tornado — для утилизации всех ядер сервера на многоядерных CPU необходимо запустить несколько экземпляров сервера Tornado и распределить нагрузку между исполняющимися экземплярами с помощью балансировщика нагрузки.

Закончив чтение данного руководства, вы научитесь самостоятельно настраивать минималистичный сервер для для Tornado без лишних компонентов. Ваше приложение будет доступно по защищенному протоколу HTTPS с поддержкой бесплатного сертификата Let’s Encrypt, балансировка трафика между выполняющимися экземплярами приложения Tornado будет осуществляться с помощью Nginx.

Читать далее

Настройка почты для работы через mail.ru

В этой статье мы расскажем вам, как можно настроить обслуживание почты на вашем домене с помощью инфраструктуры Mail.ru. Услуга называется Почта для бизнеса.

Зачем вообще использовать инфраструктуру Mail.ru для обслуживания почты? Это позволяет вам:

  • использовать вам почтовые ящики вида name@superdomain.com;
  • гарантировать доставку почты;
  • радикально уменьшить уровень спама среди входящих писем;
  • не поддерживать собственный почтовый сервер, уменьшив затраты на администрирование.

Прочитав это руководство, вы сможете интегрировать свой домен с инфраструктурой Mail.ru, обеспечив как обслуживание почты, так и опциональное управление DNS. Чтобы узнать подробнее, читайте дальше.

Читать далее

Производительность репликации в кластере MySQL Galera

Администраторы часто настраивают кластер Galera с тремя и более узлами в сетях с пропускной способностью 1 Гбит/с. Кажется, что 1 Гбит/с это довольно много? Фактически, не так уж и много, если задуматься о том, как происходит репликация данных между серверами кластера.

Galera поддерживает два режима репликации — с использованием одноадресной рассылки (ip unicast), либо с использованием многоадресной рассылки, для работы которого может требоваться поддержка на уровне инфраструктуры провайдера или вашего сетевого оборудования, если используется собственная инфраструктура.

Читать далее

Защита сетевого трафика кластера MySQL Galera с помощью шифрования SSL

В том случае, если вы эксплуатируете кластер Galera с узлами, работающими в разных центрах обработки данных, соединение между которыми устанавливается по незащищенному каналу, вам необходимо обеспечить защиту данных, передаваемых между клиентами и кластером и между узлами кластера.

Кластер Galera поддерживает шифрование соединения с использованием протокола SSL. В статье мы рассмотрим, как зашифровать все соединения кластера с помощью SSL-шифрования.

Читать далее

Настройка высокодоступного, масштабируемого отказоустойчивого сайта с помощью Nginx, GlusterFS и MySQL Galera в Linux

Современные сайты часто должны работать в режиме 24x7x365 без остановок на обслуживание. В этих условиях владельцы сайтов готовы инвестировать дополнительные средства в оборудование и программные решения для обеспечения высокой доступности.

Сайт без единой точки отказа становится де-факто требованием в мире, где большинство операций выполняются дистанционным образом. Простои обходятся дорого, особенно, если они происходят в неподходящее время — праздники, выходные, высокий сезон.

В этой статье мы рассмотрим как настроить высокодоступный сайт на трех узлах, которые могут быть как виртуальными так и аппаратными серверами. В ходе настройки мы будем использовать Nginx, СУБД MariaDB (MySQL), распределенную файловую систему GlusterFS, CDN CloudFlare, сертификаты Let’s Encrypt.

Читать далее

Установка драйверов VirtIO в Microsoft Windows

В данной статье мы проиллюстрируем пошаговую установку драйверов VirtIO на примере операционной системы Microsoft Windows Server.

Для начала авторизуйтесь в панели управления Cloud2 для присоединения ISO-образа диска с драйверами VirtIO к существующей виртуальной машине:

1. Авторизуемся в панели управления по адресу: https://ru.cloud-2.io/ui/premium/

Авторизуемся с собственным логином и паролем

2. Выбираем нужную виртуальную машину кликая по её названию (1). В открывшейся панели управления переходим во вкладку устройств (2) и нажимаем стилизованную под плюс кнопку подключения ISO-образа (3):

Подключаем ISO-образ в меню устройств виртуальной машины

3. В открывшемся окне прикрепления ISO-образа указываем тип операционной системы Windows (1), отмечаем образ диска с драйверами VirtIO (2) и подключаем его к нашей машине (3):

Выбираем ISO-образ из библиотеки

4. Переходим в операционную систему. Для этого подключаемся к машине по RDP или используем встроенную консоль панели управления. Для этого кликаем по стилизованной под три точки кнопке меню виртуальной машины (1) и выбираем пункт «Доступ к ВМ» (2):

Открываем пункт Доступ к ВМ

В открывшемся окне нажимаем ссылку «Открыть VNC консоль» (1):

Запускаем консоль

5. В операционной системе с помощью проводника Windows проверяем наличие присоединённого нужного образа с драйверами:

Наличие ISO-образа в виртуальном приводе

В контекстном меню (правая кнопка мыши) кнопки «Пуск» выбираем пункт «Управление компьютером»:

Запускаем Управление компьютером

6. В открывшейся панели переходим в Диспетчер устройств (1), где наблюдаем ряд неизвестных нашей системе девайсов (2), которые нам предстоит инициализировать:

Переходим в диспетчер устройств

7. Поочерёдно устанавливаем драйвера на каждое устройство с подключенного диска. Устанавливаем драйвер устройства Virtio RNG Device:

Контекстное меню на неизвестном устройстве -> Обновить драйвер
Выбираем поиск драйвера на текущем компьютере
Указываем диск подключенного образа с драйверами, в нашем примере это диск D, отмечаем галочкой поиск по вложенным папкам
Соглашаемся доверять ПО от Red Hat 😉 — устанавливаем драйвер
Получаем искомый результат
Новое устройство появляется в списке

Аналогично устанавливаем последующие драйвера устройств VirtIO Serial Driver и Red Hat VirtIO Ethernet Adapter:

Запускам процедуру обновления драйвера устройства
Сообщение об успешно установленном драйвере
То же самое проделываем с сетевым устройством

В результате проделанных манипуляций мы получаем полностью установленные VirtIO устройства в нашей системе. Не забудьте отключить ISO в самой системе или в панели управления виртуальной машиной по окончании работ.

Настройка отказоустойчивого кластера MySQL с синхронной мульти-master репликацией с помощью Galera в Ubuntu, Debian и CentOS Linux

Синхронная мульти-master репликация в MySQL появилась сравнительно недавно, однако была востребована довольно давно. До этого момента пользователям приходилось использовать либо репликацию в режиме Master-Slave и переключать операции записи на ведомый сервер при отказе главного сервера, либо использовать довольно сложный вариант с Master-Master репликацией на основании двунаправленной Master-Slave репликации.

Стоит отметить, что в конфигурации Master-мульти-Slave реализация автоматического переключения становится сложнее и не всегда возможна без человеческого вмешательства. Более того, репликация Master-Slave является не полностью синхронной, отчего могут быть проблемы с потерей данных при выходе сервера Master из строя, если ведомый сервер существенно отстал.

С появлением Galera все стало намного проще. Для надежной работы вам необходимо эксплуатировать нечетное количество серверов, например 3 или 5 для защиты от партиционирования, так, чтобы при ситуации, когда кластер «рассыпался» Galera могла принять обоснованное решение о том, является ли наблюдаемый сегмент кластера целостным.

Читать далее

Улучшение безопасности: новый генератор случайных чисел для VM Cloud2

Уважаемый пользователь, мы произвели улучшение, связанное с генерацией случайных чисел. Теперь в виртуальные машины передается устройство VirtIO RNG, которое может использоваться всеми машинами, которые умеют его определять, для генерации лучшей энтропии.

Показатель энтропии очень важен для быстрой работы многих криптографических функций, что может выражатся в медленной генерации ключей или задержке при установлении SSL/TLS соединений. Если энтропия низкая, эти операции могут работать медленно или блокироваться для ожидания накопления нужного количества энтропии.

Узнать текущий показатель энтропии для машины можно с помощью команды:

cat /proc/sys/kernel/random/entropy_avail
120

Если он низкий (меньше 250), то это может стать проблемой. Теперь вы можете решить эту проблему с помощью приведенных далее инструкций.

Linux

Установите пакет rng-tools для вашей системы:

# Ubuntu/Debian
sudo apt-get update && sudo 
apt-get install -y rng-tools

# CentOS 7
yum install -y rng-tools
systemctl start rngd
systemctl enable rngd

Зайдите в панель управления VM, выключите VM и включите ее снова. Убедитесь, что показатель энтропии вырос по сравнению с предыдущим замером:

cat /proc/sys/kernel/random/entropy_avail
3124

MS Windows

  • Зайдите в панель управления VM. Выключите VM и включите ее снова.
  • Установите драйверы VirtIO с ISO, который находится в списке доступных.
  • При необходимости перезагрузите операционную систему VM.