Алатки за DevOps што секој треба да ги научи во 2020 година

Започнете со користење на најдобрите алатки DevOps денес!

Алатки за DevOps што секој треба да ги научи во 2020 година
Револуцијата на DevOps конечно го зафати светот и алатките на DevOps станаа неверојатно популарни. Според службата Google Трендови, бројот на барања за „алатки за DevOps“ постојано расте и овој тренд продолжува.

Методологијата на DevOps го покрива целиот животен циклус на развој на софтвер, така што професионалците можат да избираат од различни алатки. Но, како што знаете, ниту една алатка не може да стане универзална алатка за секого. Сепак, некои решенија нудат толку широк опсег на функции што можат да се справат со речиси секоја задача.

Ајде да ги поделиме алатките на DevOps во категории и да ги споредиме со аналози:

  • развој и изградба на алатки
  • тест алатки за автоматизација
  • алатки за организирање распоредување
  • Алатки за траење
  • алатки за соработка.

Успешна и внимателна имплементација DevOps практичар вклучува инструменти од сите пет групи наведени погоре. Анализирајте го тековниот сет на алатки во вашиот проект за да не пропуштите важен елемент од цевководот CI/CD.

Развој и изградба на алатки

Алатки за DevOps што секој треба да ги научи во 2020 година
Ова е основата на оџакот на гасоводот CI/CD. Сè започнува токму тука! Најдобрите алатки во оваа категорија можат да управуваат со повеќе преноси на настани и лесно да се интегрираат со други производи.

Во оваа фаза од животниот циклус на развој, постојат три групи на алатки:

  • систем за контрола на верзијата (SCM)
  • континуирана интеграција (CI)
  • Управување со податоци

GIT имаше позитивен резултат во 2020 година, така што вашата алатка SCM треба да има беспрекорна поддршка за GIT. За CI, предуслов е способноста да се извршуваат и да се извршуваат градби во изолирана средина на контејнер. Кога станува збор за управување со податоци, тоа бара можност да се направат промени во шемата на базата на податоци и да се одржува базата според верзијата на апликацијата.

SCM + CI Алатка #1

Победник: GitLab и GitLab-CI

Алатки за DevOps што секој треба да ги научи во 2020 година
Најдобрата алатка на циклусот DevOps 2020 е без сомнение GitLab и дефинитивно ќе продолжи да води во иновациите во блиска иднина.

Главната функција на GitLab е да обезбеди удобно управување со складиштето на Git. Веб интерфејсот е интуитивен и лесен за користење. GitLab обезбедува сè што ви треба во бесплатна верзија и доаѓа како SaaS и on-prem (со користење на сопствени ресурси за хостирање на софтвер).

Ниту една друга алатка SCM не користела континуирана интеграција (CI) директно на вашето складиште, а GitLab го прави тоа долго време. За да користите GitLab-CI, мора да додадете датотека .gitlab-ci.yml во коренот на изворниот код и секоја промена на проектот ќе активира дејства врз основа на точното наведено. GitLab и GitLab-CI се заслужено признати како лидери во полето на континуирана интеграција (CI-as-code).

Клучни придобивки

  • Доверливост - Производот е на пазарот од 2013 година; стабилно; добро поддржан.
  • Отворен код - Бесплатната верзија на GitLab не ја ограничува основната функционалност што им е потребна на развојните тимови. Пакетите со платени услуги обезбедуваат дополнителни корисни функции за компании со различни големини и потреби.
  • Вграден CI - Ниту една друга алатка на пазарот не изгради континуирана интеграција директно во SCM како GitLab-CI. Користењето на Docker обезбедува изолирани изданија без проблеми, а вградените извештаи го олеснуваат отстранувањето грешки. Не бараме сложена интеграција и управување со повеќе алатки во исто време.
  • Неограничени интеграции - GitLab обезбедува лесна интеграција на сите алатки за DevOps што ви се потребни. Ова осигурува дека тимовите за развој и одржување имаат единствен извор на информации за нивната примена во која било средина.

Натпреварувачи

Учествувал во битката, но не победил

Постојат и други популарни алатки во оваа категорија, но тие не се толку добри како GitLab. И затоа:

GitHub — Ова е одличен систем за контрола на верзијата SaaS за мали компании и раните фази на развој. За големите компании за кои е важно да се задржат IP адресите на сопствената мрежа, единственото решение од GitHub беше виртуелната машина .OVA без поддршка за системи со висока достапност. Ова го отежнува одржувањето на почетокот, освен тоа, .OVA е погоден само за средни бизниси, инаку серверот едноставно ќе се сруши при поголемо оптоварување. Недостатокот на GitHub Actions (до неодамна, а сè уште не во верзија на prem) или CI-as-code значи дека треба да изберете посебна CI алатка и потоа да управувате со таа интеграција. Конечно, GitHub е многу поскап од која било верзија на GitLab.

Џенкинс — Иако Џенкинс стандардно се смета за стандард меѓу алатките за континуирана интеграција, отсекогаш му недостасувале способности за контрола на верзијата. Излегува дека користите Џенкинс плус некој вид SCM алатка. Премногу е тешко кога GitLab може да ги направи и двете. Просечниот UX дизајн не е погоден за модерна веб апликација и остава многу да се посакува.

BitBucket/Bamboo — Морам да го препознаам како автоматски губитник: зошто две алатки кога GitLab прави сè целосно независно. BitBucket Cloud поддржува GitLab-CI / GitHub Action функционалност, но ниту една компанија поголема од стартап не може лесно да ја имплементира. Он-прем BitBucket серверот дури и не поддржува BitBucket цевководи!

#1 Алатка за управување со податоци

Победник: FlywayDB

Алатки за DevOps што секој треба да ги научи во 2020 година
Во развојот на веб-апликации, на автоматизацијата на базата на податоци обично не и се придава важност. Идејата за распоредување на промени во шемата на базата на податоци за новите верзии на апликацијата доаѓа доцна. Промените на шемата често резултираат со додавање и преименување на колони или табели. Ако верзијата на апликацијата не се совпаѓа со верзијата на шемата, апликацијата може да падне. Дополнително, управувањето со промените во базата на податоци при ажурирање на апликација може да биде предизвик бидејќи има два различни системи. FlyWayDB ги решава сите овие проблеми.

Клучни придобивки

  • Верзија на бази на податоци - Flyway ви овозможува да креирате верзии на бази на податоци, да ги следите миграциите на базата на податоци и лесно да пренесувате или враќате промени во шемата без дополнителна алатка за ова.
  • Бинарно или вградено - Можеме да избереме да го извршиме Flyway како дел од апликацијата или како бинарен извршна датотека. Flyway ја проверува компатибилноста на верзиите при стартување и ги започнува соодветните миграции, одржувајќи ги синхронизираните верзиите на базата на податоци и апликациите. Со извршување на ад-хок командата cmd line, обезбедуваме флексибилност на постоечките бази на податоци без да ја обновиме целата апликација.

Натпреварувачи

Учествувал во битката, но не победил

Нема многу алатки во оваа област. Ајде да погледнеме некои од нив:

LiquiBase — Liquibase наликува на FlywayDB. Би сакал да го поставам на врвот на Flyway ако имам некој во мојот тим со повеќе искуство со Liquibase.

Флокер - Може да работи само за контејнеризирани апликации. За успешно извршување на контејнеризирани бази на податоци, сè мора да биде совршено испланирано. Препорачувам користење на RDS (услуга за релациона база на податоци) за бази на податоци и не советувам да чувате важни информации во контејнер.

Алатки за автоматизација за тестирање

Алатки за DevOps што секој треба да ги научи во 2020 година
Да ја започнеме нашата дискусија за алатките за автоматизација за тестирање со нивна класификација врз основа на пирамидата за тестирање.

Пирамидата за тестирање (тестови) има 4 нивоа:

  • Единица тестови - Ова е основата на целиот автоматизиран процес на тестирање. Треба да има повеќе единечни тестови во споредба со другите видови тестови. Програмерите пишуваат и извршуваат тестови за единици за да се осигураат дека дел од апликацијата (позната како „единица“) одговара на нејзиниот дизајн и се однесува како што се очекува.
  • Тестови на компоненти - Главната цел на тестирањето на компонентите е да се потврди влезно/излезното однесување на предметот за тестирање. Мораме да се осигураме дека функционалноста на предметот за тестирање е правилно имплементирана според спецификацијата.
  • Тестови за интеграција - Вид на тестирање во кое одделните софтверски модули се комбинираат и тестираат како група.
  • Тестови од крај до крај - Овој чекор е самообјаснет. Ја следиме целата апликација и се уверуваме дека таа функционира како што е планирано.

Бидејќи единечните тестови и тестирањето на компонентите ги вршат само програмери и често се специфични за програмскиот јазик, нема да ги оценуваме овие алатки за доменот DevOps.

# 1 Алатка за тестирање на интеграцијата

Победник: Краставица

Алатки за DevOps што секој треба да ги научи во 2020 година
Краставицата ги комбинира спецификациите и документацијата за тестирање во еден жив документ. Спецификациите се секогаш ажурирани бидејќи тие автоматски се тестираат од страна на Cucumber. Ако сакате да изградите автоматизирана рамка за тестирање од нула и да го моделирате однесувањето на корисникот во веб-апликација, тогаш Selenium WebDriver со Java и Cucumber BDD е одличен начин да го научите и имплементирате Cucumber во проект.

Клучни придобивки

  • BDD пристап (Behavior Driven Development - „развој преку однесување“ наспроти пристапот „развој управуван од тест“) - Краставицата е дизајнирана за тестирање BDD, првично беше создадена токму за оваа задача.
  • Жива документација - Документацијата е секогаш болка! Бидејќи вашите тестови се напишани како код, Cucumber ја тестира автоматски генерираната документација за да се осигура дека тестовите и документацијата се синхронизирани.
  • Поддршка - Можеме да избираме од многу алатки, но Краставица ги има потребните финансиски ресурси и добро организиран систем за поддршка за да им помогне на корисниците во секоја тешка ситуација.

Натпреварувачи

Учествувал во битката, но не победил

Меѓу другите рамки и алатки специфични за технологијата, само Краставица може да се смета за универзално решение.

Алатки за тестирање од крај до крај

Кога спроведувате тестирање од крај до крај, треба да се фокусирате на две клучни точки:

  • функционално тестирање
  • Тестирање на стрес.

При функционалното тестирање, проверуваме дали навистина се случува сè што сакаме. На пример, кога ќе кликнам на одредени елементи од мојата СПА (апликација на една страница), ги пополнувам формуларите и избирам „Поднеси“, податоците се појавуваат во базата и на екранот се појавува пораката „Успешно!“.

Исто така, за нас е важно да провериме дали одреден број корисници кои го извршуваат истото сценарио може да бидат обработени без грешки.

Отсуството на овие 2 типа на тестирање ќе биде значаен недостаток во вашиот CI/CD гасовод.

# 1 алатка за тестирање од крај до крај. Функционално тестирање

Победник: SoapUI Pro

Алатки за DevOps што секој треба да ги научи во 2020 година
SoapUI е во просторот за тестирање на API долго време, бидејќи веб-услугите базирани на SOAP беа стандардни. Иако повеќе не создаваме нови услуги SOAP и името на алатката не е променето, тоа не значи дека не еволуирала. SoapUI обезбедува одлична рамка за создавање автоматизирани функционални тестови. Тестовите може лесно да се комбинираат со алатки за континуирана интеграција и да се користат како дел од цевководот CI/CD.

Клучни придобивки

  • Детална документација - SoapUI е на пазарот доста долго време, така што има многу онлајн ресурси кои можат да ви помогнат да разберете како да поставите тестови.
  • Лесно користење - Иако алатката поддржува повеќе протоколи за тестирање на API, присуството на SoapUI на заеднички интерфејс за повеќе услуги го олеснува пишувањето тестови.

Натпреварувачи

Учествувал во битката, но не победил

Селен е уште еден одличен инструмент во оваа група. Препорачувам да го користите ако градите и извршувате апликација базирана на Java. Меѓутоа, ако градите целосна веб-апликација со повеќе технологии, таа може да стане незгодна за компонентите што не се Java.

# 1 алатка за тестирање од крај до крај. Тестирање на стрес

Победник: LoadRunner

Алатки за DevOps што секој треба да ги научи во 2020 година
Објаснување: Кога ќе дојде време да се вчита тестот на секој елемент од вашата апликација, само LoadRunner може да ја заврши задачата. Да, на почетокот е скапо и тешко, но LoadRunner е единствената алатка која ми дава, како технички архитект, целосна доверба дека новиот код ќе работи при екстремни услови на оптоварување. Исто така, мислам дека е време LoadRunner да биде преземен од тимовите за развој, а не од тимовите за тестирање.

Клучни придобивки

  • Обемна документација - LoadRunner е на пазарот подолго време, така што има многу онлајн ресурси кои ќе ви помогнат да разберете како да поставите тестови за оптоварување.
  • Поддршка за протокол - Load Runner поддржува сè, од ODBC до AJAX, HTTPS и кој било друг нетривијален протокол што може да го користи вашата апликација. Се трудиме да не користиме повеќе алатки за тестирање на оптоварување, бидејќи тоа само го комплицира процесот.

Натпреварувачи

Учествувал во битката, но не победил

Повторно, нема многу универзални алатки во оваа област, така што најдоброто решение е она што ќе работи во секоја средина со која било технологија.

Алатки за распоредување

Алатки за DevOps што секој треба да ги научи во 2020 година
Алатките за распоредување се веројатно најмалку разбраниот аспект на развојот. За оперативен тим без длабоко разбирање на кодот и функционалноста на апликацијата, тешко е да се користат такви алатки. За програмерите, управувањето со распоредувањето е нова одговорност, така што тие сè уште немаат доволно искуство за работа со такви алатки.

Прво, да ги поделиме сите алатки за распоредување во три подкатегории:

  • управување со артефакти
  • управување со конфигурации
  • распоредување.

#1 Алатка за управување со артефакти

Победник: Nexus

Алатки за DevOps што секој треба да ги научи во 2020 година
Складиштето за артефакти Nexus ја поддржува речиси секоја голема технологија, од Java до NPM до Docker. Можеме да ја користиме оваа алатка за да ги складираме сите артефакти што ги користиме. Проксирањето на далечинските менаџери на пакети, исто така, значително го забрзува процесот на градење на CI, што ги прави пакетите попристапни за градење. Друга предност е можноста да се добие целосен преглед на сите пакети што се користат во неколку софтверски проекти, блокирајќи ги небезбедните пакети со отворен код (тие можат да дејствуваат како вектор за напад).

Клучни придобивки

  • Техничка поддршка - Сигурен производ; добро поддржан.
  • Отворен код - бесплатната верзија не ја ограничува основната функционалност што им е потребна на развојните тимови.

#1 Алатка за управување со конфигурација

Победник: Ansible

Ансибл е лидер од една едноставна причина: без државјанство. Претходно, слични алатки се фокусираа на управување со состојбата на конфигурацијата. Кога ќе се стартува, таквата алатка, откако ја доби саканата конфигурација, ќе се обиде да ја поправи тековната конфигурација на апликацијата. А со новиот пристап присутни се само компоненти без државјанство. Новите верзии на кодот се артефакти кои се распоредени за да ги заменат постоечките. Ова може да се смета за еден вид ефемерна, краткорочна средина.

Клучни придобивки

  • Без државјанство - Playbook се стартува од машината за распоредување и се извршува на целните сервери. Не морам да се грижам за состојбата на оддалечениот објект со користење на алатка како Packer за создавање објекти што можат да се распоредат.
  • Отворен код - Како и CentOS, Ansible е исто така поддржан од RedHat. Тоа помага да се одржи заедницата и обезбедува висококвалитетни модули, лесни за употреба.
  • Тестирање со Molecule (Ansible рамка) - Бидејќи управувањето со конфигурацијата е код, како и сè друго, тестирањето е од суштинско значење. Рамката за тестирање улоги Ansible на Molecule работи беспрекорно, осигурувајќи дека конфигурацијата е со ист квалитет и ја следи истата линија CI/CD како и кодот на апликацијата.
  • YAML - Во споредба со другите алатки, YAML е полесно да се разбере. Бидејќи управувањето со конфигурацијата е типично нов предизвик за оние кои спроведуваат практики на DevOps, едноставноста е нејзиниот адут.

Натпреварувачи

Учествувал во битката, но не победил

Шеф на OpsCode - Ја започнав мојата кариера DevOps како развивач на книги за готвење. Руби и готвач, секако, ми се многу драги на срцето, но тие едноставно не ги решаваат проблемите на модерните апликации без државјанство, мајчини во облакот. OpsCode Chef е одлична алатка за повеќе традиционални апликации, но во оваа статија ние сме фокусирани на иднината.

куклен — Кукла никогаш немала многу обожаватели, особено во споредба со Шеф и Ансибл. Одличен е за обезбедување и работа со хардвер, но нема модерна поддршка за управување со конфигурации за веб-апликација.

Алатка за распоредување број 1

Победник: Terraform

Алатки за DevOps што секој треба да ги научи во 2020 година
Terraform го решава проблемот со опишување на вашата инфраструктура како код, од мрежни компоненти до целосни слики од серверот. Овој производ измина долг пат од неговото првично објавување, со создадени толку многу приклучоци и изградена толку силна заедница што сигурно ќе добиете помош во секое сценарио за распоредување. Способноста да се поддржи секаков вид опкружување (во простории, во облак или на друго место) е неспоредлива. Конечно, најновата верзија обезбедува голем дел од истите логички функции и класи во HCL како и секој друг традиционален програмски јазик, што го прави Terraform лесен за програмерите брзо и лесно да го сфатат.

Клучни придобивки

  • Агностика на животната средина - Terraform користи функции кои делуваат како интерфејс помеѓу вашиот Terraform код, сите API и внатрешната логика за да комуницира со давателот на инфраструктурата. Ова значи дека ќе совладам само една алатка и потоа ќе можам да работам секаде.
  • Софтвер со отворен код - Тешко е да се победат бесплатните алатки! Поддршка на заедницата на највисоко ниво.

Натпреварувачи

Учествувал во битката, но не победил

AWS CloudFormation — Дури и ако работите само во облакот AWS, вашата следна работа може да користи друга алатка. Посветувањето на целото ваше време и енергија на само една платформа е кратковидна одлука. Дополнително, многу нови AWS услуги често се достапни како Terraform модули пред да бидат достапни во CloudFormation.

Алатки за траење

Алатки за DevOps што секој треба да ги научи во 2020 година

Крајната цел на секој развоен проект е да ја лансира апликацијата во производство. Во светот на DevOps, сакаме да бидеме целосно свесни за сите можни проблеми со нашата околина, а исто така сакаме да ја минимизираме мануелната интервенција. Изборот на вистинскиот сет на алатки за време на траење е од суштинско значење за да се постигне нирвана за развој на апликации.

Подкатегории на алатки за извршување:

  • X-како-услуга (XaaS)
  • оркестрација
  • следење
  • сеча.

Х-алатка-како-услуга #1

Победник: Амазон Веб Услуги

Алатки за DevOps што секој треба да ги научи во 2020 година
Амазон отсекогаш бил лидер во облак технологиите, но не застанува тука: разновидноста на нови услуги за програмерите ги отвора очите. Донесете која било технологија и шаблон во AWS и таа ќе биде изградена и работи. Цената на алатката е сосема разумна: споредете ја со склопување, управување и одржување на опремата во вашиот сопствен центар за податоци. Бесплатната верзија ви овозможува да експериментирате и да донесете правилна одлука пред да потрошите пари.

Клучни придобивки

  • Преваленца - Ако имате искуство со градење апликации во AWS, можете да работите насекаде. Бизнисите го сакаат AWS, а стартапите исто така ја ценат неговата ниска цена.
  • Бесплатната верзија е навистина значаен фактор што го издвојува AWS од неговите колеги. Дозволете ми да ја пробам услугата и да видам како функционира пред да донесам одлука за купување, не сакам да трошам илјадници долари на нешто непотребно. Бесплатната верзија е секогаш доволна за да тестирам кој било концепт.

Натпреварувачи

Учествувал во битката, но не победил

Сино „Azure измина долг пат од своето прво издание и тоа е за пофалба. Сепак, желбата да се биде поинаков доведе до чудни имиња за услугите, што често ја отежнува работата. Што значи „складирање на дамки“? И додека .NET кодот функционира подобро во екосистемот на Microsoft, малку е веројатно дека ќе користите само .NET за секоја компонента на вашата апликација.

Heroku - Никогаш не би водел ништо друго освен личен проект на Хероку поради ниското ниво на доверливост и транспарентност, така што компаниите не треба да го користат како платформа. Хероку е одличен за демонстрација на нешто на блог, но за практична употреба - „Не, благодарам!“

# 1 Алатка за оркестрација

Победник: openshift

Алатки за DevOps што секој треба да ги научи во 2020 година
Веројатно користите Docker или други контејнери во купот на апликации. Апликациите без сервер се одлични, но можеби нема да одговараат на секоја архитектура. Работењето контејнери без платформа за оркестрација едноставно нема да работи. Kubernetes Core (K8s) е без конкуренција во однос на безбедноста и алатките. OpenShift е единствената платформа базирана на Kubernetes која може да собира Source2Image, поддржува автоматско распоредување во подлоги и поддржува следење и следење. OpenShift може да се извршува on-prem, во облак, или on-prem и во облак во исто време.

Клучни придобивки

  • Вградена безбедност - Управувањето со безбедноста на K8 може да бара напреден степен. Секој детал мора внимателно да се размисли и да се земе предвид! Безбедносните механизми вградени стандардно со OpenShift го преземаат товарот од програмерите и обезбедуваат посигурна платформа за апликациите.
  • Се-во-едно решение - За разлика од основните K8, кои стандардно не вклучуваат алатки за балансирање на оптоварување, OpenShift има се. Можам да го користам за создавање и хостирање контејнери, стартување алатки за CI/CD, управување со надворешни процеси, управување со клучеви и многу повеќе. Иако графичкиот кориснички интерфејс сè уште е далеку од совршен, пристапот базиран на API значи дека сè може да се опише во скрипта. За разлика од другите GUI за K8, OpenShift го олеснува учењето на основите на Kubernetes. Не треба ни да се добие диплома!

Натпреварувачи

Учествувал во битката, но не победил

Докер рој — Docker Swarm се обиде да ги поедностави K8 ​​со тоа што ќе се ослободи од многу работи. Одличен е за мали апликации, но за деловни апликации едноставно не работи. Дополнително, решенијата како AWS ECS имаат сличен пристап, но ја олеснуваат работата со други услуги со кои исто така можам да комуницирам (Lambda, IAM, итн.).

Алатка за следење број 1

Победник: Нова реликвија

Алатки за DevOps што секој треба да ги научи во 2020 година
Раните изданија на New Relic направија една работа добро - следењето на APM (Application Performance Monitoring). Сега е целосно опремена алатка за следење што ви овозможува да ги следите перформансите на серверот, контејнерот, базата на податоци, следењето на искуството на крајниот корисник и, се разбира, следењето на перформансите на апликацијата.

Клучни придобивки

  • Лесно користење - Кога работев како системски инженер, користев многу алатки за мониторинг, но никогаш не сум сретнал толку едноставен и лесен за употреба како New Relic. Тоа е SaaS, така што не треба сами да го инсталирате.
  • Видливост од крај до крај - Други алатки се обидуваат да следат еден специфичен елемент од вашата апликација. На пример, метрика за користење на процесорот или мрежен сообраќај, но сето тоа мора да се следи сеопфатно за апликацијата да работи правилно. New Relic ви дава можност да ги соберете сите ваши податоци за да добиете сеопфатен преглед на она што се случува.

Натпреварувачи

Учествувал во битката, но не победил

Zabbix — Мојот прв и омилен систем за следење, но остана во минатото поради неразвиеноста во облак технологиите и на полето на следење на перформансите на апликацијата APM. Zabbix сè уште добро го следи традиционалното следење на инфраструктурата на серверот, но тоа е околу тоа.

DataDog — Премногу фокусиран на процесот на управување со производствената средина на апликацијата, а не на самиот код. Со тимовите на DevOps кои вклучуваат програмери, не мора да се потпираме на алатки кои тешко се користат за да обезбедиме врвна поддршка.

Алатка за логирање број 1

Победник: Плускав

Алатки за DevOps што секој треба да ги научи во 2020 година
Тешко е да се натпреваруваш со Splunk! Долго време тој останува лидер во сечата, продолжувајќи да го прави тоа подобро од кој било друг. Со понудите on-prem и SaaS, можете да го користите Splunk насекаде. Големиот недостаток е неговата цена: Splunk е сè уште проклето скапо!

Клучни придобивки

  • Продорност - Бизнисите го сакаат Splunk, а компаниите имаат пари да го купат.
  • Иако стартапите се обидуваат да ги надоместат трошоците, многу функции може да се решат благодарение на аналози со отворен код.
  • Одржливост - Едноставно кажано, Splunk работи и го прави тоа добро. Доаѓа со многу стандардни поставки и функции подготвени за употреба. Нема потреба да губите време читајќи документација и обидувајќи се да го натерате Splunk да работи или да дешифрира било што.

Натпреварувачи

Учествувал во битката, но не победил

ELK Stack (ElasticSearch, LogStash и Kibana) „Овие алатки се чини дека се омилени затоа што не мора ни да го продавате црниот дроб за да ги користите“. Меѓутоа, како што расте множеството дневници и се зголемува бројот на апликации на бродот, работата станува сè потешка. Во споредба со Splunk, со ELK Stack потрошив многу повеќе време за поставување на алатките пред да создадам контролни табли отколку што сум имал досега.

Алатки за соработка

Алатки за DevOps што секој треба да ги научи во 2020 година
DevOps е првенствено за промена на културата во една организација. Купувањето на која било алатка нема да ги промени тековните практики преку ноќ, но секако може да поттикне соработка и нови начини на интеракција.

Подкатегории на алатки за соработка:

  • следење на задачите
  • ChatOps
  • документација.

# 1 Алатка за следење проблеми

Победник: Jira

Алатки за DevOps што секој треба да ги научи во 2020 година
Жира ја задржува лидерската позиција, иако конкуренцијата во оваа област се зголемува. Неверојатната флексибилност на Jira им овозможува на тимовите за развој и одржување да управуваат со работата на проектот и спринтерски задачи. Вградените стандарди кои користат Agile терминологија го олеснуваат преминувањето од традиционалните начини на работа кон поефикасни процеси.

Клучни придобивки

  • Популарност - Како и многу други алатки, Jira се користи речиси насекаде. Малите тимови ја користат поевтината, подостапна верзија и добиваат се што им треба, додека поголемите компании можат да си дозволат поскапа лиценца.
  • Интеграции - Жира е пионер во својата област. Овој факт и брзиот развој на производот води до фактот дека другите компании ја избираат Jira за да создадат свои интеграции, со што ја зголемуваат вредноста на алатката. Можеме да го интегрираме Jira со сите алатки наведени во овој напис надвор од кутијата со мала конфигурација.

Натпреварувачи

Учествувал во битката, но не победил

Trello — Trello брзо се здоби со популарност благодарение на бесплатната алатка Kanban. Меѓутоа, штом процесите ќе се размерат и ќе преминете од десетици задачи на илјадници, Trello станува тежок за навигација, пребарување и известување.

Клучна тракер — Бев голем обожавател на оваа алатка кога работев за стартап. Сепак, Pivotal Tracker е повеќе фокусиран на управување со производи отколку на технички задачи. Иако управувањето со производите во Jira е малку покомплексно, сепак може да се имплементира таму без да се користи дополнителна алатка.

Алатка ChatOps #1

Победник: MatterMost

Алатки за DevOps што секој треба да ги научи во 2020 година
Објаснување: Можеби најголемото изненадување за вас во мојот избор, и тоа е добра вест! MatterMost се здоби со популарност со тоа што го зема најдоброто од претходните алатки, но ги стави на почеток. Ова е многу важно за компаниите: MatterMost ви овозможува да ги контролирате вашите податоци и исто така ви помага да ги интегрирате со алатки кои работат локално. Повеќе не треба да излегуваме надвор од заштитниот ѕид за да ги провериме работните разговори.

Клучни придобивки

  • Отворен код – Верзијата со отворен код на MatterMost работи одлично и за средни и за големи тимови. За разлика од бесплатниот план на Slack, кој ја брише вашата историја на пораки, работењето на сопствен сервер значи дека ги задржувате сите ваши податоци.
  • Интеграции - Бидејќи API е речиси 100% базиран на Slack API, скоро сите Slack интеграции може да се користат директно со MatterMost.

Натпреварувачи

Учествувал во битката, но не победил

Гасена - Slack е кул, но овие момци пораснаа толку многу што почнаа да бараат профит. Се наближува фазата на созревање на бизнисот, што им ја одзема главната вредност: Slack ги обезбедуваше услугите бесплатно; Најважниот недостаток на бесплатната верзија е бришењето на историјата на разговор.

Microsoft Teams — Обидете се да интегрирате производ на Microsoft со нешто што не е во сопственост на Microsoft... Среќно! Тоа е сè што имам да кажам за оваа алатка!

Алатка за документација #1

Победник: сливот

Алатки за DevOps што секој треба да ги научи во 2020 година
Создавањето и одржувањето на квалитетна техничка документација е сложен процес, без разлика која алатка ја користите. Иако многу алатки за документација SaaS се појавија на пазарот неодамна, би ми било тешко да го нарачам складирањето на техничката документација за апликациите кои се клучни за мисијата на трета страна. Пожелно е да се складираат податоци и документи on-prem, и вака го решава Confluence.

Клучни придобивки

  • Лесни за ракување - Повеќето самостојни алатки може да бидат малку сложени за поставување и ракување и бараат одредено знаење за одржување. Confluence Server работи одлично за 10 или 10,000 корисници.
  • Приклучоци - Секоја чест за Confluence за убавата, лесна за употреба навигација надвор од кутијата и можноста за додавање приклучок за речиси сè, го отклучува потенцијалот сличен на Вики.

Натпреварувачи

Учествувал во битката, но не победил

Прочитајте ги документите — Кул за отворен код, но не ни помислувајте да складирате критичко знаење овде.

Маркдаун - Одлично за документирање на код, но тешко е да се објавува архитектура, процеси или други видови документација поради специфичното форматирање на MarkDown.

Jekyll — При документирање на техничкото знаење, не сакам да создавам нова статична локација што ќе се распоредува секогаш кога ќе има промена. Едноставниот систем за контрола на верзијата на Confluence во голема мера ја поедноставува внатрешната документација.

Сумира

На пазарот има буквално стотици DevOps алатки, што го отежнува да се знае кои да се користат и кога треба да се имплементираат. Следете го овој едноставен водич за избор на алатки DevOps за комплетен CI/CD гасовод.

Бидете сигурни да изберете алатки од сите пет категории:

  • развој и изградба на алатки
  • тест алатки за автоматизација
  • алатки за распоредување
  • Алатки за траење
  • алатки за соработка.

Главна препорака: Автоматизирајте сè!

Благодарам Зак Шапиро!

Извор: www.habr.com

Додадете коментар