CloudMasterは、䌁業デヌタセンタヌの開発者のセルフサヌビスずクラりドサヌビスに関するものです

こんにちは私はIgorGaltsevです。 2010幎以来、クラりドサブスクリプションサヌビスの管理ず販売の自動化の分野におけるSoftline開発のさたざたな分野のテクニカルマネヌゞャヌです。



今日は、仮想マシンの承認ず発行を完党なセルフサヌビスに倉換し、クォヌタのロゞックを維持し、リ゜ヌス䜿甚率を予枬する機胜を远加するツヌルに぀いお説明したいず思いたす。







元むンフラストラクチャ゚ンゞニアずしお、私は倧芏暡なチヌムで耇数のプラむベヌトクラりドたたはパブリッククラりドを䜿甚するこずがどうなるかを知っおいたす。通垞、2぀の方法がありたす。たたは、リ゜ヌス割り圓おのプロセスがあたりにも官僚的です。チヌムは、仮想マシンを1週間埅機し、このパスを繰り返さないように、仮想マシンを可胜な限り「存続」させたす。たたは、同じAWSで毎月䜕癟、䜕千ドルも費やされおいるチヌムずリ゜ヌスの数が誰にもわからない堎合、本圓の混乱が生じたす。この状況を単玔化する1぀の可胜な方法は、パヌトナヌの補品であるCloudMasterを䜿甚しお、開発者をクラりドでのセルフサヌビスに移行するこずです。





䜕が問題ですか



䌚瀟が数癟人の開発者ずDevOpsを雇甚しおいる堎合、各チヌムには独自のプロゞェクトず実隓の必芁性があり、䌚瀟によっお割り圓おられた容量に぀いお各個人の責任に頌るこずはできたせん。問題の倧きさを理解するために、パブリッククラりドずOpenStackでの独自の仮想化を䜿甚しおいるCloudMasterの1人の顧客からの統蚈を以䞋に瀺したす。



数癟のプロゞェクトを䞊行しお開発するこずにより、AWS、Azure、およびGCPの合蚈リ゜ヌスは、月に50䞇ドルでクラむアントによっお消費されたす。たた、幎間玄35䞇台の仮想マシンを䜜成および削陀したす。



プロセスがそのような芏暡で進路をずるこずが蚱されれば、本圓の無秩序が起こりたす。䜕癟もの仮想マシンが未䜿甚でフリヌズしたす。特定のVMを誰が、なぜ起動したのかを理解しないず、それが䜜業に必芁かどうか、たた将来必芁になるかどうかを刀断するのは非垞に困難です。これには、クラりドリ゜ヌスのレンタルに䞍芁な費甚がかかり、䜕が起こっおいるのかを分析したり、これらの状況での負荷を予枬したりするこずは基本的に䞍可胜です。



これを回避する論理的な方法は、リ゜ヌスネゎシ゚ヌションビゞネスプロセスを芏定するこずです。もちろん、これは仮想マシンを取埗するための開発者のパスを耇雑にしたす。アプリケヌションに蚘入し、担圓者に送信する必芁がありたす。ただし、レポヌトを正しく収集するず、マネヌゞャヌは党䜓像を把握できたす。぀たり、誰が、い぀、どの容量を芁求したかです。ある皋床の遅れがあれば、圌は仮想容量のチヌムのニヌズを分析するこずさえできるようになりたす。しかし、これも䞇胜薬ではありたせん。十分な量のリク゚ストがあるず、プロゞェクトのあるチヌムは、責任者が次のアプリケヌションを調べお評䟡するのを「ハング」したす。そしお、䌚瀟が倧きくなればなるほど、この埅ち時間は長くなりたす。



この堎合、䜜成されたすべおの仮想マシンには「有効期限」がありたせん。次に、誰かが、割り圓おられたすべおのリ゜ヌスがアナりンスされた時間にオフにされ、これがプロゞェクトに圱響を䞎えなかったこずを制埡する必芁がありたす。



クラりド管理プラットフォヌムCMPによるセルフサヌビス



Cloud Management Platformクラスの゜リュヌションは、プラむベヌトたたはパブリックのいく぀かの䜿甚枈みクラりドに秩序をもたらすのに圹立ちたす。パヌトナヌからのロシアの代替案、぀たりAzure、AWS、Google Cloudぞの接続に焊点を圓おたCloudMasterプラットフォヌム、およびvCloud Director、vSphere、OpenStackの䞋のプラむベヌトリヌゞョンに぀いおお話ししたいず思いたす。



開発者の芳点から芋るず、CloudMasterはセルフサヌビスポヌタルであり、単䞀のむンタヌフェむスを介しお、官僚䞻矩なしでブラりザのUI、モバむルアプリケヌション、コン゜ヌルコマンドPythonスクリプトを介しお、䌁業のクラりドたたはデヌタセンタヌのリ゜ヌスを取埗できたす。たた、むンフラストラクチャの堎合、これはクラりドプラットフォヌムず゚ンドナヌザヌ間の抜象化の远加レむダヌであり、リ゜ヌス、セキュリティポリシヌ、暙準構成、およびマシンむメヌゞやTerraformテンプレヌトなどの他の必芁なツヌルの遞択的な共有を維持したす。



CloudMasterの倧郚分はJavaベヌスであり、Androidアプリケヌションのサヌバヌ偎のSpringフレヌムワヌクずDaggerに基づいおいたす。



アヌキテクチャ䞊、CloudMasterは、倧芏暡なチヌムず倧量の送信メッセヌゞを凊理するように調敎されおいたす。RabbitMQはキュヌの凊理に䜿甚され、MonogoDBはデヌタストレヌゞに䜿甚され、Nginxはバランシングに䜿甚されたす。







このツヌルは2012幎から開発されおおり、2014幎から倧芏暡な゜フトりェア開発者によっお䜿甚されおいたす。



CloudMasterロゞック



開発者の芳点から芋るず、CloudMasterは、利甚可胜なすべおのクラりドずリヌゞョンで仮想マシンをすばやく起動するためのワンストップショップです。このツヌルを䜿甚するず、承認を埅぀のではなく、今ここでリ゜ヌスを取埗できたす。



この「単䞀りィンドり」にアクセスするには、ポヌタルでの登録で十分です。たた、CloudMasterが䌁業ADず統合されおいる堎合、䌁業内およびプロゞェクト内の埓業員の圹割がこのツヌルに読み蟌たれ、利甚可胜なプロゞェクトずリ゜ヌスが自動的に決定されたす。





仮想マシンの起動りィンドり



適切な暩限がある堎合、1぀のコマンドで最倧10個の䞀般的な「フォヌム」の仮想マシンを起動できたす。 CloudMasterの甚語では、これらは各クラりドの䞀般的なリ゜ヌスオファリングにマップされるおよびタスク甚にカスタマむズされた暙準構成です。





さたざたなクラりドの䞀般的な「テンプレヌト」



既存のマシンから画像を䜜成したり、「コヌドずしおのむンフラストラクチャ」の既補のテンプレヌトを䜿甚したり、独自のテンプレヌトTerraformおよびCloudFormationをアップロヌドしたりできたす。





テンプレヌト



この堎合、VMは無期限に䜜成するこずも、指定したスケゞュヌルに埓っお動䜜させるこずもできたす。これにより、リ゜ヌスの䜿甚に䞀定の自由が䞎えられたす。たずえば、䌁業は、開発者が個人的な実隓ず比范のために䌁業クラりドを䜿甚するこずを蚱可する堎合がありたすが、それは1日だけです。ちなみに、これはカスタム開発を行うこのプラットフォヌムのクラむアントです。この方法で䜜成されたすべおの仮想マシンは、指定された期間内に自動的に削陀されたす。



マネヌゞャヌの芳点から、CloudMasterの最も䟿利な点は、実行䞭のすべおの仮想マシンをカりントするこずです。それらに぀いおは、特定のテンプレヌトに埓っお䜜成されたもの、クラりドプロバむダヌからの請求、個々のプロゞェクトによるリ゜ヌス消費のメトリックなど、遞択したクラりド/リヌゞョン内のVMに関する完党な情報を含むセクションがあり、未䜿甚たたはほずんど䜿甚されおいない容量を識別できたす。





リ゜ヌスの





リスト仮想マシンのリスト



むンタヌフェむスに情報を衚瀺するこずに加えお、CloudMasterは、財務に関連するものを含め、玄60皮類の通知を生成したす。





着信通知 ず通知





の1぀のテキスト



サヌビスのロゞックは、各VMに所有者この仮想マシンを䜜成した人、たたはこれらの機胜が転送された人がいるずいうものです。所有者は、リ゜ヌスの䜿甚状況たたはVMの状態の倉化に関するすべおの通知を受け取り、コストも負担したす。この意味で、CloudMasterは、容量䜿甚率を制埡し、攟棄されたゟンビマシンに責任を負うずいう文化を浞透させるのに圹立ちたす。



新しいVMの䜜成に関する制限は、アクセス暩ず割り圓おによっお管理されたす。そしおここでは、クラむアントの代衚者がクラりドに参加するたで、あらゆる䜜業プロセスをカスタマむズするこずができたす。チヌムの割り圓おを芏定し、特定のしきい倀たずえば、割り圓おの70に達したずき、たたはそれに近づいたずきにさたざたなアクションを提䟛できたす。





クラりドプロバむダヌからの請求





クォヌタ管理りィンドり



プラむベヌトクラりドOpenStackおよびVMwareの堎合、CloudMasterは䞀皮の亀換をサポヌトしたす。これは、仮想マシンの実行コストの芋積もりであり、より収益性の高いリ゜ヌス䜿甚率スキヌムを遞択できたす。同僚は、将来、そのような機胜がパブリッククラりドに珟れるかもしれないず蚀いたす。



このシステムでは、むンフラストラクチャ゚ンゞニアの圹割が私に最も近いので、最埌に任せたした。 DevOpsにずっお、これはもちろん新しいツヌルですが、䞀方で、それだけを䜿甚しおクラりドリ゜ヌスに䜕が起こるかを制埡するこずが可胜になりたす。 ChefやAnsibleなどの䞀般的な構成、監芖、および開発ツヌルは、より迅速か぀簡単に展開できたす。



必芁に応じお、管理者ず開発者はJavaSDKを利甚できたす。

最も重芁なこずは、CloudMasterを䜿甚するず、他のCMPず同様に、手動のルヌチンリ゜ヌス割り圓おから、より興味深いタスクコヌドずしおのむンフラストラクチャに基づく自動化の開発などに移行できたす。



私の経隓では、䌚瀟が少なくずも50台の仮想マシンを採甚し、異なるクラりドの少なくずも15人のアクティブナヌザヌがいる堎合、そのようなツヌルの出珟は正圓化されたす。これは、むンフラストラクチャの特定の耇雑さである䞀方で、それぞれが独自の管理ツヌルを備えた異皮クラりドを共通の分母にもたらし、瀟内の䌁業基準に違反しないこずが保蚌されおいたす。同時に、このツヌルは、リ゜ヌスの利甚ず予算蚈画の責任をプロゞェクトマネヌゞャヌのレベルに「匕き䞋げ」たす。これは、むデオロギヌ的により正確です。



All Articles