DevOps – зміст курсу 9


Курси DevOps – досить рідкісна штука, бо толкових DevOps підготувати не так просто: сучасна ІТ інфраструктура настільки складна річ, що оволодіти нюансами її адміністрування значно важче, аніж навчитися програмувати. Втім, програмувати DevOps теж повинні вміти, як і бути впевненими користувачами поширених операційних систем і знати їх внутрішню будову. Але, хоч і рідко, курси DevOps проводяться, тому комусь може бути цікаво дізнатися про те, про що ж там розповідають.

DevOps - зміст курсу

DevOps – зміст курсу

Хоч у своїй роботі мені досить часто доводиться виконувати ряд функцій DevOps, але більшість із перелічених далі питань для мене залишаються чимось на рівні “чув дзвін, та не знаю де він”. Тим не менш, якщо щось із моїх коментарів не зовсім вірне, то ласкаво просимо до google 🙂

Service Operation Basics. (What is service. What is Service Operation. Service lifecycle. ITIL process as a base for Service Operation. SLA) – тут назва говорить сама за себе. Що таке сервіс, його життєвий цикл і основи керування сервісами. Що таке IT Infrastructure Library і Service Level Agreement.

Platform. Hosting platforms: managed, unmanaged and cloud hosting. Визначення терміну “платформа” і класифікація платформ.

Software Development processes. Scrum. Kanban. Типові речі про актуальні методології розробки ПЗ. Лікбез, так би мовити.

Application Management. Release cycle. Build and Deployment. Continuous Delivery (CD). Creating build solution that conforms CD practices. End-to-End deployment solution. Однією із задач DevOps є забезпечення неперервності розробки програмного продукту. Нас цікавить як зробити так, аби створений розробниками код автоматично перевірявся різноманітними тестами (unit tests, acceptance tests) і, в ідеалі, навіть автоматично розгортався на “бойовій” машині. Та це вже буде Continuous Deployment.

Availability Management. Service availability basics. Monitoring platforms: internal, external. SLA development. Ще одним завданням DevOps є забезпечення безперебійності роботи тієї інфраструктури і сервісів, за які вони відповіають. В цьому випадку нас цікавить як можна моніторити доступність сервісу і оперативно реагувати на проблеми, що виникають.

Capacity Management. Capacity management basics. Why capacity management is important? Solutions for capacity metrics collection. Надійність роботи ІТ інфраструктури визначається цілим рядом факторів. Ваш сервіс може припинити працювати не тільки тому, що “вітер дроти порвав”, але й через банальне перенавантаження і неоптиальний розподіл ресурсів. Як збалансувати та оптимізувати використання наявних ресурсів і спрогнозувати потреби у нових ресурсах на майбутнє?

Disaster Recovery. Disaster detection and recovery. Outage reporting. Report template. Backup and restore. А це якраз про “вітер дроти порвав” – як передбачити появу нештатних ситуацій і захиститися від них. А також як звести до мінімуму шкоду і оперативно відновити роботу у випадку, коли форсмажор таки мав місце.

Backup validation. Organizing disaster recovery drills. Knowledge management and documentation tool. Адміни бувають трьох видів: хто не робить бекапи, хто робить бекапи і хто перевіряє зроблені бекапи 🙂 Після того як кілька днів потратив на копирсання у дампі бази даних за допомогою блокноту я це зрозумів, а вас навчать без такого досвіду 😉

SVN. Branches and tags management strategy. SAVANA tool. Build tools. CI. Maven. DB. Versioning – безцінна інформація про те, як зберігаються проекти у системі контролю версій SVN, як керуватиними і забезпечити зберігання всіх версій проекту разом, але погрупаваних за “фічами”. Як забезпечити неперервну інтеграцію використовуючи Maven, тощо.

Automated configuration management. Puppet language. The Resource shell. Цю лекцію присвячено надзвичайно важливій темі автоматичного керування конфігруаціями. Поки у вас всього один комп’ютер, про такі речі здебільшого і не думаєш, але якщо у парку кілька серверів і на всіх них потрібно мати ідентичні налаштування, причому іноді виникає потреба їх змінювати… Тут на допомогу приходить Puppet – своєрідна мова програмування для автоматизації роботи із налаштуваннями системи. Хочете змінити шпалери на всіх комп’ютерах чи встановити на всіх серверах однакову версію MySQL? Можливості Puppet парктично безмежні, от лиш каву не готує.

Virtualization. VServer, ESX, KVM. Ще одна цікава тема – віртуалізація (думаю, всі коли-небудь встановлювали собі VirtualBox або VMWare Player). Віртуалізація дозволяє мати на одному фізичному сервері кілька операційних систем, причому не просто одночасно встановлених, але й таких, що працюють одночасно, перетворюючи один сервер на кілька незалежних. Хто цікавиться вебмайстерською справою, то в курсі термінів VPS/VDS – that’s it!

Application Servers. Tomcat, WebSphere. Load balancers nginx, Apache, HAProxy. Наші додатки, звісно ж, можуть бути повністю самостійними програмами, але дуже часто вони працюють у середовищі, яке надає сервер додатків. Типовий приклад: контейнери сервлетів (ваші Spring MVC проекти запускаються на якомусь собі Tomcat або jBoss), які позбавляють нас від необхідності самостійно робити дуже багато низькорівневої роботи.

Security and auditing. Security concepts. Snort, Nessuss tools. Monitoring (Nagios / Zabbix). Питання безпеки та її аудиту. Використання сканерів типу Nessuss і Snort для виявлення та ліквідації проблемних місць із безпекою (сюди входять як паролі типу admin/admin, так і відкриті порти, можливість доступу до бази даних чи налаштувань сервера додатків ззовні, тощо)

Backup and recovery. Backup types. Amazon and Rackspace. Process automation. Licenses types. Python. Знову бекапи 🙂 А ще – найбільш популярні cloud-based хостинги для вашої ІТ-інфраструкутри. Якщо хтось не в курсі, то такі Amazon – не тільки інтернет-магазин, але й ціла платформа, яка дозволяє орендувати віртуальну машину на будь-який смак. Не конче тримати у себе зоопарк серверів, бо можна просто отримати потрібну конфігурацію у тимчасове користування всього за декілька хвилин.

Amazon API, Boto. Хочете знати як працювати з сервісами Amazon за допомогою Python? Використовуйте Boto! Boto – це не тільки кавайні дельфінчики, але й потужний інструмент для DevOps 🙂

Tracking system. Service-desk tool – comparing and installing. Service-desk – це той інструмент, який забезпечує комунікацію між системними адміністраторами та DevOps з одного боку і користувачами та розробниками програмного забезпечення з іншого. Про різновиди таких систем, а також про їх розгортання вам і розкажуть.

Network technologies. Networks Appliances. Types. Rackspace. Amazon. Мережеві технології, назва говорить сама за себе.

От ніби й усе. Наостанок додам перелік інших своїх дописів про курси Softserve:

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

Почитайте ще оце:


Залиште коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *

9 thoughts on “DevOps – зміст курсу