DevOpsずは䜕ですか?

珟時点では、これは垂堎でほが最も高䟡なポゞションです。 「DevOps」゚ンゞニアをめぐる倧隒ぎは想像できる限界を超えおおり、䞊玚 DevOps ゚ンゞニアの堎合はさらにひどいです。
私は統合および自動化郚門の責任者ずしお働いおいたす。英語で解読するず、DevOps Manager ずなりたす。 英語の蚘録が私たちの日垞の掻動を反映しおいるずは考えにくいですが、この堎合はロシア語の方が正確です。 私の掻動の性質䞊、チヌムの将来のメンバヌにむンタビュヌする必芁があるのは圓然であり、過去 50 幎間で玄 XNUMX 人が私を通過し、同じ数が埓業員ずの事前審査で陀倖されたした。

DevOps ずいうラベルの背埌には、さたざたな皮類の゚ンゞニアの非垞に倧きな局が隠れおいるため、私たちはただ同僚を探しおいたす。

以䞋に曞かれおいるこずはすべお私の個人的な意芋であり、それに同意する必芁はありたせんが、このトピックに察するあなたの態床に圩りを䞎えるこずは認めたす。 支持されなくなるリスクがあるにもかかわらず、私が自分の意芋を発衚するのは、それがあるべき堎所だず信じおいるからです。

DevOps ゚ンゞニアが誰であるかに぀いお䌁業はさたざたな理解を持っおおり、人材を迅速に雇甚するために、党員にこのレッテルを貌り付けおいたす。 䌁業はこれらの人々に非珟実的な報酬を支払う甚意があり、ほずんどの堎合、圌らのためにツヌル管理者を雇っおいるため、状況は非垞に奇劙です。

では、DevOps ゚ンゞニアずは誰でしょうか?

その登堎の歎史から始めたしょう - 開発オペレヌションは、予想された結果ずしお、補品生産の速床を向䞊させるために、小芏暡チヌムでの察話を最適化するための新たなステップずしお登堎したした。 その目的は、補品環境を管理する手順ずアプロヌチの知識を備えた開発チヌムを匷化するこずでした。 蚀い換えれば、開発者は、補品が特定の条件でどのように動䜜するかを理解し、補品を展開する方法、パフォヌマンスを向䞊させるために環境のどの特性を調敎できるかを理解する必芁がありたす。 そこで、しばらくの間、DevOps アプロヌチを採甚する開発者が珟れたした。 DevOps 開発者は、アクティビティず運甚環境のパフォヌマンスを簡玠化するために、ビルドおよびパッケヌゞ化のスクリプトを䜜成したした。 しかし、゜リュヌション アヌキテクチャの耇雑さず、時間の経過ずずもにむンフラストラクチャ コンポヌネントの盞互圱響により、環境のパフォヌマンスが䜎䞋し始めたした。反埩するたびに、特定のコンポヌネントに぀いおのより深い理解が必芁になり、远加のコンポヌネントによる開発者の生産性が䜎䞋したした。コンポヌネントを理解し、特定のタスクに合わせおシステムを調敎するコスト。 開発者自身のコストが増倧し、それに䌎っお補品のコストも䞊昇し、チヌム内の新しい開発者に察する芁件が急激に䞊昇したした。なぜなら、圌らは開発の「スタヌ」の責任もカバヌする必芁があり、圓然のこずながら「スタヌ」の数は枛りたした。そしお利甚できるものは少なくなりたす。 私の経隓では、オペレヌティング システム カヌネルによるパケット凊理の詳现、パケット ルヌティング ルヌル、およびホスト セキュリティの偎面に興味を持っおいる開発者はほずんどいないこずも泚目に倀したす。 論理的なステップは、これに粟通した管理者を匕き付け、同様の責任を圌に割り圓おるこずでした。これにより、圌の経隓のおかげで、「スタヌ」開発のコストず比范しおより䜎いコストで同じ指暙を達成するこずが可胜になりたした。 このような管理者はチヌムに配眮され、圌の䞻なタスクは、特定のチヌムのルヌルに埓っお、この特定のチヌムにリ゜ヌスが割り圓おられたテスト環境ず運甚環境を管理するこずでした。 実際、これが倧倚数の人の心の䞭に DevOps が登堎した経緯です。

時間の経過ずずもに、これらのシステム管理者は、開発分野におけるこの特定のチヌムのニヌズ、開発者ずテスタヌの䜜業を楜にする方法、金曜日に培倜せずにアップデヌトを展開する方法を理解し始めたした。オフィスで展開゚ラヌを修正したす。 時が経ち、今では「スタヌ」は開発者が䜕を求めおいるかを理解するシステム管理者になりたした。 圱響を最小限に抑えるために、管理ナヌティリティが登堎し始めたした。OS レベルを分離する叀くお信頌性の高い方法を誰もが思い出し、セキュリティ、ネットワヌク郚分の管理、およびホスト構成の芁件を最小限に抑えるこずが可胜になりたした。その結果、新しい「スタヌ」の芁件が軜枛されたす。

「玠晎らしい」ものが珟れたした、それはdockerです。 なぜ玠晎らしいのでしょうか はい。chroot たたはjail、および OpenVZ で分離を䜜成するには、OS に関する重芁な知識が必芁でした。察照的に、このナヌティリティを䜿甚するず、必芁なものすべおを内郚に甚意しお、特定のホスト䞊に分離されたアプリケヌション環境を簡単に䜜成できたす。開発の手綱が再び管理され、システム管理者は XNUMX 台のホストだけで管理できるため、そのセキュリティず高可甚性が確保され、論理的に簡玠化されたす。 しかし、進歩は止たらず、システムは再びたすたす耇雑になり、コンポヌネントがたすたす増え、XNUMX ぀のホストではシステムのニヌズを満たせなくなり、クラスタヌを構築する必芁が生じ、私たちは再びシステム管理者の元に戻り぀぀ありたす。これらのシステムを構築できるようになりたす。

サむクルを重ねるごずに、開発や管理を簡玠化するさたざたなシステムが登堎し、暙準プロセスから逞脱する必芁があるたでは䜿いやすいオヌケストレヌション システムが登堎したす。 マむクロサヌビス アヌキテクチャも、䞊蚘のすべおを簡玠化し、関係を枛らし、管理を容易にするこずを目的ずしお登堎したした。 私の経隓では、完党なマむクロサヌビス アヌキテクチャは芋぀かりたせんでした。マむクロサヌビスの 50  50 パヌセント、぀たりブラック ボックスが入っおきお、凊理されお出おきたした。残りの 50 は匕き裂かれたモノリスであり、サヌビスは他のサヌビスから分離しお動䜜するこずができたせん。コンポヌネント。 これらすべおにより、開発者ず管理者の䞡方の知識レベルに再び制限が課されたした。

特定のリ゜ヌスに関する専門知識のレベルにおける同様の「倉動」は、今日たで続いおいたす。 しかし、少し話がそれたしたが、匷調すべき点はたくさんありたす。

ビルド゚ンゞニア/リリヌス゚ンゞニア

゜フトりェアのビルド プロセスずリリヌスを暙準化する手段ずしお登堎した、非垞に専門性の高い゚ンゞニア。 アゞャむルを広く導入する過皋で、アゞャむルの需芁がなくなったかのように思われがちですが、決しおそうではありたせん。 この専門化は、産業芏暡での゜フトりェアの組み立おず配信を暙準化する手段ずしお珟れたした。 すべおの䌚瀟補品の暙準技術を䜿甚したす。 DevOps の出珟により、開発者はその機胜を郚分的に倱いたした。これは、開発者が補品の提䟛の準備を始めたためであり、倉化するむンフラストラクチャず、品質に関係なくできるだけ早く提䟛するアプロヌチを考慮するず、時間の経過ずずもに、開発者は機胜を郚分的に倱いたした。品質基準を遵守するず必然的に玍品が遅くなるため、倉化を阻止する圹割を果たしたす。 そのため、埐々に、ビルド/リリヌス ゚ンゞニアの機胜の䞀郚がシステム管理者の肩に移行したした。

オペレヌションが違いすぎたす

私たちは、広範な責任の存圚ず資栌のある人材の䞍足により、雚埌の筍のように、厳栌な専門化ぞず私たちを埌抌しし、さたざたな業務が発生したす。

  • TechOps - enikey システム管理者、別名ヘルプデスク ゚ンゞニア
  • LiveOps - 䞻に運甚環境を担圓するシステム管理者
  • CloudOps - パブリック クラりド Azure、AWS、GCP などを専門ずするシステム管理者。
  • PlatOps/InfraOps/SysOps - むンフラストラクチャ システム管理者。
  • NetOps - ネットワヌク管理者
  • SecOps - 情報セキュリティを専門ずするシステム管理者 - PCI コンプラむアンス、CIS コンプラむアンス、パッチ適甚など。

DevOps ずは、(理論䞊は) 開発サむクルのすべおのプロセス (開発、テスト) を盎接理解し、補品アヌキテクチャを理解し、セキュリティ リスクを評䟡でき、アプロヌチず自動化ツヌルに少なくずも高床に粟通しおいる人物です。これに加えお、レベルは前凊理ず埌凊理、補品リリヌスのサポヌトも理解したす。 運甚ず開発の䞡方の擁護者ずしお行動できる人材。これにより、これら XNUMX ぀の柱の間で良奜な協力が可胜になりたす。 チヌムによる䜜業の蚈画ず顧客の期埅の管理のプロセスを理解したす。

この皮の仕事ず責任を遂行するには、この担圓者は開発およびテストのプロセスだけでなく、補品むンフラストラクチャの管理やリ゜ヌス蚈画も管理する手段を持っおいる必芁がありたす。 この理解における DevOps は、IT、研究開発、さらには PMO のいずれかに䜍眮付けられるものではなく、これらすべおの領域、぀たり䌁業のテクニカル ディレクタヌ、最高技術責任者に圱響力を持たなければなりたせん。

あなたの䌚瀟でもこれは本圓ですか - 私は疑う。 ほずんどの堎合、これは IT たたは研究開発のいずれかです。

資金が䞍足し、これら XNUMX ぀の掻動領域の少なくずも XNUMX ぀に圱響を䞎える胜力が䞍足するず、問題の重みが、静的なコヌドに基づく「ダヌティ」コヌドに関連したリリヌスに察する技術的制限の適甚など、これらの倉曎をより適甚しやすい方向に移すこずになりたす。分析システム。 ぀たり、PMO が機胜のリリヌスに厳栌な期限を蚭定するず、R&D はその期限内に高品質の結果を生み出すこずができず、できる限り最善を尜くしお結果を出し、リファクタリングは埌回しになり、IT 関連の DevOps が技術的手段でリリヌスをブロックしたす。 。 責任ある埓業員の堎合、状況を倉える暩限の欠劂は、特に埓業員が間違いを理解し、それを修正する方法を理解しおいる堎合、自分が圱響を及がせないものに察する過倧な責任の発珟に぀ながりたす - 「至犏は無知です」その結果、埓業員の燃え尜き症候矀や喪倱に぀ながりたす。

DevOpsリ゜ヌス垂堎

さたざたな䌁業の DevOps ポゞションの求人をいく぀か芋おみたしょう。

次のような堎合には、い぀でもお䌚いできたす。

  1. あなたは Zabbix を所有しおおり、Prometheus が䜕であるかを知っおいたす。
  2. むプタブルス。
  3. BASH博士課皋の孊生。
  4. アンシブル教授。
  5. Linux の第䞀人者。
  6. デバッグの䜿甚方法を理解し、開発者ず䞀緒にアプリケヌションの問題を発芋する方法 (php/java/python)。
  7. ルヌティングによっおヒステリックになるこずはありたせん。
  8. システムのセキュリティには十分な泚意を払っおください。
  9. 「あらゆるもの」をバックアップし、この「あらゆるもの」を正垞に埩元したす。
  10. あなたは、最小倀から最倧倀を匕き出すようにシステムを構成する方法を知っおいたす。
  11. Postgres ず MySQL で就寝前にレプリケヌションをセットアップしたす。
  12. CI/CD の蚭定ず調敎は、朝食/昌食/倕食ず同じように必芁です。
  13. AWS の䜿甚経隓がある。
  14. 䌚瀟ずずもに開発する準備ができおいたす。

だから

  • 1 から 6 - システム管理者
  • 7 - システム管理者にも適した少しのネットワヌク管理、䞭玚レベル
  • 8 - 倚少のセキュリティ。䞭玚レベルのシステム管理者には必須です。
  • 9-11 – 䞭間システム管理者
  • 12 — 割り圓おられたタスクに応じお、䞭間システム管理者たたはビルド ゚ンゞニアのいずれか
  • 13 - 仮想化 - 䞭間システム管理者、いわゆる CloudOps 。資金を効率的に䜿甚し、メンテナンスの負荷を軜枛するための、特定のホスティング サむトのサヌビスに関する高床な知識

この欠員を芁玄するず、䞭玚/䞊玚システム管理者であれば十分であるず蚀えたす。

ちなみに、Linux/Windows では管理者を匷く分けるべきではありたせん。 もちろん、これら XNUMX ぀の䞖界のサヌビスやシステムが異なるこずは理解しおいたすが、すべおの基本は同じであり、自尊心のある管理者であればどちらの䞖界にも粟通しおおり、たずえ詳しくなくおも、有胜な管理者であれば、これに慣れるのは難しくありたせん。

別の空垭に぀いお考えおみたしょう。

  1. 高負荷システムの構築経隓。
  2. Linux OS、䞀般的なシステム ゜フトりェア、Web スタック (Nginx、PHP/Python、HAProxy、MySQL/PostgreSQL、Memcached、Redis、RabbitMQ、ELK) に関する優れた知識。
  3. 仮想化システム (KVM、VMWare、LXC/Docker) の経隓。
  4. スクリプト蚀語の熟緎床。
  5. ネットワヌクプロトコルネットワヌクの動䜜原理を理解する。
  6. フォヌルトトレラントなシステム構築の原則を理解する。
  7. 独立性ず自発性。

を芋ようよ

  • 1 – 䞊玚システム管理者
  • 2 - このスタックに蟌められた意味に応じお - 侭箚/䞊玚システム管理者
  • 3 - 職務経隓 (以䞋を含む) を意味する堎合がありたす - 「クラスタヌは起動したせんでしたが、仮想マシンを䜜成しお管理したした。Docker ホストは XNUMX ぀あり、コンテナヌぞのアクセスは利甚できたせんでした。」 - 䞭間システム管理者
  • 4 - ゞュニア システム管理者 - はい、蚀語に関係なく、基本的な自動化スクリプトの䜜成方法を知らない管理者であり、管理者 - enikey ではありたせん。
  • 5 - 䞭間システム管理者
  • 6 – 䞊玚システム管理者

芁玄 - 侭箚/䞊玚システム管理者

もう䞀぀:

  1. Devops の経隓。
  2. XNUMX ぀以䞊の補品を䜿甚しお CI/CD プロセスを䜜成した経隓。 Gitlab CI は利点になりたす。
  3. コンテナず仮想化の操䜜。 docker を䜿甚した堎合は問題ありたせんが、k8s を䜿甚した堎合は問題ありたせん。
  4. アゞャむルチヌムで働いた経隓。
  5. あらゆるプログラミング蚀語の知識。

様子を芋よう

  • 1 - うヌん...どういう意味ですか? =) おそらく圌ら自身も、その背埌に䜕が隠されおいるかを知りたせん。
  • 2 - ビルド゚ンゞニア
  • 3 - 䞭間システム管理者
  • 4 - ゜フト スキル。アゞャむルも郜合の良いように解釈されるものですが、今は考慮したせん。
  • 5 - 冗長すぎる - スクリプト蚀語たたはコンパむル蚀語である可胜性がありたす。 孊校でPascalやBasicで曞くのは合うのかな =)

たた、システム管理者がなぜこの点をカバヌするのかに぀いおの理解を匷化するために、点 3 に぀いおメモを残したいず思いたす。 Kubernetes は単なるオヌケストレヌションであり、ネットワヌク ドラむバヌず仮想化/分離ホストぞの盎接コマンドをいく぀かのコマンドでラップし、それらずの通信を抜象化できるようにするツヌルです。それだけです。 たずえば、「フレヌムワヌクの構築」Make を考えおみたしょう。ちなみに、私はこれをフレヌムワヌクずは考えおいたせん。 はい、私は Make を必芁なずころずそうでないずころに抌し蟌むずいう流行に぀いお知っおいたす。たずえば、Maven を Make でラップするなど、真剣に考えたすか?
基本的に、Make はシェルの単なるラッパヌであり、k8s ず同様に、コンパむル、リンク、およびコンパむル環境コマンドを簡玠化したす。

以前、OpenStack 䞊の䜜業で k8s を䜿甚しおいる人にむンタビュヌしたこずがありたす。圌は、その䞊にサヌビスをどのようにデプロむしたかに぀いお話しおいたした。しかし、OpenStack に぀いお尋ねるず、OpenStack はシステムによっお生成されるだけでなく、管理されおいるこずが刀明したした。管理者。 OpenStack をむンストヌルした人は、䜿甚しおいるプラ​​ットフォヌムに関係なく、k8s を䜿甚できないず本圓に思いたすか? =)
この応募者は実際には DevOps ではなく、システム管理者であり、より正確には Kubernetes 管理者です。

もう䞀床芁玄しおみたしょう - 侭箚/䞊玚システム管理者であれば十分です。

重さは䜕グラムですか

衚瀺されおいる欠員に察する提案絊䞎の範囲は 90  200 です。
ここで、システム管理者ず DevOps ゚ンゞニアの金銭的報酬を比范しおみたいず思いたす。

原則ずしお、物事を単玔化するために、職務経隓に基づいお成瞟を分散できたすが、これは正確ではありたせんが、この蚘事の目的では十分です。

経隓

  1. 3歳たで - ゞュニア
  2. 6歳たで – 幎䞭
  3. 6歳以䞊 - シニア

埓業員怜玢サむトでは次のこずが提䟛されたす。
システム管理者:

  1. ゞュニア - 2 幎 - 50k こすりたす。
  2. 䞭幎 - 5幎 - 70䞇摩擊。
  3. シニア - 11 æ­³ - 100k 摩擊。

DevOps ゚ンゞニア:

  1. ゞュニア - 2 幎 - 100k こすりたす。
  2. 䞭幎 - 3幎 - 160k摩擊。
  3. シニア - 6 æ­³ - 220k 摩擊。

「DevOps」の経隓によれば、少なくずも䜕らかの圢で SDLC に圱響を䞎える経隓が䜿甚されたした。

䞊蚘のこずから、実際には䌁業は DevOps を必芁ずせず、管理者を雇甚するこずで圓初蚈画したコストの少なくずも 50% を節玄でき、さらに、求める人材の責任をより明確に定矩できるこずがわかりたす。そしおニヌズをより早く満たしたす。 たた、責任を明確に分割するこずで、人材の芁件を軜枛できるだけでなく、重耇がないためチヌム内により奜たしい雰囲気を䜜り出すこずができるこずも忘れおはなりたせん。 求人の倧倚数はナヌティリティや DevOps のラベルでいっぱいですが、それらは DevOps ゚ンゞニアの実際の芁件に基づいおおらず、ツヌル管理者に察する芁求のみに基づいおいたす。

DevOps ゚ンゞニアのトレヌニング プロセスも、特定の䜜業やナヌティリティのセットにのみ限定されおおり、プロセスずその䟝存関係に぀いおの䞀般的な理解を提䟛したせん。 Terraform を䜿甚し、このクラスタヌの Fluentd サむドカヌずロギング システムの AWS ELK スタックを組み合わせお、コン゜ヌルで 10 ぀のコマンドを䜿甚するだけで XNUMX 分で AWS EKS をデプロむできるのは確かに良いこずですが、コン゜ヌルで XNUMX ぀のコマンドを䜿甚するだけで枈みたす。ログの凊理自䜓の原則ず、ログが䜕に必芁であるか、ログに関するメトリクスを収集しおサヌビスの䜎䞋を远跡する方法が分からない堎合、ナヌティリティの䜿甚方法を知っおいるのは䟝然ずしお同じ暗号になりたす。

しかし、需芁が䟛絊を生み出すため、DevOps ポゞションの垂堎は非垞に過熱しおおり、芁件が実際の圹割に察応しおいないにもかかわらず、システム管理者がより倚くの収入を埗られるだけになっおいたす。

それで、圌らは誰ですか DevOps ですか、それずも貪欲なシステム管理者ですか? =)

さらに生きる方法は

雇甚䞻は芁件をより正確に策定し、レッテルを貌り付けるのではなく、必芁ずされる人材を正確に探す必芁がありたす。 DevOps が䜕をするのか知りたせん。その堎合、DevOps は必芁ありたせん。

劎働者 - 孊びたしょう。 垞に知識を向䞊させ、プロセスの党䜓像を把握し、目暙ぞの道筋をたどりたす。 あなたはなりたい人になれる、ただ努力するだけです。

出所 habr.com

コメントを远加したす