[Дайджест Selectel] Первые новости 2019 года

Здравствуйте!
Это рассылка Selectel — рассказываем о первых новостях 2019 года. В сегодняшнем выпуске: акция «Сервер для программиста», администрирование кластера Kubernetes в «Виртуальном приватном облаке», подтверждение компетенции в Microsoft Azure, а также новые статьи в блоге и актуальные вакансии компании.


Продлили акцию «Сервер для программиста»
При покупке сервера CL15 за 15,000 руб. вы получаете 3 месяца размещения в дата-центре Selectel. Акция действует до 31 марта или пока серверы указанной конфигурации есть в наличии. Торопитесь, их число ограничено.


Администрирование кластера Kubernetes
В прошлом году в «Виртуальном приватном облаке» появилась возможность быстрого создания кластера Kubernetes. Это открытое ПО, которое помогает автоматизировать развертывание, масштабирование и управление контейнеризированными приложениями.
С этого года вы можете не только легко запустить кластер Kubernetes, но и передать его на администрирование в Selectel. Наши специалисты:
  • Проследят за корректной работой кластера
  • Подключат мониторинг и выведут на дашборд метрики
  • Интегрируют ваше приложение в архитектуру Kubernetes
  • Осуществят операции по созданию и развертыванию контейнеров
  • Интегрируются с вашим отделом разработки и настроят CI/CD-процесс
  • Напишите на managed@selectel.ru — мы проконсультируем и возьмем на себя управление кластером Kubernetes.

Подтвердили компетенцию в Microsoft Azure
Планируете миграцию в Azure или реализацию проектов на базе сервисов Microsoft Azure — доверьтесь профессиональной команде облачной интеграции. В январе сотрудники Selectel подтвердили компетенцию в части разработки приложений в Microsoft Azure — Application Development и теперь могут реализовывать самые смелые задачи.
Напишите на azure@selectel.ru — мы ответим на интересующие вопросы и подберем решение, учитывая баланс функциональности, производительности и стоимости.


Присоединяйтесь к нашей команде! У нас есть открытые вакансии, посмотреть полный перечень можно здесь.
selectel.ru/careers/all/

Что мы сделали для вас в январе



2019-й уверенно стартовал. День пошёл на прибавку, рынок ожил. Наверное, люди просто радуются, что скоро весна. А мы — что у нас день рождения.

Хотя отдельные наши сервисы доступны уже несколько лет, официально платформа Mail.Ru Cloud Solutions родилась в конце января 2018 года (по ходу, мы водолей). Так что мы с вами ровно один год. Как и настоящие физические лица, за год мы встали на ноги и уверенно исследуем мир. Спасибо, что вы с нами!

Что нового
Настройки firewall теперь всегда под рукой, в главной панели. С помощью firewall можно централизованно управлять доступом к виртуальным машинам по нужным протоколам, адресам, портам и так далее.
Как настроить firewall mcs.mail.ru/help/instance/security-express

Настройки сети — тоже под рукой, в главной панели и в свойствах виртуальных машин. Создавайте сети и подсети, управляйте связностью ресурсов в виртуальной инфраструктуре.
Как управлять сетью mcs.mail.ru/help/network/networks-all

Мгновенное подключение API сервиса компьютерного зрения Vision
Большинство публичных сервисов компьютерного зрения требует ручной проверки для подключения API. С Vision вы получаете доступ и токен в автоматическом режиме. Обработка первых 5000 фото — бесплатно.

Ускорение всего
В прошлом месяце мы ускорили диски ВМ на 20%. А в январе мы разогнали HDD-диски ещё быстрее, ускорение от 15% до 40% в зависимости от приложения.


Кластеры Kubernetes теперь создаются в 2 раза быстрее, в среднем 11-13 минут, в зависимости от конфигурации кластера. Раньше было больше 20.
Как создать облачный кластер Kubernetes mcs.mail.ru/help/kubernetes/clasterfast

Поддержка весов на балансировщиках. Теперь в настройках балансировщика нагрузки можно задать веса инстансов. Нагрузка будет распределяться между инстансами в пропорции этих весов.
О балансировке нагрузки инстансов mcs.mail.ru/help/network/balancers

Ждите новостей в марте!

Контейнеры против виртуальных машин: это только начало пути

Контейнер — это изолированная среда выполнения приложений. Она включает в себя само приложение и все его зависимости, в том числе исполняемые файлы, файлы конфигураций и библиотеки, собранные в едином пакете. Такая «упаковка» значительно облегчает миграцию приложений из одного окружения в другое. В отличие от виртуальных машин, у каждой из которых своя ОС, контейнер разделяет ядро операционной системы с другими контейнерами. По сравнению с виртуальными машинами контейнеры считаются более легковесными, они также предлагают беспрецедентные уровни гибкости для корпоративных приложений.

Есть и в планах, и в бюджете
Сегодня доверие компаний к контейнерам постепенно усиливается. В Diamanti провели небольшое исследование, в ходе которого выяснилось, что две трети опрошенных ИТ-лидеров рассматривают возможность перемещения нагрузок с виртуальных машин на контейнеры. Две пятых оказались еще решительнее, так как заявили о намерении в скором времени полностью перейти на контейнеры. Однако массовый отказ от виртуальных машин вряд ли возможен.

По данным Diamanti, около трети ИТ-лидеров, внедряющих контейнеры, в 2018 году планировали выделить на эту инициативу не менее 100 000 долларов. Очевидно, это небольшая сумма для корпоративного ИТ-бюджета, но для финансирования нововведений в ИТ — очень даже неплохая. Отметим, что из всех средств, выделяемых на ИТ, 70% уходит на поддержание текущего состояния используемых технологий.

Kubernetes пока первый
Интересно, что 59% участников опроса сообщили, что разворачивают контейнеры на виртуальных машинах. Также для этих целей они используют публичные (39%), частные облака (38%) и выделенные серверы.

Самым популярным решением по оркестровке контейнеров по состоянию на 2017 год являлся Kubernetes. По данным SurveyMonkey и Portworx, эту систему используют около трети опрошенных. С помощью Kubernetes можно виртуализировать базовую ИТ-инфраструктуру, в которой уже развернуты контейнеры, без гипервизора; она предоставляет инструменты для организации и обновления тысяч контейнеров.

Сервис управления контейнерами Amazon ECS в рейтинге популярности оказался лишь третьим. Хотя 70% участников опроса Diamanti считает, что от перехода на контейнеры среди вендоров в первую очередь должен выиграть AWS.

Заключение
Хотя о контейнерах стали говорить чаще и охотнее, компании находятся еще в самом начале пути их применения. Виртуальные машины существуют и используются в течение 15 лет. Они настолько укоренились в технологической повседневности, что вряд ли исчезнут в ближайшее время. Однако немало ИТ-специалистов уже сейчас рассматривают контейнеры как хорошую возможность уменьшить свою зависимость от них, а заодно обеспечить большую гибкость корпоративных приложений.

Выгодные предложения на сервисы и инструменты для бизнеса от REG.RU



Максимальная экономия на хостинге: скидка до 45%!
Получите быстрый и надёжный хостинг и сэкономьте. Чем больше срок заказа, тем больше скидка! Например, при заказе виртуального хостинга на 36 месяцев вы получите скидку в 45%.
www.reg.ru/company/promotions/693

Домен .INFO: адреса для СМИ и инфопроектов за 99 рублей
Успейте зарегистрировать необычное и яркое доменное имя для своего блога, обучающего сайта или интернет-СМИ. Предложение действует до 31 декабря 2019 года.
www.reg.ru/company/promotions/5111

Бесплатный хостинг и SSL-сертификат в подарок при регистрации домена
Домен — это то, с чего начинается любой интернет-бизнес.
На сайте REG.RU в подарок к красивому и недорогому домену вы получаете бесплатный SSL-сертификат и хостинг на 2 месяца.
www.reg.ru/company/promotions/672

Универсальные домены .XYZ по 99 рублей
Разработчики, дизайнеры, маркетологи, архитектурные бюро, digital-агентства и многие другие компании или независимые специалисты могут с полной уверенностью зарегистрировать домен .XYZ и получить современный и необычный адрес для сайта.
www.reg.ru/company/promotions/5121

Закажите VPS и получите ISPmanager 5 Lite на 1 месяц бесплатно!
Сделайте вашу работу с сервером проще с ISPmanager 5 Lite. Закажите любой тариф VPS или Dedicated и получите бесплатно на один месяц удобную панель управления сервером.
www.reg.ru/company/promotions/5065

Топовые IT-мероприятия этого месяца
Участвуйте в самых интересных и продуктивных конференциях, выставках, мастер-классах и улучшайте свои профессиональные навыки. Анонсы главных IT-событий вы найдёте в разделе «Мероприятия» на сайте REG.RU.
www.reg.ru/company/promotions/

Мощный виртуальный сервер с большим диском

Здравствуйте, уважаемые клиенты!

Хотим представить вашему вниманию новый мощный виртуальный сервер в Москве со следующими параметрами:
  • CPU: 8 X 2.4 GHz
  • RAM: 8 GB DDR3
  • HDD: 500 GB SATA (RAID10)
  • Канал: 100 MBPS/Unlim
  • Стоимость: 1600 рублей в месяц


Для заказа создайте тикет в панели управления.

С уважением, администрация XPE.SU.

Информация о попытках несанкционированного доступа



За последние сутки нами было зафиксированы множественные попытки сброса пароля наших клиентов и попыток авторизации в биллинг.

Мы детально проанализировали все запросы, и пришли к выводу, что это несанкционированные запросы, которые были сделаны с использованием сторонних баз данных электронных адресов и паролей. С нашей стороны утечек данных не зафиксировано.

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

Мы рекомендуем Вам изменить пароли на почту и другие важные сервисы, а также используйте двухфакторную авторизацию, где есть такая возможность.

Рекомендуем также включить двухфакторную авторизацию у нас в биллинге — fornex.com/auth/account/two_factor/

С уважением,
Команда Fornex Hosting S.L.

Как настроить VPS сервер для хостинга сайтов (скидка внутри)



Есть как минимум 2 способа приготовления сервера для хостинга сайтов:
  • Устанавливать / настраивать / отлаживать каждый из элементов LAMP (Linux+Apache+MySQL+PHP) руками
  • Поставить панель управления, которая сама все настроит и управлять всем хозяйством через web
Я обычно использую второй вариант, если нет жестких требований к проекту. Использование панели управления обычно позволяет:
  • Значительно сократить время развертывания LAMP (15-20 минут против половины дня)
  • Исключить ошибки первичной настройки (пути, права)
  • Упростить / ускорить рутинные операции (добавление доменов, пользователей)

Какую панель управления выбрать?
Тут тоже два пути:
  • Коммерческие (ISPmanager, cPanel, Plesk)
  • Бесплатные (VestaCP, CWP, Ajenty)
Список конечно шире, я перечислил те что попадаются на серверах наших клиентов чаще всего.

И сегодня я расскажу подробнее о панели управления хостингом VestaCP
Бесплатная. С открытым исходным кодом. Написана большей частью на PHP и Bash (можно при желании поправить что-нибудь).
Живет тут vestacp.com
Ветка на GitHub тут github.com/serghey-rodin/vesta

Что может?
  • Весь необходимый функционал в комплекте
  • Хостинг сайтов, почты, DNS
  • Управление бекапами, заданиями cron, службами на сервере
  • Веб-почта, phpmyadmin
  • Мониторинг ресурсов сервера

Для искушенных пользователей
  • CLI интерфейс
  • Многопользовательский режим
  • Автогенерация Let's Encrypt сертификтов
  • Nginx + php-fpm из коробки

Есть ложка дегтя: в комплекте нет встроенного в панель файлового менеджера. Потому либо (s)FTP либо покупать плагин файлового менеджера отдельно

Как посмотреть?
Тут есть demo demo.vestacp.com

Как установить?
Сама панель весьма не требовательна к ресурсам. Потому CloudVDS 1 или CloudVDS Custom c базовыми опциями (1 CPU + 1 Gb RAM + 20 Gb SSD) более чем подойдет.
Я обычно использую для VestaCP серверы с Debian 9 x64, хотя так же без проблем становится и на Centos 7 x64.
Для запуска установки нужно выполнить в консоли сервера (первая команда скачает, а вторая запустит установщик):
wget http://vestacp.com/pub/vst-install.sh
bash vst-install.sh

После запуска установщик спросит какое ПО ставить. Можно выбрать нужное, можно оставить по умолчанию.
А можно воспользоваться мастером на сайте в собрать строку запуска сразу с нужными опциями vestacp.com/install (внизу страницы)

Установка проходит в автоматическом режиме. Вопросов не задает. Через 10-15 в консоли покажет адрес / логин / пароль для входа.

Управление — интуитивное. Однако — если возникнут вопросы по работе с этой панелью — обращайтесь, обязательно помогу.

А еще до конца февраля действует промокод "vestacp". Он дает 50% скидку при заказе виртуального сервера CloudVDS 1 или CloudVDS Custom
Собрать свою уникальную конфигурацию сервера можно тут www.flynet.pro/ru/hosting/vds-vps-hosting

С уважением, Ковальчук Евгений
www.flynet.pro
Тел.: +7 (3822) 71-21-96
E-mail: kovalchuk@flynet.pro

Управление Kubernetes над Kubernetes было хорошей идеей

Управление Kubernetes над Kubernetes было хорошей идеей для компонентов без контроля состояния плоскости управления… но как насчет etcd?


В нашем предыдущем посте мы описали архитектуру Kubinception, как мы запускаем Kubernetes над Kubernetes для компонентов без состояний в плоскостях управления кластерами клиентов. Но как насчет компонента с состоянием, etcd?

Необходимость очевидна: каждый кластер клиентов должен иметь доступ к etcd, чтобы иметь возможность хранить и извлекать данные. Весь вопрос в том, где и как развернуть etcd, чтобы сделать его доступным для каждого кластера клиентов.

Самая простая идея не всегда хорошая
Первый подход заключается в простом следовании логике Kubinception: для каждого клиентского кластера развертывание кластера etcd в качестве модулей, работающих на административном кластере.


Этот полный подход Kubinception имеет преимущество быть простым, он кажется продолжением того, что мы делаем с компонентами без сохранения состояния. Но если взглянуть на него подробно, он показывает свои недостатки. Развертывание кластера etcd не так просто и просто, как развертывание без сохранения состояния и является критически важным для работы кластера, мы не могли просто обработать его вручную, нам был необходим автоматизированный подход для управления им на более высоком уровне. www.diycode.cc/projects/coreos/etcd-operator

Использование оператора
Мы были не единственными, кто думал, что сложность работы с развертыванием и работой кластера etcd на Kubernetes была чрезмерной, люди из CoreOS заметили это, и в 2016 году они выпустили элегантное решение проблемы: etcd оператор coreos.com/blog/introducing-the-etcd-operator.html

Оператор — это специальный контроллер, который расширяет API Kubernetes для простого создания, настройки и управления экземплярами сложных (часто распределенных) приложений с отслеживанием состояния в Kubernetes. Для записи, понятие оператора было введено CoreOS с оператором etcd.


Оператор etcd управляет кластерами etcd, развернутыми в Kubernetes, и автоматизирует рабочие задачи: создание, уничтожение, изменение размера, аварийное переключение, непрерывное обновление, резервное копирование
kubernetes.io

Как и в предыдущем решении, кластер etcd для каждого клиентского кластера развертывается в качестве модулей в административном кластере. По умолчанию оператор etcd развертывает кластер etcd, используя локальное непостоянное хранилище для каждого модуля etcd. Это означает, что если все модули умирают (маловероятно) или перепланируются и появляются в другом узле (гораздо более вероятно), мы можем потерять данные etcd. А без этого заказчик Kubernetes оказывается в кирпиче.

Оператор etcd может быть настроен на использование постоянных томов (PV) для хранения данных, поэтому теоретически проблема была решена. Теоретически, поскольку управление томами не было достаточно зрелым, когда мы тестировали его, и если модуль etcd был убит и переназначен, новый модуль не смог получить свои данные на PV. Таким образом, риск полной потери кворума и блокирования клиентского кластера все еще был у оператора etcd.
kubernetes.io/docs/concepts/storage/persistent-volumes/

Короче говоря, мы немного поработали с оператором etcd и обнаружили, что он недостаточно зрел для нашего использования.

StatefulSet
Помимо оператора, другим решением было использование StatefulSet, своего рода распределенного развертывания, хорошо подходящего для управления распределенными приложениями с отслеживанием состояния.
kubernetes.io/docs/concepts/workloads/controllers/statefulset/
kubernetes.io/docs/concepts/workloads/controllers/deployment/
github.com/helm/charts/tree/master/incubator/etcd

Существует официальная диаграмма ETCD Helm, которая позволяет развертывать кластеры ETCD в виде StafefulSets, которая обменивает некоторую гибкость оператора и удобство для пользователя на более надежное управление PV, которое гарантирует, что перепланированный модуль etcd будет получать свои данные.


Etcd StatefulSet менее удобен, чем оператор etcd, поскольку он не предлагает простого API для операций, таких как масштабирование, отработка отказа, последовательное обновление или резервное копирование. Взамен вы получаете некоторые реальные улучшения в управлении PV. StatefulSet поддерживает липкую идентификацию для каждой записи etcd, и этот постоянный идентификатор сохраняется при любом перепланировании, что позволяет просто связать его с PV.

Система настолько устойчива, что даже если мы потеряем все модули etcd, когда Kubernetes перепланирует их, они найдут свои данные, и кластер продолжит работать без проблем.

Постоянные объемы, задержка и простой расчет затрат
Etcd StatefulSet казался хорошим решением… пока мы не начали интенсивно его использовать. В etcd StatefulSet используются PV, то есть тома сетевого хранилища. И т.д.DD довольно чувствительны к задержке в сети, ее производительность сильно ухудшается, когда сталкивается с задержкой.

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

В сервисе OVH Managed Kubernetes мы выставляем счета нашим клиентам в соответствии с количеством рабочих узлов, которые они используют, то есть плоскость управления свободна. Это означает, что для обеспечения конкурентоспособности сервиса важно держать под контролем ресурсы, потребляемые плоскостями управления, поэтому нет необходимости удваивать количество пакетов с помощью etcd.

С Kubinception мы пытались мыслить нестандартно, казалось, что для etcd нам нужно было выбраться из этой коробки еще раз.

Мультитенантный кластер etcd
Если мы не хотели развертывать etcd внутри Kubernetes, альтернативой было бы развернуть его снаружи. Мы решили развернуть мультитенантный кластер etcd на выделенных серверах. Все клиентские кластеры будут использовать один и тот же ETCD, каждый сервер API получает свое место в этом мультитенантном кластере etcd.



Благодаря такому решению устойчивость обеспечивается обычными механизмами etcd, проблемы с задержкой не возникает, поскольку данные находятся на локальном диске каждого узла etcd, а количество модулей остается под контролем, поэтому оно решает основные проблемы, которые у нас возникли с другими решение. Компромисс здесь заключается в том, что нам нужно установить и использовать этот внешний кластер etcd, а также управлять контролем доступа, чтобы каждый сервер API имел доступ только к своим собственным данным.

Что дальше?
В следующих статьях из серии Kubernetes мы углубимся в другие аспекты построения OVH Managed Kubernetes и дадим клавиатуру некоторым из наших бета-клиентов, чтобы рассказать о своем опыте использования сервиса.

На следующей неделе давайте сосредоточимся на другой теме, мы разберемся с языком запросов TSL, и почему мы его создали и открыли