Рубрика «devops» - 113

Как не положить тысячи серверов с помощью системы централизованного управления конфигурацией на примере CFEngine - 1

Привет! Меня зовут Дмитрий Самсонов, я работаю ведущим системным администратором в Одноклассниках. Основные сферы моей компетенции — Zabbix, CFEngine и оптимизация Linux. У нас более 8 тыс. серверов и 200 приложений, которые в различной конфигурации формируют 700 различных кластеров. Тема этой статьи исчерпывающе описана в заголовке.

Сразу хочу оговориться:

  • Я буду предвзят, потому что участвовал во внедрении CFEngine в Одноклассниках.
  • Я пользовался CFEngine только версий 3.3—3.4.
  • Я не питаю никаких иллюзий по поводу CFEngine, это значимый игрок, но не лидер рынка и не его аутсайдер. В статье не будет сравнений работы CFEngine с другими системами.
  • Из систем конфигурации у меня есть опыт использования только CFEngine и Ansible.

Читать полностью »

Прим. перев.: Этот материал, озаглавленный в оригинале как «What happens when… Kubernetes edition!» и написанный Jamie Hannaford из компании Rackspace, является отличной иллюстрацией работы многих механизмов Kubernetes, которые зачастую скрыты от нашего глаза, но весьма полезны для лучшего понимания устройства этой Open Source-системы, алгоритма работы и взаимосвязей её компонентов. Поскольку вся статья весьма объёмна, её перевод разбит на две части. В первой речь идёт про работу kubectl, kube-apiserver, etcd и initializers.

P.S. Некоторые оригинальные ссылки на код в master-ветках были заменены на последние к моменту перевода коммиты, чтобы актуальность номеров строк, к которым отсылает автор, сохранялась долгое время.

Что происходит в Kubernetes при запуске kubectl run? Часть 1 - 1

Представим, что я хочу задеплоить nginx в кластере Kubernetes. Я введу в терминале нечто такое:

kubectl run --image=nginx --replicas=3

… и нажму на Enter. Через несколько секунд увижу 3 пода с nginx, распределённые по всем рабочим узлам. Работает — словно по волшебству, и это здорово! Но что на самом деле происходит под капотом?
Читать полностью »

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

Поехали…

Работая вместе с соавторами над DevOps Cookbook, я начал лучше понимать, что является основным акцентом DevOps сообщества. Много внимания уделяется влиянию DevOps в рамках ИТ-подразделения. Гораздо меньше внимания уделяется влиянию DevOps в рамках всей компании. И практически никакого внимания не уделяется влиянию DevOps вне рамок компании, в частности взаимоотношению с другими компаниями и рынками, на которых они конкурируют.

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

Но если ограничить DevOps евангелизм только ИТ организациями, будет упущена ценная польза от инвестиций в DevOps. Почему? Потому что уроки и принципы DevOps открывают нечто редкое для современных компаний. DevOps может превратить ИТ-процессы в устойчивое конкурентное преимущество компании. Это DevOps-послание необходимо распространить по всему бизнес отделу компании, вплоть до Генерального Директора и Совета Директоров.

Чтобы понять, как DevOps может превратить ИТ-процессы в конкурентное преимущество, сначала нужно взглянуть на текущий контекст, в котором работают компании.
Читать полностью »

Let's speak about Docker

Недавно вышла статья Iron_Butterfly, где в числе прочего рассказывается, каким образом возможно запустить мощнейший поисковый движок ElasticSearch внутри Docker-контейнера. Я хочу продолжить этот вектор и рассказать, какие еще задачи возможно решить с помощью Docker-контейнеров используя для этого Plesk и расширение Docker.

Краткий план

В статье мы рассмотрим, как можно решить с помощью нашего Docker extension задачи, которые тяжело решить в Plesk без Docker-контейнеров (или даже невозможно). Данный список задач сформирован на основе популярных вопросов наших пользователей; в качестве пользователей мы рассмотрим владельцев хостинга, разработчиков web-приложений, администраторов WordPress.

Задачи:

— Одновременное использование различных версий баз данных;
— Разворачивание Memcached для WordPress;
— Использование собственного облачного Nextcloud хранилища;
— Запуск собственного приложения на Go. Запуск собственного git-репозитория;
— Тестирование новых версий Plesk не мешая работать боевому серверу.

Хочу уточнить, что все примеры в статье выполнены с использованием бесплатной версии расширения Docker (платная версия позволяет управлять сервисом Docker на удаленных серверах).
Читать полностью »

Привет! В Нью-Йорке в эти дни проходит ежегодная конференция Microsoft Connect 2017. На ней уже анонсировали множество обновлений существующих продуктов и большое количество новых инструментов. Под катом читайте о самых интересных из них.

Ключевые анонсы Connect(); 2017 - 1
Читать полностью »

TL;DR: автор сокрушается о том, что GRUB не может жить полноценно с LVM и с удивлением открывает, что это отлично умеет заброшенный в 2015 году загрузчик lilo.

MBR?

Мало кто знает и понимает, что MBR по сути своей есть величайшая ошибка человечества. Ну послушайте, ну серьезно, кому в голову пришло смешивать в одном блоке данные, необходимые для загрузки системы и сведения о разделах?

Я еще раз повторю, не надо сейчас мне говорить «так сложилось», а включите логику. MBR ужасна.
Читать полностью »

Приглашаем вас посмотреть прямую трансляцию Connect(); 2017, которая будет проходить на русском языке. В рамках неё Скотт Гатри и Скотт Хансельман представят самые крутые новости про Azure, Data, AI, DevOps, Visual Studio, Xamarin, и не только. Плеер можно найти под катом.

Connect(); 2017: прямая трансляция - 1
Читать полностью »

Истории успеха Kubernetes в production. Часть 5: цифровой банк Monzo - 1

Цикл историй успеха Kubernetes продолжается рассказом о британском банке-стартапе Monzo. Эту молодую компанию относят к категории «challenger banks» (да, это уже термин из Oxford Dictionary), т.е. таких небольших банков, которые бросают вызов крупной и давно сложившейся финансовой индустрии. Это становится возможным благодаря активному и повсеместному использованию современных информационных технологий в самой своей основе, т.е. отказу от операций в традиционном формате в пользу электронных аналогов, позволяющих качественно снизить расходы (банки с таким подходом ещё называют «digital-only»). Пример Monzo, созданного всего 2 года назад, интересен тем, что в достижении великих целей ему помогают платформа Kubernetes, язык Go и другие современные Open Source-продукты, хорошо знакомые DevOps-инженерам и не только.Читать полностью »

Как мы настраивали процесс CI-CD для наших SOA-проектов - 1
Хотел бы поделиться опытом настройки CI/CD в нашей компании, плюс, послушать советы, если у вас похожая структура проектов.

Кому, как мне кажется, данная статья может оказаться полезной:
— ваши проекты содержат несколько отдельных репозиториев с приложениями;
— вы хотите быть уверены, что каждый репозиторий проходит тесты;
— вы хотите быть уверены в совместимости версий между репозиториями;
— вы ещё не успели, но планируете, перевести свои проекты на докер;
— хотите посмотреть пару playbook'ов Ansible.
Читать полностью »

Установка Kubernetes 1.8 Bare Metal - 1
В интернете написано довольно много статей по установке Kubernetes, но большинство из них базируются на kubeadm и minikube. Это, конечно, здорово, что можно легко и за пару кликов развернуть кластер, но хотелось бы иметь больше понимания из чего состоит Kubernetes. Попробую исправить эту ситуацию данным руководством.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js