Pull to refresh
0
0
Send message

Автоматическая генерация CI/CD пайплайна для развёртывания инфраструктуры

Reading time8 min
Views15K

При нашей работе мы используем подход «Инфраструктура как код». Однако в процессе его использования мы столкнулись с проблемой написания пайплайнов для инфраструктуры.

Во всём «виноват» terragrunt: каждому модулю terragrunt нужна отдельная джоба в пайплайне на plan и apply, но для каждого модуля они во многом повторяют друг друга. Подобное постоянное написание одинаковых частей CI/CD пайплайна при добавлении новых баз и бакетов навевало тоску.

Рассказываем, как мы создали генератор джоб в Gitlab CI/CD и навсегда забыли о ручном написании пайплайнов для развёртывания элементов инфраструктуры.

Читать далее
Total votes 14: ↑14 and ↓0+14
Comments2

Система визуализации и мониторинга. Grafana + Prometheus

Level of difficultyEasy
Reading time5 min
Views20K

Немного расскажу про установку Grafana на windows и настройку базовых метрик систем.

Пару слов о самой Grafana и для чего она нужна.

Grafana – это платформа для мониторинга, анализа данных и визуализации собранных данных с открытым исходным кодом. По сути она используется для визуального представления собранных метрик для более комфортного слежения за состоянием системы.

В данной статье буду использовать:

Читать далее
Total votes 9: ↑9 and ↓0+9
Comments13

Как легко пройти собеседование по Kubernetes в 2023 году?

Reading time7 min
Views20K

Сегодня одним из самых популярных в использовании инструментов в стеке техкомпаний является Kubernetes. С момента своего выхода K8s получил массовое распространение, расширив свою экосистему и увеличив количество пользователей. В 2021 году CNCF (Cloud Native Computing Foundation) провел опрос, который показал, что 96% организаций (которые приняли в нём участие) используют или уже пробуют Kubernetes в своем технологическом стеке.

Читать далее
Total votes 13: ↑11 and ↓2+9
Comments11

Ansible для начинающих

Reading time6 min
Views68K

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

Ansible — это инструмент infrastructure as a code для автоматизации задач по подготовке и конфигурированию инфраструктуры.

Вам понадобятся: базовые знания о Linux (можно начать с cent OS/Ubuntu), практический опыт с облачными сервисами (AWS), общее представление о виртуальных машинах (AWS EC2).

Читать далее
Total votes 19: ↑14 and ↓5+9
Comments9

Раскатка k8s 1.26 ansible+jenkins

Reading time8 min
Views9.9K

Приветствую всех! Недавнее масштабное обновление github (когда там часами не работало ничто) побудило меня поделиться своим опытом автоматизации установки k8s на bare metal.

Итак. Задача: развернуть кластер kubernetes последней на данный момент версии 1.26 средствами CI/CD за минимальное время (на моем оборудовании около 3 минут), и вообще, начать с этого построение своих инструментов управления кластером.

Для этого потребуется от 3 серверов под управлением ubuntu, чтобы прошли тесты sonobuoy conformance (адаптация под rhel потребует небольших доработок).

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

О роли ansible inventory. 

[masters]

k8s

[master]

k8s

[etcd]

k8s

[workers]

r01

r02

[jenkins]

k8s

[grafana]

k8s

Давайте сделаем его простым, очень простым. Чтобы это осуществить, настройте dhcp службу вручную или с помощью API своего маршрутизатора. Будет нелишним настроить домен маршрутизатора, просто укажите любой идентификатор, который будет добавлен к именам ваших узлов. Вам потребуется добавить mac адреса сетевых интерфейсов своих узлов в список соответствия IP адресам в вашей подсети. Иными словами, составьте план статических адресов для своих узлов кластера. 

itoracl.github.io/k8s
Total votes 10: ↑10 and ↓0+10
Comments10

Права в Linux (chown, chmod, SUID, GUID, sticky bit, ACL, umask)

Reading time21 min
Views531K
Всем привет. Это перевод статьи из книги RedHat RHCSA RHCE 7 RedHat Enterprise Linux 7 EX200 and EX300.

От себя: Надеюсь статья будет полезна не только начинающим, но и поможет более опытным администраторам упорядочить свои знания.

Итак, поехали.

image
Читать дальше →
Total votes 63: ↑57 and ↓6+51
Comments32

Изучаем Docker, часть 4: уменьшение размеров образов и ускорение их сборки

Reading time8 min
Views132K
В этой части перевода серии материалов, которая посвящена Docker, мы поговорим о том, как оптимизировать размеры образов и ускорить их сборку. В прошлых материалах мы сравнивали образы Docker с пиццей, термины с пончиками, а инструкции файлов Dockerfile с бубликами. Сегодня же не будет никакой выпечки. Пришло время посидеть на диете.

Часть 1: основы
Часть 2: термины и концепции
Часть 3: файлы Dockerfile
Часть 4: уменьшение размеров образов и ускорение их сборки
Часть 5: команды
Часть 6: работа с данными


Для того чтобы разобраться с тем, о чём мы будем тут говорить, вам будет полезно освежить в памяти то, о чём шла речь в третьей части этой серии материалов. А именно, там мы говорили об инструкциях файлов Dockerfile. Знание этих инструкций и тех особенностей Docker, которые мы обсудим сегодня, поможет вам оптимизировать файлы образов Docker.
Читать дальше →
Total votes 42: ↑42 and ↓0+42
Comments1

Случай девушки без трёх зубов: как наращивается кость перед установкой импланта; зачем и как организм меняет скелет

Reading time12 min
Views17K
Если из челюсти вынуть зубы, то кость для их крепления уже не понадобится. Она начнёт «уходить», то есть пойдёт резорбция, в результате которой костной ткани станет сильно меньше. Если вы захотите поставить туда имплант, то он просто не будет покрыт костью весь. Нужно будет либо выбирать модель поменьше, либо наращивать кость.

Костные пластики — одни из самых простых и одни из самых сложных операций в стоматологии в зависимости от типа. Иногда это часть имплантации, а иногда сама имплантация — маленькое приложение к счёту на пластику.

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


Видны следы от прошлой неудачной операции

Внимание! Ниже будут фотографии ротовой полости, в том числе с кровью. Если это может шокировать вас, то будьте осторожны!
Читать дальше →
Total votes 42: ↑39 and ↓3+36
Comments16

Открыть банковский счет за границей, актуальное на сегодня

Reading time3 min
Views223K

Давайте признаем, что теперь все люди в России будут жить в новой реальности, где счет в банке за границей - не блажь, а необходимость. Не только для приема платежей из-за границы, но и для привычных всем штук: оплаты товаров онлайн, покупки билетов (на сайтах авиакомпаний), оплаты в сторах, беспроблемных переводов и т.д. Даже если сегодня все санкции снимут, виза с мастеркардом вернутся, ЦБ все разрешит - инерция этих процессов, и тем более риски, которые несут контрагенты из России - на многие годы.

Дисклеймер: я не консультант по этой теме, просто имею собственный опыт 10+ летнего номадизма, который наложил на небольшой опрос и текущие перспективы, и хочу поделиться. Буду рад любым уточнениям, возможностям, рассказам об опыте в комментариях. В обычной жизни являюсь сооснователем YC-стартапа.

Читать далее
Total votes 112: ↑103 and ↓9+94
Comments242

8 проблем в архитектуре Kubernetes

Reading time7 min
Views16K
Архитектура Kubernetes хорошо подходит для организаций типа FAANG, но может оказаться избыточной и чрезмерно сложной для прочих.

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

Прежде чем нырнуть в Kubernetes с головой, примите во внимание следующие проблемы с этим опенсорсным оркестратором контейнеров.

1. Kubernetes разработан для компаний типа FAANG


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

Читать дальше →
Total votes 30: ↑25 and ↓5+20
Comments93

Ультимативный гайд по созданию CI/CD в GitLab с автодеплоем в Kubernetes на голом железе всего за 514$ в год ( ͡° ͜ʖ ͡°)

Reading time23 min
Views51K

Шел 2021 год, русские хакеры продолжают переигрывать и уничтожать загнивающий Запад, вмешиваясь в выборы, ломая фейсбуки и пентагоны. Тем временем на Хабре выходят статьи о создании неубиваемых Kubernetes-кластеров, которые, по видимому, всех нас переживут. А кто-нибудь подумал о простых пацанах (пацанессах)??? Как быть обычному программисту, который хочет свой небольшой кластер и ламповый CI/CD с автодеплоем приложения, чтобы кенты с района не засмеяли?

Всем привет, меня зовут Алексей и я алкоголик разработчик на Python/Go в Домклик. Сегодня мы будем понижать порог входа в self-hosted Kubernetes и GitLab AutoDevops.

Читать далее
Total votes 42: ↑41 and ↓1+40
Comments32

Stand-up, Scrum, Daily meetings — что это и для чего

Reading time4 min
Views90K
image

Часто стал замечать, что люди все больше и больше перетягивают методологии и практики из IT сферы в производственные, банковские, сферы услуг и прочие. Одной из самых распространенных «заимствованных» из мира IT практик является проведение Scrum, Daily, Stand-up митингов ( как их только не называют, но везде суть примерно одинаковая). Ниже будет представлено описание этого процесса таким образом, как его провожу лично я.

Общее


Данный пост описывает цель и регламент проведения ежедневного митинга — Стендапа. Основа данного процесса была взята из scrum методологии и является частью процесса разработки, в будущем может быть адаптирована под текущую команду, а так же и процесс разработки. Как и любой инструмент использование и отношение к нему будут определять результаты.

Цель


  • подготовка к рабочему дню и планирование его;
  • оценка предыдущего своего рабочего дня;
  • поделиться информацией и планами с коллегами;
  • получить информацию от коллег, которая может пригодится в течение рабочего дня.
Total votes 34: ↑27 and ↓7+20
Comments28

Что такое CI (Continuous Integration)

Reading time10 min
Views133K
CI (Continuous Integration) — в дословном переводе «непрерывная интеграция». Имеется в виду интеграция отдельных кусочков кода приложения между собой. Чем чаще мы собираем код воедино и проверяем:

  • Собирается ли он?
  • Проходят ли автотесты?

Тем лучше! CI позволяет делать такие проверки автоматически. Он используется в продвинутых командах разработки, которые пишут не только код, но и автотесты. Его спрашивают на собеседованиях — хотя бы понимание того, что это такое. Да, даже у тестировщиков.

Поэтому я расскажу в статье о том, что это такое. Как CI устроен и чем он пригодится вашему проекту. Если вы больше любите видео-формат, можно посмотреть мой ролик на youtube на ту же тему.


Читать дальше →
Total votes 38: ↑34 and ↓4+30
Comments22

Continuous Integration для новичков

Reading time8 min
Views147K

Что такое CI


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


Если вы не знаете как настроить CI в своем проекте, я приглашаю вас "под кат"

Читать дальше →
Total votes 45: ↑43 and ↓2+41
Comments20

Bash-скрипты: начало

Reading time11 min
Views1.7M
Bash-скрипты: начало
Bash-скрипты, часть 2: циклы
Bash-скрипты, часть 3: параметры и ключи командной строки
Bash-скрипты, часть 4: ввод и вывод
Bash-скрипты, часть 5: сигналы, фоновые задачи, управление сценариями
Bash-скрипты, часть 6: функции и разработка библиотек
Bash-скрипты, часть 7: sed и обработка текстов
Bash-скрипты, часть 8: язык обработки данных awk
Bash-скрипты, часть 9: регулярные выражения
Bash-скрипты, часть 10: практические примеры
Bash-скрипты, часть 11: expect и автоматизация интерактивных утилит

Сегодня поговорим о bash-скриптах. Это — сценарии командной строки, написанные для оболочки bash. Существуют и другие оболочки, например — zsh, tcsh, ksh, но мы сосредоточимся на bash. Этот материал предназначен для всех желающих, единственное условие — умение работать в командной строке Linux.


Читать дальше →
Total votes 69: ↑61 and ↓8+53
Comments123

Основы BASH. Часть 1

Reading time5 min
Views1.4M
Безусловно, все те кто общается с ОС Linux хоть раз да имели дело(во всяком случае слышали точно) с командной оболочкой BASH. Но BASH не только командная оболочка, это еще и превосходный скриптовый язык программирования.
Цель этой статьи — познакомить поближе юзеров с bash, рассказать про синтаксис, основные приемы и фишки языка, для того чтобы даже обычный пользователь смог быстренько написать простой скрипт для выполнения ежедневной(-недельной, -месячной) рутинной работы или, скажем, «на коленке» наваять скриптик для бэкапа директории.
Читать дальше →
Total votes 146: ↑135 and ↓11+124
Comments114

В поисках идеального DevOps. Кого сейчас ищут на рынке IT?

Reading time6 min
Views18K

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

Читать далее
Total votes 30: ↑28 and ↓2+26
Comments41

Как устроена школа DevOps для middle-специалистов

Reading time12 min
Views13K

«Мне 34, и я 10 лет работаю в ИТ. Первый компьютер я увидел в каталоге OTTO, мне тогда было 5 лет, я жил в Германии. Это был ATARI. Меня сразу заинтриговал принцип его работы — мы вводим информацию и получаем ожидаемый результат на выходе. Круто, но события 90-х годов отодвинули мечту на много лет. И вот, наконец, в 2001-м у меня появился свой ПК. К слову, операционную систему я переустановил через 2 недели использования. С этого всё началось. Пока сверстники играли в ходилки и стрелялки, я методом научного тыка изучал устройство Windows 98. Потом вышла XP, был Dial-up в 56 kbps и долгие часы скачивания разнообразных программ, форумы, журналы CHIP и первый дистрибутив Alt Linux на CD.   

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

С такими мыслями я «собрал пожитки» и отправился прочь из зоны комфорта на поиск новых знаний в области инструментов концепции DevOps. Кто ищет ― тот найдёт, сказал я сам себе и спустя 10 минут заполнял анкету на поступление в DevOps-школу в EPAM»...  

В этой статье представители EPAM и студенты DevOps-школы расскажут о том, как построено обучение, для кого школа и зачем туда идти.  

Читать продолжение
Total votes 7: ↑5 and ↓2+3
Comments5

Собеседование в DevOps Engineering, как оценить свой опыт и сколько нужно знать?

Reading time5 min
Views20K

Немного про DevOps и про обязанности

DevOps — это набор практик, которые помогают автоматизировать и интегрировать процессы между командой разработчиков и командой ответственной за инфраструктуру, чтобы они могли быстрее и надежнее собирать, тестировать и выпускать релизы.

Основная цель подхода - убрать "стену" между командой разработки и командой Operations (Operations так же называют: System Administration, System Engineering) и увеличить скорость релизов. "Стена" образуется из-за того что у команд разные цели. Разработчики преследуют цель выпускать релизы как можно чаще, а Operations снизить количество отказов или держать энвайрмент стабильным и безопасным. DevOps подход объединяет команды, цели и делит риски.

Основные практики DevOps это:

Читать далее
Total votes 10: ↑8 and ↓2+6
Comments12

Information

Rating
Does not participate
Registered
Activity