Altı ay və ya daha tez bir zamanda DevOps mühəndisi olmaq necə. Hissə 1. Giriş

Целевая аудитория

Karyeranızı daha təkmil DevOps modelinə çevirmək istəyən bir tərtibatçısınız? Siz klassik əməliyyat mühəndisisiniz və DevOps-un nə demək olduğu barədə fikir əldə etmək istərdinizmi? Yoxsa siz də deyilsiniz və İT sahəsində bir müddət işlədikdən sonra karyeranızı dəyişmək istəyirsiniz və haradan başlayacağınız barədə heç bir fikriniz yoxdur?
Əgər belədirsə, altı ay ərzində necə orta səviyyəli DevOps mühəndisi ola biləcəyinizi öyrənmək üçün oxuyun! Nəhayət, əgər siz uzun illərdir DevOps-da iştirak etmisinizsə, inteqrasiya və avtomatlaşdırma sənayesinin hazırda harada olduğunu və hara getdiyini öyrənmək üçün bu məqalə seriyasından hələ də çox şey əldə edəcəksiniz.

Altı ay və ya daha tez bir zamanda DevOps mühəndisi olmaq necə. Hissə 1. Giriş

Hər halda bu nədir?

Birincisi, DevOps nədir? Siz Google təriflərinə baxa və bütün söz-söhbətlərə baxa bilərsiniz, lakin bilin ki, təriflərin əksəriyyəti sadələşdirilmiş formada yığılmış sözlərin qarışıqlığıdır. Buna görə də, mən sizə bütün bu təriflərin xülasəsini verəcəyəm: DevOps, baş ağrısı və məsuliyyətin bütün iştirakçılar arasında paylaşıldığı proqram təminatının çatdırılması üsuludur. Hamısı budur.

Yaxşı, amma bu abbreviatura nə deməkdir? Bu o deməkdir ki, ənənəvi olaraq Tərtibatçılar (proqram təminatı yaradan insanlar) Əməliyyatlardan (proqram təminatını idarə edən insanlar) əhəmiyyətli dərəcədə fərqli olan təşviqlərlə öz işlərini görməyə həvəsləndirilmişlər. Məsələn, bir tərtibatçı olaraq, mümkün qədər tez çoxlu yeni funksiyalar yaratmaq istəyirəm. Axı bu mənim işimdir və müştərilərin tələb etdiyi budur! Bununla belə, əgər mən əməliyyat işçisiyəmsə, o zaman mənə mümkün qədər az yeni xüsusiyyət lazımdır, çünki hər yeni xüsusiyyət dəyişiklikdir və istənilən dəyişiklik problemlərlə doludur. Təşviqlərin bu uyğunsuzluğu nəticəsində DevOps doğuldu.

DevOps inkişaf və əməliyyatları (inteqrasiya və avtomatlaşdırma) bir qrupda birləşdirməyə çalışır. İdeya ondan ibarətdir ki, bir qrup indi müştəri ilə əlaqəli proqram təminatının qurulması, tətbiqi və gəlir əldə edilməsinin həm ağrısını, həm də məsuliyyətini (və ehtimal ki, mükafatlarını) bölüşəcək.

Puristlər sizə "DevOps mühəndisi" deyə bir şey olmadığını söyləyəcəklər. "DevOps bir rol deyil, mədəniyyətdir" deyəcəklər. Təbii ki, texniki baxımdan onlar haqlıdırlar, amma olduğu kimi Çox vaxt bu termin əldən çıxdı İlkin mənasından başqa, DevOps mühəndisi “sistem mühəndisi 2.0” kimi bir şeydir. klassik əməliyyat problemlərini həll etmək.

Altı ay və ya daha tez bir zamanda DevOps mühəndisi olmaq necə. Hissə 1. Giriş

DevOps nəhayət, tərtibatçının noutbukundan kod götürən və onu son məhsulun istifadəsindən gəlirə çevirən rəqəmsal boru kəmərləri yaratmaq deməkdir, hər şey bundan ibarətdir. Nəzərə alın ki, DevOps karyerasını seçmək, demək olar ki, hər bir şirkət ya “DevOps” edir, ya da bir olduğunu iddia etməklə, maliyyə mükafatları ilə kifayət qədər yüksək kompensasiya olunur. Bu şirkətlərin harada yerləşməsindən asılı olmayaraq, DevOps kimi ümumi iş imkanları olduqca yüksəkdir və uzun illər üçün "əyləncəli" və mənalı məşğulluq təklif edir.

Bununla belə, “DevOps komandası” və ya “DevOps departamenti” işə götürən şirkətlərdən ehtiyatlı olun. Düzünü desək, belə şeylər olmamalıdır, çünki nəticədə DevOps hələ də proqram təminatının çatdırılması mədəniyyəti və üsuludur, nəinki yeni komanda və ya departament yaratmaq deyil. dəbdəbəli ad.

Disclaimer

İndi gəlin Kool-Aid stəkanını bir anlığa kənara qoyub aşağıdakıları düşünək. Köhnə məsəli eşitmisinizmi "kiçik DevOps mühəndisləri yoxdur?" Əgər yoxsa, bilin ki, bu, Reddit və StackOverflow-da məşhur bir məcazidir. Amma bu nə deməkdir?

Sadə dillə desək, bu ifadə o deməkdir ki, nəticədə həqiqətən effektiv Senior DevOps praktikantı olmaq üçün alətlər haqqında möhkəm anlayışla birlikdə uzun illər təcrübə tələb olunur. Və təəssüf ki, məqsədə çatmaq üçün qısa yol yoxdur. Beləliklə, bu sistemlə oyun qurmaq cəhdi deyil - məncə, sənayedə bir neçə aylıq təcrübəyə malik böyük DevOps mühəndisi kimi görünmək əslində mümkün deyil. Sürətlə dəyişən alətlər və metodologiyaların möhkəm başa düşülməsinə nail olmaq üçün illərlə təcrübə tələb olunur və bunun qarşısını almaq mümkün deyil. Bununla belə, əksər şirkətlərin istifadə etdiyi alətlər və konsepsiyaların demək olar ki, ardıcıl (əgər dəbdə olsa) menyusu var və biz bundan danışacağıq.

Yenə də, alətlər bacarıqlardan fərqlidir, ona görə də alətləri öyrənərkən öz bacarıqlarınızı (tədqiqat, şəbəkə qurmaq, yazılı ünsiyyət, problemlərin aradan qaldırılması və s.) laqeyd qoymadığınızdan əmin olun. Ən əsası, tapmaq istədiyimiz şeyi gözdən qaçırmayın - ideyaları qəbul edən və onları gəlir gətirən kod parçalarına çevirən tam avtomatlaşdırılmış rəqəmsal boru kəməri yaratmağın bir yolu. Bu, bütün bu məqalədən yeganə ən vacib nəticədir!

Kifayət qədər söhbət, nə vaxt başlaya bilərəm?

Aşağıda DevOps Fundamental Knowledge yol xəritəsi verilmişdir. Orada təsvir olunan hər şeyi mənimsədikdən sonra təhlükəsiz və vicdanla özünüzü DevOps mühəndisi adlandıra bilərsiniz! Və ya "DevOps" adını bəyənməsəniz bulud mühəndisi.

Altı ay və ya daha tez bir zamanda DevOps mühəndisi olmaq necə. Hissə 1. Giriş

Bu xəritə mənim (və yəqin ki, bu məkanda işləyən insanların çoxunun) səriştəli DevOps mühəndisinin bilməli olduğu fikrimi əks etdirir. Lakin bu, sadəcə bir fikirdir və təbii ki, bununla razılaşmayanlar da olacaq. Bu yaxşıdır! Biz burada mükəmməlliyə can atmırıq, biz əslində üzərində qura biləcəyimiz möhkəm təmələ can atırıq.

Bu yolu tədricən, qat-qat keçməlisiniz. İlk olaraq mavi rəngdə olan elementləri öyrənərək əsaslarla başlayaq (və davam edək!) Linux, Python və AWS. Sonra, vaxt və ya iş bazarı tələbi imkan verirsə, bənövşəyi şeyləri edin - Golang və Google Cloud.

Düzünü desəm, əsas üst təbəqə sonsuza qədər öyrənməli olacaq bir şeydir. OS Linux çox mürəkkəbdir və mənimsənilməsi illər tələb edir. Python aktual qalmaq üçün daimi təcrübə tələb edir. AWS o qədər sürətlə inkişaf edir ki, bu gün bildikləriniz yalnız bir ildən sonra ümumi bilik portfelinizin bir hissəsi olacaq. Əsasları öyrəndikdən sonra həqiqi bacarıq dəstinə keçin. Nəzərə alın ki, hər ay öyrənmə üçün cəmi 6 mavi sütun (Konfiqurasiya, Versiya, Qablaşdırma, Yerləşdirmə, Başlama, Monitorinq) mövcuddur.

Altı ay və ya daha tez bir zamanda DevOps mühəndisi olmaq necə. Hissə 1. Giriş

Siz, əlbəttə ki, altı aylıq boru kəmərimizdə mühüm mərhələnin - sınaqların olmadığını gördünüz. Modul, inteqrasiya və qəbul testlərinin yazılması asan olmadığı və ənənəvi olaraq tərtibatçıların çiyninə düşdüyü üçün onu qəsdən yol xəritəsinə daxil etmədim. Və “sınaq” mərhələsini keçmək bu yol xəritəsinin məqsədinin mümkün qədər tez əsas bacarıq və alətlərə yiyələnmək olması ilə izah olunur. Müəllifin fikrincə, sınaq təcrübəsinin olmaması DevOps-un düzgün istifadəsinə yalnız kiçik bir maneədir.

Həm də unutmayın ki, biz burada bir-biri ilə əlaqəsi olmayan texniki boşboğazlıqları deyil, aydın hekayə yaratmaq üçün bir araya gələn alətləri dərk edirik. Bu hekayə, bitləri montaj xətti kimi hərəkət etdirən rəqəmsal montaj xətti ilə başa çatan proseslərin avtomatlaşdırılması haqqındadır. Bir dəstə alət öyrənmək və dayanmağa davam etmək istəmirsiniz! DevOps alətləri tez dəyişir, lakin anlayışlar daha az dəyişir. Buna görə də, alətləri daha yüksək səviyyəli anlayışlar üçün tədris proksiləri kimi istifadə etməyə çalışmalısınız.

Yaxşı, gəlin bir az dərin qazaq!

Fundamental bilik

Vəqf deyən yuxarı addımın altında hər bir DevOps mühəndisinin mənimsəməli olduğu bacarıqları görə bilərsiniz. Bu bacarıqlar sənayenin üç sütununu inamla idarə etməkdir, bunlar: əməliyyat sistemi, proqramlaşdırma dili və ictimai bulud. Bunlar tez öyrənib davam edə biləcəyiniz şeylər deyil. Sənayedə qabaqcıl olmaq və ətrafınızdakı peşəkar mühitə uyğun olmaq üçün bu bacarıqların daim təkmilləşdirilməsi və mənimsənilməsi lazımdır. Gəlin onları bir-bir nəzərdən keçirək.

Linux hər şeyin işlədiyi yerdir. Tamamilə Microsoft ekosistemində qalaraq heyrətamiz bir DevOps mütəxəssisi ola bilərsinizmi? Əlbəttə bacararsan! Yalnız Linux-dan istifadə etməyi diktə edən heç bir qanun yoxdur. Bununla belə, unutmayın ki, bütün Linux işləri Windows-da edilə bilsə də, orada bu, daha ağrılı və daha az funksionallıqla baş verir. Bu nöqtədə güman etmək olar ki, Linux-u bilmədən əsl DevOps peşəkarı olmaq mümkün deyil, ona görə də Linux öyrənmək və öyrənmək lazım olan bir şeydir.

Düzünü desəm, bunun ən yaxşı yolu evdə sadəcə Linux (Fedora və ya Ubuntu) quraşdırmaq və ondan mümkün qədər istifadə etməkdir. Təbii ki, çox şeyi sındıracaqsan, iş proseslərində ilişib qalacaqsan, hər şeyi düzəltməli olacaqsan, amma Linuxu öyrənəcəksən!

Altı ay və ya daha tez bir zamanda DevOps mühəndisi olmaq necə. Hissə 1. Giriş

Yeri gəlmişkən, RedHat variantları Şimali Amerikada daha çox yayılmışdır, ona görə də Fedora və ya CentOS ilə başlamağın mənası var. KDE və ya Gnome nəşrini almağınızla maraqlanırsınızsa, KDE-ni seçin. Linus Torvaldsın özü də bundan istifadə edir.

Python bu günlərdə dominant back-end dilidir. Başlamaq asandır və geniş istifadə olunur. Python süni intellekt və maşın öyrənməsi sahəsində çox geniş yayılmışdır, buna görə də başqa bir isti sahəyə keçmək istəsəniz, tam hazır olacaqsınız.

Altı ay və ya daha tez bir zamanda DevOps mühəndisi olmaq necə. Hissə 1. Giriş

Amazon Veb Xidmətləri: Yenə də ictimai buludun necə işlədiyini yaxşı başa düşmədən təcrübəli DevOps peşəkarı olmaq mümkün deyil. Və bu barədə daha çox öyrənmək istəyirsinizsə, Amazon Veb Xidmətlərinə baxın. Bu xidmətlər sahəsində aparıcı oyunçudur və ən zəngin iş alətləri dəstini təklif edir.

Bunun əvəzinə Google Cloud və ya Azure ilə başlamaq mümkündürmü? Əlbəttə edə bilərsiniz! Lakin son maliyyə böhranını xatırlayaraq qeyd etmək lazımdır ki, AWS ən azı 2018-ci ildə ən təhlükəsiz variantdır, çünki o, hesabı pulsuz qeydiyyatdan keçirməyə və bulud xidmətlərinin imkanlarını araşdırmağa başlamağa imkan verir. Bundan əlavə, AWS konsolu istifadəçiyə seçmək üçün sadə və aydın menyu təqdim edir. Yaxşı xəbər budur ki, bunu etmək üçün Amazonun bütün texnologiyalarını bilməyə ehtiyac yoxdur.

Altı ay və ya daha tez bir zamanda DevOps mühəndisi olmaq necə. Hissə 1. Giriş

Aşağıdakılarla başlayın: VPC, EC2, IAM, S3, CloudWatch, ELB (EC2 çətiri altında elastik yük balansı) və Təhlükəsizlik Qrupu. Başlamaq üçün bunlar kifayətdir və hər bir müasir bulud əsaslı müəssisə bu vasitələrdən kifayət qədər fəal istifadə edir. AWS-in öz təlim saytı işə başlamaq üçün yaxşı yerdir.

Mən sizə hər gün 20-30 dəqiqə vaxtınızı Python dili, Linux əməliyyat sistemi və AWS bulud xidməti ilə öyrənməyə və məşq etməyə sərf etməyi məsləhət görürəm. Ümumiyyətlə, inanıram ki, gündə bir saat, həftədə beş dəfə sərf etmək, DevOps sənayesini 6 ay və ya daha az müddətdə başa düşmək üçün kifayətdir. Cəmi 6 əsas komponent var ki, onların hər biri bir aylıq təlimə uyğundur. Əsas bilikləri əldə etmək üçün sizə lazım olan hər şey budur.
Sonrakı məqalələrdə biz növbəti mürəkkəblik səviyyəsinə baxacağıq: proqram təminatının konfiqurasiyasını, versiyasını, qablaşdırmasını, yerləşdirilməsini, işə salınmasını və monitorinqini tam avtomatlaşdırmağın yolları.

Tezliklə davamı olacaq...

Bəzi reklamlar 🙂

Bizimlə qaldığınız üçün təşəkkür edirik. Məqalələrimiz xoşunuza gəlirmi? Daha maraqlı məzmun görmək istəyirsiniz? Sifariş verməklə və ya dostlarınıza tövsiyə etməklə bizə dəstək olun, developers üçün bulud VPS 4.99 dollardan, Sizin üçün bizim tərəfimizdən icad edilmiş giriş səviyyəli serverlərin unikal analoqu: VPS (KVM) E5-2697 v3 (6 nüvəli) 10GB DDR4 480GB SSD 1Gbps haqqında 19 dollardan bütün həqiqət və ya serveri necə paylaşmaq olar? (RAID1 və RAID10, 24 nüvəyə qədər və 40 GB DDR4 ilə mövcuddur).

Dell R730xd Amsterdamdakı Equinix Tier IV məlumat mərkəzində 2 dəfə ucuzdur? Yalnız burada 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TV 199$-dan başlayan qiymətlərlə Hollandiyada! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - 99 dollardan! haqqında oxuyun İnfrastruktur korporasiyasını necə qurmaq olar. bir qəpik üçün 730 avro dəyərində Dell R5xd E2650-4 v9000 serverlərinin istifadəsi ilə sinif?

Mənbə: www.habr.com

Добавить комментарий