Dev // Ops
401 subscribers
86 photos
133 links
Канал для всіх, хто цікавиться DevOps філософією. Створений на основі досвіду компаній ZONE3000 і Namecheap. Тут ми ділимося корисним контентом і кейсами та відповідаємо на питання. Чекаємо ваші фідбеки, питання та рекомендації тут @educationzone3000
Download Telegram
#devopsспитав_devopsвідповів
Чи можна робити roll back у Terraform?

Версії в Terraform – умовні, але можна повернутись до попередньої версії, на попередній стан коду. Немає такого поняття як previous state або журнал стейтів. Існує політика back up – можна встановити, що зберігається попередня версія. Але це є максимум.
👍7
Чудові новини до Дня української писемності та мови від Grammarly Ukraine! 🇺🇦

Компанія виклала у вільний доступ UA-GEC 2.0 – другу версію анотованого GEC-корпусу української мови. Версія містить майже 34 000 речень, і її можна завантажити прямо зараз на GitHub.

UA-GEC – волонтерський проєкт зі створення набору даних, точніше, анотованих GEC-корпусів (GEC – grammatical error correction). Цей ресурс може бути корисним для обробки природної мови, досліджень та Machine Learning. Наприклад, GEC-корпус англійської містить 1 млн 167 тис. речень, німецької – 25 тис. речень, української (UA-GEC) – 33 735 речень.

Над проєктом працюють понад 800 волонтерів. Тож подякуємо цим людям за можливість практично досліджувати українську та покращувати програмні інструменти для роботи з нею!
🔥6
#devopsспитав_devopsвідповів
Як зробити scale services через таргет-групу?

Розберемо ситуацію: робимо scale services на основі метрик у VCS, використовуючи два інстанси та різні task definitions. Прописуємо в task definitions контейнери, і виходить, що вони нічого не знають. Фактично доводиться використовувати хард-код, щоб зв'язати їх між собою по internal IP ec2-машинах. Питання: як можна по-іншому реалізувати процес, щоб уникнути хард-коду?

Відповідь: через таргет-групи. У цій ситуації послуги і не повинні знати один про одного. Є autodiscover таргет-групи, а скейлити повинна і таргет-група, і автоскейлінг-група. Наприклад, якщо кластеру не вистачає ресурсів, підключається автоскейлінг-група.

Таким чином, скейлінг може дати нову ноду. І якщо на новій ноді розгортається новий інстанс сервісу, на основі чого решта сервісу знатиме, що це новий контейнер і туди подаватиме трафік? В такому випадку таргет-група робить autodiscover сервісів.

Є варіант із SRV-записом, але він не найкращий – ви змушені перескакувати через таргет-групу. Так задумано, що весь трафік йде через таргет-групу, таргет-група робить discover сервіси і сервіси починають приймати трафік. Можна рано посилати трафік, або сервіс вже помер, а ви все ще намагаєтеся послати трафік. Тому і рекомендуємо робити все через таргет-групи.
🔥4🤔1
💥 Дуже цікаві роздуми про те, що прогрес у технологіях та інженерне масштабування ー це постійне зростання ризиків відмов. Що більше ми винаходимо, тим більше створюємо проблем на інженерному рівні. Статтю можна прочитати або послухати.
👍3
Можна вічно дивитись на вогонь, воду та як ком’юніті сперечається, хто ж такий DevOps 🤔 Є думка, що в культурі DevOps можна виділити такі ролі:

✔️ Build Engineer – спеціаліст, що відповідає за збірку коду (підтягування залежностей, розбір конфліктів у коді тощо).
✔️ Release Engineer – відповідальний за доставку коду від розробки до продакшену (гілки, білди тощо).
✔️ Automation Engineer – людина, що автоматизує все (збірка при пуші в Git, прогон тестів, деплой на стейджингу та в продакшен тощо).
✔️ Security Engineer – фахівець, що працює з безпекою (тести, вразливість компонентів тощо).

На вашу думку, чи можна ці ролі віднести до DevOps? Пишіть в обговорені 👇
🤔3🤨1
Using Kubectl Scale ーTutorial and Best Practices. Kubectl Scale ー один з інструментів, що допомагає керувати деплойментами в Kubernetes. Дізнайтеся, як це робити на прикладах best practices.
👍5
DevOps…Такий нескінченний, такий незрозумілий 😎
😁8👍3
DevOps – це про більш ефективну спільну роботу. Саме культура взаємодії команд розробки та експлуатації лежить в основі цієї філософії. Команди несуть спільну відповідальність та працюють спільно. При цьому підвищується їхня ефективність, а витрати на розробку знижуються.

Погоджуєтесь? 😉
👍8🔥1
😳А ви знали, що cтандартне ядро Linux сьогодні має понад 10 000 000 рядків коду, і ця цифра щорічно зростає на 10%?

Це відбувається через те, що до ядра додається близько 4500 рядків коду, й щодня змінюється 1500 рядків. Для порівняння: у 1991 році версія ядра Linux 0.01 містила 10239 рядків.
👍7
Критичні помилки системного адміністратора

Покладатися на систему резервного копіювання.
Бажано періодично перевіряти бекапи мануально.

Відсутність документації.
Всі зміни у налаштуваннях інфраструктури мають бути зафіксовані.

Відсутність планування.
Сисадмін повинен мати як довго- й середньострокові плани, так і сценарії оперативного розв’язання задач.

Пласка побудова мережі.
Краще сегментувати мережу та використовувати VLAN.

Однотипне ПЗ.
Рекомендовано використовувати в інфраструктурі альтернативні операційні системи, якщо це можливо.

А як у вас із цим? Обговоримо у коментарях ⬇️
👌5
Плагін helm-dashboard

Цей плагін дозволяє переглядати встановлені Helm Charts (Helm – пакетний менеджер для Kubernetes, Charts – спеціальний формат пакетів у Helm). З його допомогою є можливість аналізувати історію та відповідні ресурси k8s. Також доступні прості дії, як от повернення до попередньої версії або оновлення.
👍61
Проводимо коротеньке опитування: чи може System administrator вирости до DevOps?

👌 Так, але треба багато чому навчитися
⛔️ Не думаю, що адміну буде легко зробити шифт до DevOps
😎 Та всі девопси виростають з адмінів!

Діліться своєю думкою у коментарях ⬇️
👌11🤔1
DevSecOps дедалі стає активною та невід'ємною частиною процесу розробки за принципами DevOps. Безпека вбудовується в продукт за допомогою активних перевірок і тестування безпеки у робочих процесах. Безпека – важлива частина конвейєру Continuous Integration and Continuous Delivery 👌
👍4
💥CRDs-catalog – корисний репозиторій Kubernetes CRDs (CustomResourceDefinition) у форматі JSON. У каталозі знайдете понад 100 популярних CRD. Ці схеми можна використовувати в різних інструментах на кшталт Datree, Kubeconform, Kubeval як альтернативу kubectl --dry-run. Можна виконувати валідацію на кастомних та оригінальних ресурсах Kubernetes.
👍5
Підбірка продуктів Atlassian, які можна використовувати в циклі DevOps.

🛠 Build:
-Bitbucket

✔️ Plan:
-Jira Software
-Confluence
-Trello

🔍 Discover:
-Jira Product Discovery (beta)

📬 Continuous Feedback:
-Jira Service Management

⚙️ Operate:
-Opsgenie
-Statuspage
-Compass
-Jira Service Management

🚀 Deploy:
-Bitbucket

🤝 Collaboration and Communication:
-Confluence
-Trello
🔥5
💥 Незалежно від того, використовуєте ви контейнер чи віртуальну машину, такі опції як моніторинг, пайплайни, GitOps тощо – повністю у вашому розпорядженні. Багато цікавого й корисного у статті про майбутнє віртуалізації інфраструктури.
👍4
🦾 Sidekick – дебагер застосунків, що робить траблшутинг у режимі реального часу можливим, без зупинки програм. Що ще? Можна додавати динамічні логи та нерозривні точки зупинки у застосунку, що працює, без стопу та ре-деплойменту. Sidekick – відмінне рішення для траблшутингу в режимі реального часу.
🔥5
⁉️ Спільното, поділіться думкою:

DevOps для вас це…
✔️ роль/позиція
🛠 набір інструментів
🤔 культура/філософія
🤷‍♂️ хто зна шо

Або ваш варіант у коментах ⬇️
🤔11
Стаття, варта вашої уваги: Infrastructure Cost Optimization In The Cloud. Практичний розбір заходів, що допоможуть розробникам та архітекторам заощадити на хмарній інфраструктурі.