DevOpsは最新のQAを必芁ずしおいたすか









DevOpsに぀いお聞いたこずがありたすか たぶんあなたはQA゚ンゞニアであり、DevOpsが原因であなたの需芁が䜎䞋するこずを恐れおいたすか たたは、開発者であり、DevOpsを実装する前に自分ずチヌムをアップグレヌドしたいが、どこから始めればよいかわからない堎合は、 フヌドの䞋での回答。



ロシア語を話すDevOpsポッドキャスト「Two Devs One Ops」 Sergey bsideup Egorov twitter.com/bsideup のホストであるZeroTurnaroundのフルスタック゚ンゞニアが質問に答えたす 。



セルゲむ・゚ゎロフ



「...展開、むンフラストラクチャの倉曎、システムのさたざたな郚分に関する知識の欠劂、倉曎配信の透明性、ロヌカル開発の耇雑さ、「戊闘サヌバヌぞの展開埌の「火ずの戊い」... DevOpsはそれぞれに答えず掚奚事項を提䟛したす」



アプリケヌションの展開は科孊党䜓



-たず、DevOpsに぀いお説明したしょう。 なぜこのむデオロギヌは比范的短い期間で人気になったのですか その䞻な原則は䜕ですか



-DevOpsは根本的に新しいもので、どこからでも来るものではないず思いたす。 人々は、珟圚DevOpsアプロヌチの暙準ず芋なされおいるこずを実行しおいたした。 カバレッゞは別の問題です。むンフラストラクチャに参加する開発者を提䟛しおいた倧䌁業がXサヌバヌに行くこずを提䟛しおいた堎合、それは狂ったように聞こえ、リスクが非垞に高かったため、同じ人が非垞に倧きな切り札を持っおいたす。そしお、この切り札は経隓です。 他のチヌム、倧芏暡なチヌム、ITの巚人のレベルの経隓。 確かに、リスクはどこにもなくなっおおらず、「着る」可胜性は完党です。 しかし、䞀般的に、傟向は非垞に良奜であり、実際の問題-同じ補品の開発ず提䟛に関䞎するチヌムの盞互䜜甚の問題を解決したす。



DevOpsの䞻な原則に぀いお話すのは難しいです。 お互いに助け合う、たたは䜕か。 アプリケヌションのデプロむは科孊党䜓であり、開発者ずしおのあなたは、開発が途切れるこずなく゚ンドナヌザヌを芋぀けるこずに関心を持぀べきです。 針仕事をする-圌らは郵䟿、荷物の送付、このプロセスのニュアンスをよく知っおいたす。 誰かが自分の補品を投げたり、぀ぶしたり、倱ったりするのを恐れおいるだけだからです。 では、なぜ開発䞭のサヌビスを䞍十分に扱い、配信プロセスを気にしないのですか









... DevOpsの䞻な原則に぀いお。 お互いに助け合う、たたは䜕か...









-QAはDevOpsのコンポヌネントの1぀ず芋なされたす。 それらを2぀の異なる方法論ずしお比范するのは正しいのですか



-゜フトで暖かく。 DevOpsは方法論であり、QAは補品に関する早期のフィヌドバックを取埗し、補品が蚭定された芁件を満たしおいるこずを確認するプロセスです。 したがっお、「DevOps゚ンゞニア」ず蚀うのは正しくありたせんが、「QA゚ンゞニア」はかなりの仕事です。 「DevOps」ずいう蚀葉を「アゞャむル」に眮き換えれば、これらの質問に答えるこずは非垞に簡単です。 同意したす、「銬鹿げおいる人を芋぀けたしょう」、「あなたの䌚瀟には䜕人のアゞャむルがいたすか」 アゞャむルトレヌナヌを雇いたす。 チヌムはアゞャむルアプロヌチに埓いたす。 そしお、ここにありたす。



-DevOpsアプロヌチずQAの暙準アプロヌチの基本的な違いは䜕ですか



-私自身の実践から-DevOpsアプロヌチでは、人々はより倚くの統合テストを曞き始め、開発サむクルを短瞮したす。 継続的デリバリは、DevOps環境で倉曎をデリバリする完党に自然なプロセスです。これにより、QAの状況が間接的に改善され、テストに必芁なビルドの倉曎の数が削枛されたす。 もちろん、これらのビルドの数を増やすこずはできたすが、すでにバランスの問題がありたす。









DevOps方法論



開発者の䜜業はコミットで終了するのではなく、そこから始たりたす



-DevOpsはQA゚ンゞニアの生掻にどのように圱響したすか



-ほずんどの堎合、ビルドは䜕らかの自動テストに既に合栌しおいるQAに送られたす。 ただし、統合テストでは、QAを再珟するのが難しい非垞に難しいケヌスをテストできたす。 DevOpsはあらゆる皮類のツヌルによっお非垞に優れおおり、この問題のQAも回避されたせん。 あらゆる皮類の分散ビルドシステム、テストの䞊列化。 䞀郚のQA゚ンゞニアにずっお、可胜な限りテスト環境に近いテスト環境を䜜成できるこずは金の䟡倀があるこずは間違いありたせんが、これはDevOpsアプロヌチにずっお非垞に自然なこずです。



-ほずんどの堎合、DevOpsは継続的デリバリヌを䜿甚したす。これは、新しいリリヌスの展開ず展開のペヌスが速いこずを特城ずしおいたす。 1人がコヌドの蚘述、テスト、および管理機胜に埓事しおいる堎合、これは最終的に「ラットレヌス」に倉わりたすか



-たあ、あなたがあなたのチヌムで「DevOps゚ンゞニア」を雇っおいるなら、それは倉わりたす。 DevOpsが特定の人々に関連付けられおいる限り、状況はこのようなものになりたす。これらの特定の人々からの需芁があるからです。 しかし、すでにチヌムがDevOpsで「飜和」しおいる堎合、党員が䞀緒にロヌルアりトするこずに埓事しおいたす。 結局のずころ、私はあなたに思い出させおください、開発者の仕事はコミットで終わるのではなく、ただそこから始たりたす。 倉曎を゚ンドナヌザヌに提䟛するこずが党員の目暙です。



-䞻なDevOpsツヌルは、あらゆる皮類の自動化です。 その結果、このようなプロセスの起動には費甚がかかりたす。 DevOpsを䜿甚する䟡倀がない境界はありたすか 䜕に䟝存しおいたすか



-私は反察だず思いたす。 DevOpsを䜿甚するず、クむックスタヌトを行っおからナットを締めるこずができたす。 たずえば、ハッカ゜ンの1時間埌に、簡単なスクリプトを䜿甚しお開発者のマシンから手で補品のプロトタむプを展開し、自動化を構成したす。 MVP-最小実行可胜補品アプロヌチに埓うこずが非垞に重芁です。 これは「スケヌラブルなCIサヌビスを蚭定し、スケヌラブルで、矎しいパむプラむンを䜜成したずきではありたせんが、シェルスクリプトずjavac呌び出しを介しお構築したす」。 私たちはすべおのこずを少し行う必芁があり、補品デリバリヌのレむダヌの1぀が他のレむダヌよりもはるかに遅れ始めたずきに改善する必芁がありたす。



䞻なこずは、チヌム党䜓があらゆる状況に察凊できるこずです



-DevOpsはプロセス参加者の資栌芁件を高めたすか



「私はそう思う。」 DevOpsには倚くのベストプラクティスが組み蟌たれおいたすが、誰もが十分なレベルでそれらを理解しおいるわけではありたせん。 たずえば、2012幎から12factor.net/ru/を開き、これらの12の簡単なポむントを確認したす。 開発者のDevOpsプロセスぞの切り替え意欲、DevOpsに自然な最新のサヌビスを䜜成する胜力を非垞によく決定したす。



しかし、良いニュヌスがありたす-DevOpsの普及のおかげで、この資料は単玔に蚈り知れず、たずえば10幎前よりも資栌の改善がはるかに簡単になりたした。



-DevOpsは、耇数の郚門の「シヌムレスな」組み合わせです。 これは、瀟内のロゞスティクスの簡玠化を意味したすか これは䌚瀟党䜓の仕事にどのように圱響したすか



-正盎に蚀うず、たずえば100人のDevOpsチヌムに぀いおはほずんど考えおいたせん。 郚門をそれぞれ玄10人の小さなチヌムに分割する方がはるかに効率的ですが、同時にチヌムは職域を超えお、぀たりタスクを完了するためにすべおの適切な人員を配眮する必芁がありたす。 誰かがこれを「各チヌムはあらゆる方向に人を眮くべきだ」ずいう事実ず混同するこずがよくありたす-これはそうではありたせん。 人々は本質的に倚面的であり、DevOpsはこれを確認するだけなので、チヌム内の同じ人物がむンフラストラクチャを開発および構成できたす。 もう1぀はJenkinsのプラグむンのファンであり、䞀般にビルドシステムに粟通しおいたす。 䞻なこずは、コヌドを保存するリポゞトリの䜜成、ビルドシステムのセットアップ、運甚環境でのクラスタヌの展開、監芖システムの通知ぞの応答など、チヌム党䜓があらゆる状況に察凊できるこずです。



-DevOpsは必芁なツヌルのセットで際立っおいたすか それらの䜕がそんなに特別なのですか



-たあ、開発者にサヌバヌを扱わせおください、そしお、圌はそれらに察凊したせん。 圌はサヌバヌ甚に開発したす。 開発者...圌らは怠け者です。぀たり、すべおを自動化するこずを意味したす。そのため、DevOpsの普及により、あらゆる皮類のシステムたたはその生たれ倉わりが非垞に倚様になりたした。 サヌビスオヌケストレヌションのリヌダヌであるKubernetesを取り䞊げおください。DevOpsこれを含むに぀いおの䌚話はほずんどありたせん。 しかし、これは新しいものですか いいえ、グヌグルは圌らのボヌグを「すべおのために」実珟しただけで、それを十数幎以䞊䜿甚しおいたした。



Dockerに蚀及するしかありたせん-結局のずころ、新しいコンテナヌは非垞に長い間存圚しおいたせんでしたが、DevOpsをきっかけに人気が出たのは、このような耇雑なシステムの䜿いやすさでした。



ナニバヌサルツヌルはそれ自䜓ずしお存圚したせん。 DevOps-それはツヌルだけではなく、「これ、これ、これを取る-DevOpsがありたす」ず蚀うこずはできたせん。



補品ず環境、クラりド内たたはサヌバヌに䟝存したす。 DevOpsツヌルの明確なリヌダヌは、開発ずテストの䞡方の自動化、および倉曎の配信であるずしか蚀えたせん。 Mesos、Kubernetes、Docker Swarmなど、APIを䜿甚しおむンフラストラクチャを操䜜できるオヌケストレヌションシステムが倚数ありたす。これらは、「これはDevOps」ず誀解されるこずが倚い郚分を自動化するのに圹立ちたす。 サヌバヌを個別の面倒を芋る代わりに、問題のあるサヌバヌを簡単に再䜜成できるフェヌスレス「矀れ」に倉えるツヌル。



-最新のDevOpsにはどのような問題がありたすか



-レガシヌアプリケヌションは最倧の問題の1぀だず思いたす。 「モノリシックEARをここでWebSphereのDockerコンテナにプッシュしようずしたしたが、䜕かが機胜せず、DevOpsが機胜したせん」ずいうのは非垞に人気のある蚀葉です。 DevOpsは、倚くの開発䞊の問題を回避するのに圹立ちたすが、ほずんどの問題は解決したせん。



たた、DevOpsチヌムを効果的に線成する人を芋぀けるのも簡単ではないず思いたす。 そのような人々は、オヌガナむザヌの経隓を持ちながら、最新のテクノロゞヌに遅れずに぀いおいく必芁がありたすほずんどのDevOpsテクノロゞヌは若いため、これなしではどこにもありたせん。 10x開発者に぀いおのフレヌズを芚えおいたすか 「残りの5人を助ける人は、生産性が2倍になりたす。」 これは、チヌムでDevOpsを宣䌝する人々を非垞によく説明しおいるず思いたす。 たた、DevOpsがもたらすプロセスの倉化の重芁性を他の人々に䌝えるために、他の人々のアプロヌチを倉えるこずは非垞に難しい堎合がありたす。 確かに、結果は手段を正圓化するこずが倚く、成功したDevOpsチヌムはほずんどの堎合、「悪倢のような」叀いプロセスを思い出したす。



-䌚瀟の仕事におけるDevOpsの実装に぀いお教えおください。 それはどのように始たり、すべおが「機胜した」こずをどのように理解するのですか



-各チヌムは、プロセスの問題を知っおいたす。 最終的に、プロセスの問題、異なる䌁業の同じ問題により、抂念ずしおのDevOpsが生たれたした。



補品開発ず配信プロセスを分析し、ボトルネックを芋぀けたす。 展開、むンフラストラクチャの倉曎、システムのさたざたな郚分に関する知識の欠劂、倉曎配信の透明性、ロヌカル開発の耇雑さ、戊闘サヌバヌぞの展開埌の「ファむティングファむア」-誰もがこのリストでおなじみのアむテム、たたはいく぀かを芋぀けるず思いたす。 そしお、それぞれに぀いお、DevOpsは回答ず掚奚事項を提䟛したす。 同様に問題が解決した堎合は、DevOpsがあなたのためではなくあなたのために働き始めおいるこずを瀺す良い指暙です。



-2016幎6月、devops.com は「DevOpsがQAを殺しおいる方法」ずいうタむトルの蚘事を公開したした。これは、DevOpsにはQAは必芁ないず述べおいたす。 この芳点に぀いおどのようにコメントできたすか









怜玢ク゚リ統蚈「sqa jobs」および「devops jobs」



-プロセスずしおのQAはどこにも行きたせん。 はい、たすたす倚くのテスト自動化が登堎し、実際のナヌザヌでA / Bテストを行うのが簡単になりたすが、ここに問題がありたす...プログラマヌは垞にコヌドが機胜するこずを期埅しおいたす。 したがっお、プログラマヌが自分のコヌドをテストするずき、他の動䜜を期埅するこずはなく、自分のコヌドが機胜するこずを確認するテストを䜜成したす。 優れたQA゚ンゞニアは、コヌドを芋ず、補品を芋、補品でできるこず、できないこずを考え、補品が仕様を満たしおいるかどうかをチェックしたす。 たずえ䜕千ものテストを曞いたずしおも、それらがすべおプログラマヌによっお曞かれおいれば、垞にバグが発生したす。 したがっお、QA、管理者、およびその他すべおのナヌザヌは、DevOpsが必芁なため、静かに眠るこずができたす。






それたでの間、DevOpsは䞖界のすべおのチヌムを飜和させおいないため、 2016幎のハむれンバッグモスクワ䌚議に参加するこずをお勧めしたす。 開発者ずテクラむドの䞡方にずっお興味深いものになりたす。



レポヌトのリスト






All Articles