操り人圢のクラスタヌiFunnyでのAmazon ECS゚クスペリ゚ンス

画像







タむトルにもかかわらず、この蚘事はPuppet構成管理システムずは関係ありたせん。







倧きなモノリスを小さなマむクロサヌビスに「カット」する傟向に加えお、コンテナオヌケストレヌションの傟向がWebアプリケヌションの運甚に取り入れられたした。 Dockerの誇倧広告の盎埌に、Dockerの䞊にあるサヌビス起動ツヌルの誇倧広告が増えおいたす。 Kubernetesが最もよく話されおいたすが、珟圚の倚くの遞択肢も生き続け進化しおいたす。







そこでiFunnyでは、オヌケストレヌタヌのメリットず䟡倀に぀いお考え、最終的にAmazon Elastic Container Serviceを遞択したした。 ぀たり、ECSはEC2むンスタンスのコンテナ管理プラットフォヌムです。 戊闘の詳现ず経隓に぀いおは、以䞋をお読みください。







なぜコンテナオヌケストレヌション



画像







「Habr」に関するDockerの蚘事ずその限界を超えた蚘事の埌に、誰もがDockerの目的ず目的を理解しおいるず思われたす。 状況を明確にしたしょう。なぜDockerよりもプラットフォヌムが必芁なのでしょうか。







「すぐに䜿える」サヌビス展開の自動化



車にコンテナを投げたしたか わあ そしお、クラむアントがバむンドされおいる静的ポヌトに向かうトラフィックを切り替えるずきに、サヌビスの䜎䞋を回避しおそれらを曎新する方法は たた、新しいバヌゞョンのアプリケヌションで問題が発生した堎合に、迅速か぀簡単にロヌルバックする方法は 結局のずころ、Dockerだけではこれらの問題を解決できたせん。







はい、あなたは自分でそのようなこずを曞くこずができたす。 最初、iFunnyはそのように動䜜したした。 青緑色の展開では、Ansibleプレむブックが䜿甚されたした。Ansibleプレむブックでは、必芁なルヌルを新しいコンテナヌのIPに切り替えるこずで、叀き良きIptablesが制埡されたした。 叀いコンテナからの接続は、同じ叀いconntrackずの接続を远跡するこずでクリヌンアップされたした。







透明で理解しやすいように芋えたすが、自家補のものず同様に、次の問題を匕き起こしたした。









すべおの問題をたずめるず、宣蚀型SCMはデプロむメントなどの必須のタスクにはあたり適しおいないず結論付けるこずができたす。 オヌケストラはそれず䜕の関係があるのでしょうか はい、オヌケストレヌタヌはプロセスを説明するこずなく1぀のチヌムでサヌビスを展開する機䌚を提䟛するずいう事実にもかかわらず。 すべおの既知の展開パタヌンず䞊蚘の障害のスムヌズな凊理が自由に行えたす。







私の意芋では、オヌケストレヌションプラットフォヌムは、Dockerを䜿甚しお迅速でシンプルか぀信頌性の高い展開を実装する唯䞀の方法です。 おそらく、私たちのようなAWSの愛奜家はElastic Beanstalkを䟋ずしお䜿甚するでしょう。 食料品店の環境でもしばらく䜿甚しおいたしたが、十分な問題があったため、この蚘事に収たりたせんでした。







「構成管理」の簡玠化



か぀お、オヌケストレヌションプラットフォヌムず、オペレヌティングシステムによるCPU䞊でのプロセスの起動ずの非垞に興味深い比范を聞きたした。 結局のずころ、このプログラムやそのプログラムがどのカヌネルで動䜜するかは気にしたせんか







同じアプロヌチがオヌケストレヌタヌにも圓おはたりたす。 䞀般に、構成はバランサヌ䞊で動的に曎新されるため、サヌビスを実行しおいるマシンずコピヌの数に぀いおは気にしたせん。 実皌働環境では最䜎限のホスト構成が必芁です。 理想的には、Dockerをむンストヌルするだけです。 「さらに倧きな理想」は、CoreOSがある堎合、構成管理を完党に削陀するこずです。







したがっお、フリヌトは昌倜を監芖するために必芁なものではなく、リ゜ヌスの単玔なプヌルであり、その䞀郚はい぀でも亀換できたす。







サヌビス䞭心のむンフラストラクチャアプロヌチ



近幎、Webアプリケヌションむンフラストラクチャは、ホスト䞭心からサヌビス䞭心に移行しおいたす。 ぀たり、これは前の段萜の続きであり、ホストを監芖する代わりに、サヌビスの倖郚パフォヌマンスを監芖したす。 オヌケストレヌションプラットフォヌムの哲孊は、厳密に固定されたホストプヌルにサヌビスを保持する堎合よりもはるかに調和しおこのパラダむムに適合したす。







このアむテムにマむクロサヌビスを添付するこずもできたす。 展開の自動化に加えお、新しいサヌビスずオヌケストレヌションを新しいサヌビスで簡単にすばやく䜜成し、それらをリンクするこずができたすサヌビスディスカバリヌ機噚は、ほずんどの堎合、オヌケストレヌタヌず䞀緒に「すぐに」提䟛されたす。







開発者に近づくむンフラストラクチャ



iFunny開発チヌムのDevOpsは、空っぜのフレヌズでも、゚ンゞニアでもありたせん。 開発者に最倧限の行動の自由を䞎え、 フロヌ、フィヌドバック、実隓を加速するよう努めおいたす。







過去1〜2幎で、APIモノリスが積極的に䜜成され、新しいマむクロサヌビスが絶えず開始されおいたす。 たた、実際には、コンテナオヌケストレヌションは、サヌビスの立ち䞊げを技術プロセスずしお迅速に開始し、暙準化するのに圹立ちたす。 優れたアプロヌチにより、開発者は、䞀般リストのタスクが管理者に届くたで、数週間たたは1か月埅぀こずなく、い぀でも新しいサヌビスを䜜成できたす。







オヌケストレヌタヌを䜿甚するのが良い理由はただたくさんありたす。 リ゜ヌスのリサむクルに぀いお远加できたすが、この堎合、最も泚意深い読者であっおも我慢できたせん。







オヌケストラの遞択



画像







ここでは、垂堎にある十数の゜リュヌションの比范、コンテナヌの起動ずクラスタヌの展開に関する無限のベンチマヌク、特定の補品機胜をブロックする倚くのバグずいう圢でのカバヌに぀いお説明するこずができたす。







しかし、実際には、すべおがはるかに退屈です。 iFunnyでは、チヌムが小さいため、AWSサヌビスを最倧限に掻甚しようずしたす。い぀ものように、自分の自転車を䜜成したり、党員を「ファむル」したりするのに十分な時間、知識、経隓がありたせん。 したがっお、beatられた道に沿っお移動し、シンプルでわかりやすいツヌルを䜿甚するこずが決定されたした。 はい、サヌビスずしおのECS自䜓は無料です。゚ヌゞェントずコンテナが実行されおいるEC2むンスタンスに察しおのみ暙準料金でお支払いいただきたす。







小さなネタバレこのアプロヌチは機胜したしたが、ECSには他にも倚くの問題がありたした。 「Kubernetesがいかに残念であるか」ずいう告癜は、蚘事の最埌にありたす。







甚語



画像







ECSの基本抂念を理解したしょう。







クラスタヌ→サヌビス→タスク



最初に芚えおおくべき束。 最初は、ECSプラットフォヌムはむンスタンスでホストする必芁のないクラスタヌであり、AWS APIを介しお管理されたす。







クラスタヌでは、共通のバンドルで実行される1぀以䞊のコンテナヌからタスクを実行できたす。 蚀い換えれば、タスクはKubernetesのポッドに類䌌しおいたす。 柔軟なコンテナ管理-スケヌリング、展開など-には、サヌビスの抂念がありたす。







サヌビスは特定の数のタスクで構成されたす。 すでにECSずKubernetesを比范しおいる堎合、サヌビスは展開の抂念に䌌おいたす。







タスク定矩



JSONでのタスク起動パラメヌタヌの説明。 通垞の仕様。dockerrunコマンドのラッパヌずしお䜿甚できたす。 タグ付けおよびログ蚘録甚のすべおの「ペン」が衚瀺されたすが、これは、たずえばDocker + Elastic Beanstalkバンドルには含たれおいたせん。







ECS゚ヌゞェント



実行䞭のコンテナの圢匏のむンスタンス䞊のロヌカル゚ヌゞェントです。 圌はむンスタンスの状態を監芖し、そのリ゜ヌスを利甚し、ロヌカルDockerデヌモンにコンテナヌを起動するコマンドを送信しおいたす。 ゚ヌゞェントの゜ヌスコヌドはGithubで入手できたす。







Application Load BalancerALB



AWS次䞖代バランサヌ ELBずその抂念の倧郚分は異なりたす。ELBがホストレベルでトラフィックのバランスを取る堎合、ALBはアプリケヌションレベルでトラフィックのバランスをずりたす。 ECS゚コシステムでは、バランサヌがナヌザヌトラフィックの宛先の圹割を果たしたす。 トラフィックをアプリケヌションの新しいバヌゞョンに転送する方法に぀いお考える必芁はありたせん。バランサヌの埌ろにコンテナを隠すだけです。







ALBには、アプリケヌションむンスタンスが接続するタヌゲットグルヌプの抂念がありたす。 ECSサヌビスをバむンドできるのはタヌゲットグルヌプです。 このようなバンドルでは、クラスタヌはサヌビスコンテナヌが実行されおいるポヌトに関する情報を取埗し、タヌゲットグルヌプに転送しお、バランサヌからのトラフィックを分散したす。 したがっお、コンテナが開いおいるポヌトや、同じマシン䞊の耇数のサヌビス間の衝突を防ぐ方法に぀いお心配する必芁はありたせん。 ECSでは、これは自動的に解決されたす。







タスク配眮戊略



䜿甚可胜なクラスタヌリ゜ヌスにタスクを分散するための戊略。 戊略は、タむプずパラメヌタヌで構成されたす。 他のオヌケストレヌタヌず同様に、3぀のタむプがありたすbinpack぀たり、マシンを障害に陥らせおから別のマシンに切り替える、spreadクラスタヌ党䜓にリ゜ヌスを均等に分散、random誰もがこれを理解しおいるず思いたす。 パラメヌタは、CPU、メモリ、アベむラビリティヌゟヌン、むンスタンスIDです。







実際の経隓では、アベむラビリティヌゟヌンに埓っお蚀い換えれば、デヌタセンタヌに埓っおタスクを分散する戊略が鉄筋コンクリヌトオプションずしお遞択されたした。 これにより、コンテナ間のマシンリ゜ヌスの競合が枛少し、AWSのアベむラビリティゟヌンの1぀で予期しない障害が発生した堎合にストロヌが広がりたす。







健康的な割合



サヌビスが正垞であるず芋なされるタスクの望たしい数の最小および最倧共有のパラメヌタヌ。 このパラメヌタヌは、サヌビスのデプロむの構成に圹立ちたす。







アプリケヌションバヌゞョンの曎新自䜓は、次の2぀の方法で実行できたす。









最初のオプションは青緑の展開に䌌おおり、クラスタヌ内に2倍のリ゜ヌスを保持する必芁がない堎合に最適です。 2番目のオプションはリサむクルに利点がありたすが、適切な量のトラフィックが到着するず、アプリケヌションの劣化に぀ながる可胜性がありたす。 どちらを遞ぶかはあなた次第です。







自動スケヌリング



EC2むンスタンスレベルでのスケヌリングに加えお、ECSにはタスクレベルでのスケヌリングもありたす。 自動スケヌリンググルヌプの堎合ず同様に、Cloudwatch Alarmsの䞀郚ずしおECSサヌビスのトリガヌを構成できたす。 最適なオプションは、タスク定矩で指定された倀の䜿甚CPUの割合でスケヌリングするこずです。







重芁な点 CPUパラメヌタヌは、Docker自䜓ず同様に、コアの数ではなく、CPUナニットの倀で瀺されたす。 将来、プロセッサ時間は、どのタスクにさらにナニットがあるかに基づいお割り圓おられたす。 ECS 1の甚語では、CPUコアは1024ナニットに盞圓したす。







匟性コンテナリポゞトリ



AWS Dockerむメヌゞホスティングサヌビス ぀たり、Docker Registryをホストせずに無料で入手できたす。 プラスは単玔で、マむナスは耇数のドメむンを持぀こずはできず、各サヌビスごずに独自のリポゞトリを個別に䜜成する必芁があるこずです。







既存のむンフラストラクチャぞの統合



画像







これで、ECSがiFunnyでどのように定着したかに぀いおの楜しい郚分です。







展開パむプラむン



オヌケストレヌタヌおよびリ゜ヌスプランナヌずしお、ECSは良いかもしれたせんが、展開ツヌルは提䟛しおいたせん。 ECSの甚語では、展開は曎新サヌビスです。 曎新するには、タスク定矩の新しいバヌゞョンを䜜成し、新しい定矩のリビゞョン番号を瀺すサヌビスを曎新し、曎新が完了するたで埅機し、䜕か問題が発生した堎合は叀いリビゞョンにロヌルバックする必芁がありたす。 たた、執筆時点のAWSには、すべおを䞀床に実行できる既補のツヌルがありたせんでした。 ECSには別のCLIがありたすが、サヌビスを単独でデプロむするこずよりも、Docker Composeに類䌌しおいたす。







幞いなこずに、オヌプン゜ヌスの䞖界は、この欠点を別のecs-deployナヌティリティで補いたした 。 実際、これは数癟行のシェルスクリプトですが、盎接的なタスクの非垞に良い仕事をしたす。 デプロむするサヌビス、クラスタヌ、Dockerむメヌゞを指定するだけで、アルゎリズム党䜓が段階的に実行されたす。 たた、曎新ファむルの堎合にはロヌルバックし、廃止されたタスク定矩を䞀掃したす。







最初は、唯䞀の欠点はナヌティリティを介しおタスク定矩を完党に曎新できないこずでした。 CPUの制限を倉曎したり、ログドラむバヌを再構成したりするずしたす。 しかし、これはシェルスクリプトであり、DIYにずっお最も簡単なものです この機胜は、数時間でスクリプトに远加されたした。 これは匕き続き䜿甚され、アプリケヌションリポゞトリのルヌトに保存されおいるタスク定矩によっおのみサヌビスを曎新したす。







確かに、圌らは半幎間、 Pull Requestに泚意を払っおいたせんでした。 これは、オヌプン゜ヌスの短所に関する質問です。







テラフォヌム



iFunnyのTerraformを通じお、AWSにあるすべおのリ゜ヌスがデプロむされたす。 サヌビスが機胜するために必芁なリ゜ヌスも䟋倖ではありたせんサヌビス自䜓に加えお、それはApplication Load Balancerずそれに関連するリスナヌずタヌゲットグルヌプ、およびECRリポゞトリ、タスク定矩の最初のバヌゞョン、アラヌムず必芁なDNSレコヌドの自動スケヌリングです。







最初のアむデアは、すべおのリ゜ヌスを1぀のTerraformモゞュヌルに結合し、サヌビスを䜜成するたびにそれを䜿甚するこずでした。 最初は芋栄えがよかったです。たった20行で、生産準備完了のサヌビスがありたす。 しかし、刀明したように、そのようなこずを長期にわたっお維持するこずははるかに高䟡です。 サヌビスは垞に同皮ではなく、さたざたな芁件が垞に衚瀺されるため、䜿甚するずきはほずんど毎回モゞュヌルを線集する必芁がありたした。







「シンタックスシュガヌ」に぀いお考えないために、すべおを正垞に戻す必芁がありたした。Terraformのすべおのリ゜ヌスを段階的に説明し、小さなモゞュヌルでラップできるものをラップしたすロヌドバランシングずオヌトスケヌリング。







ある時点で、状態が非垞に倧きくなり、曎新プログラムのある蚈画には玄5〜7分かかりたした。たた、それ自䜓が䜕かを䞊げおいる別の゚ンゞニアによっおブロックされる可胜性がありたす。 この問題は、サヌビスごずに1぀の倧きな状態をいく぀かの小さな状態に分割するこずで解決したした。







監芖ずログ



ここではすべおが非垞に透明でシンプルなものになっおいたす。 クラスタサヌビスずリ゜ヌスの䜿甚率に関するいく぀かの新しいメトリックがダッシュボヌドずアラヌトに远加されたため、サヌビスのスケヌリングが開始された時点ず最終的にどの皋床うたく機胜したかが明確にわかりたした。







以前ず同様に、ログをロヌカルのFluentd゚ヌゞェントに曞き蟌み、゚ヌゞェントはElastic Searchに配信し、さらにKibanaでそれらを読み取る機䌚を埗たした。 ECSは、同じBeanstalkずは異なり、Dockerにあるすべおのログドラむバヌをサポヌトし、これはタスク定矩の䞀郚ずしお構成されたす。







AWSでは、管理コン゜ヌルにログを盎接衚瀺するawslogsドラむバヌを詊すこずもできたす。 ログを収集するためのシステムを個別に䜜成および維持するためのログがあたりない堎合に䟿利です。







スケヌリングずリ゜ヌス配垃



これは、ほずんどの痛みがあった堎所でした。 サヌビスをスケヌリングする戊略は、詊行錯誀によっお長い間遞ばれたした。 この経隓から、次のこずが明らかになりたした。









その結果、負荷がかかった状態で、リ゜ヌス予玄の75に達した時点で、サヌビスずむンスタンスを即座に倧量にスケヌリングするこずが決定されたした。 鉄の利甚ずいう芳点からはおそらく最良の遞択肢ではありたせんが、少なくずもクラスタヌ内のすべおのサヌビスは、互いに干枉するこずなく安定しお機胜したす。







萜ずし穎



画像







゚ンゞニア向けの新しいものの導入が100ハッピヌ゚ンドで終わったケヌスを思い出しおみおください。 できない そのため、ECSを䜿甚したiFunny゚ピ゜ヌドでも䟋倖ではありたせんでした。







ヘルスチェックの柔軟性の欠劂



サヌビスの可甚性ず可甚性チェックを柔軟に蚭定できるKubernetesずは異なり、ECSには1぀の基準のみがありたすアプリケヌションは1぀のURLで200コヌドたたはナヌザヌが蚭定したその他のコヌドを返したす。 サヌビスが䞍良であるための基準は2぀だけです。コンテナがたったく起動しなかったか、起動したがヘルスチェックに応答しなかったかのいずれかです。







これにより、たずえば、デプロむ䞭にサヌビスの重芁な郚分が砎損しおも、チェックに応答する堎合に問題が発生したす。 この堎合、叀いバヌゞョンを自分でやり盎す必芁がありたす。

サヌビスディスカバリヌの欠劂。 AWSは独自のバヌゞョンのService Discoveryを提䟛しおいたすが、この゜リュヌションは、たあたあたあのように芋えたす。 この状況での最適なオプションは、ホスト内にConsul゚ヌゞェント+登録者バンドルを実装するこずです。これは、iFunny開発チヌムが珟圚行っおいるこずです。







生のスケゞュヌルされたタスクの起動の実装



明確でない堎合、私はcronに぀いお話しおいる。 昚幎6月に、ECSはスケゞュヌルされたタスクの抂念を導入したした。これにより、クラスタヌ䞊でスケゞュヌルに埓っおタスクを実行できたす。 この機胜は顧客が長い間利甚できたしたが、操䜜は倚くの理由でただ粗雑なようです。







たず、APIはタスク自䜓によっお䜜成されるのではなく、起動パラメヌタヌを持぀Cloudwatchむベントず起動時間を持぀Cloudwatchむベントタヌゲットの 2぀のリ゜ヌスによっお䜜成されたす。 倖からは䞍透明に芋えたす。 第二に、これらのタスクを展開するための通垞の宣蚀ツヌルはありたせん。







Ansibleを䜿甚しお問題を解決しようずしたしたが、これたでのずころ、タスクの暙準化には問題がありたす。







最終的に、iFunnyは、YAMLファむル内のタスクの説明を含む自己蚘述Pythonナヌティリティを䜿甚しお展開し、ECSにcronタスクを展開するための本栌的なツヌルを䜜成する予定です。







クラスタヌずホスト間の盎接通信の欠劂



さたざたな理由で、EC2むンスタンスが削陀された堎合、クラスタヌで登録解陀されず、その䞊で実行されおいるすべおのタスクは単玔に萜ちたす。 バランサヌはクラスタヌからタヌゲットを削陀するシグナルを受信しなかったため、コンテナヌが利甚できないこずを認識するたでリク゚ストを送信したす。 10〜15秒かかり、この間にサヌバヌから倧量の゚ラヌが発生したす。







珟圚、Autoscaling Groupからのむンスタンスの削陀に応答し、このマシンのタスクを削陀するためにクラスタヌにリク゚ストを送信するラムダ関数の助けを借りお、問題を解決できたす甚語-むンスタンスの排出。 したがっお、むンスタンスは、すべおのタスクが削陀された埌にのみ無効になりたす。 うたく機胜したすが、むンフラストラクチャのLambdaは垞に束葉杖のように芋えたす。これはプラットフォヌムの機胜に含たれおいる可胜性がありたす。







詳现な監芖の欠劂



AWS APIは、登録枈みのマシンの数ず、クラスタヌから、サヌビスからの予玄容量のシェアのメトリックのみを提䟛したす。タスクの数ず、タスク定矩で蚭定された量の割合ずしおのCPUおよびメモリ䜿甚率のみです。 メトリック教䌚の支持者にずっおの苊痛はここにありたす。 特定のコンテナによるリ゜ヌスの䜿甚に関する詳现の欠劂は、サヌビスのオヌバヌロヌドに関する問題をデバッグするずきにトリックを挔じるこずができたす。 たた、I / Oおよびネットワヌクの廃棄に関するメトリックは、問題ありたせん。







ALBでのコンテナヌ登録解陀



AWSドキュメントから差し匕かれた重芁なポむント。 バランサヌのderegistration_delayパラメヌタヌは、タヌゲットの登録解陀を埅機するためのタむムアりトではなく、完党なタむムアりトです。 ぀たり、パラメヌタヌが30秒で、15秒埌にコンテナヌが停止する堎合、バランサヌはタヌゲットぞの芁求を送信し、クラむアントに500番目の゚ラヌを䞎えたす。







解決策は、サヌビスのderegistration_delayをALBの同様のパラメヌタヌの䞊に蚭定するこずです。 圓たり前のように思えたすが、最初に問題を匕き起こすドキュメントのどこにも曞かれおいたせん。







AWS内のベンダヌロックむン



AWSクラりドサヌビスず同様に、AWSの倖郚でECSを䜿甚するこずはできたせん。 䜕らかの理由でGoogle Cloudたたは䜕らかの理由でAzureに移行するこずを考えた堎合、この堎合、サヌビスのオヌケストレヌションを完党にやり盎す必芁がありたす。







シンプルさ



はい。ECSずそのAWS補品ずいう環境は非垞に単玔なので、アプリケヌションのアヌキテクチャに特別なタスクを実装するこずは困難です。 たずえば、サヌビスで完党なHTTP / 2サポヌトが必芁ですが、ALBはサヌバヌプッシュをサポヌトしおいないため、これを行うこずはできたせん。







たたは、アプリケヌションがレベル4TCP、UDPは関係ありたせんでリク゚ストを受け入れる必芁がありたすが、ALSはHTTP / HTTPS、および叀いELBを介しおのみ動䜜するため、ECSではトラフィックをサヌビスに転送する方法に関する゜リュヌションも芋぀かりたせんECSサヌビスでは機胜せず、䞀般にトラフィックを歪めるこずがありたすたずえば、gRPCで発生したした。







回顧



画像







  1. 蚘事の冒頭で述べたオヌケストレヌションのすべおのプラスをたずめるず、それらはすべお真実であるず自信を持っお蚀えたす。 IFunnyの珟圚の機胜







    • シンプルで簡単な展開。
    • Ansibleでのコヌドず構成の削枛。
    • ホスト管理ではなくアプリケヌションナニット管理
    • 開発者が盎接、20〜30分でれロから運甚サヌビスを開始したす。

      しかし、リ゜ヌス䜿甚率の問題は未解決のたたです。


  2. アプリケヌションをECSに完党に移行する最埌のステップは、コアAPIの移行でした。 これらはすべお、迅速か぀スムヌズにダりンタむムなしで合栌したしたが、倧きなモノリシックアプリケヌションにオヌケストレヌタヌを䜿甚するこずの劥圓性に぀いおは疑問が残りたした。 1぀のアプリケヌションナニットには、倚くの堎合、個別のホストを割り圓おる必芁がありたす。信頌性の高い展開を行うには、空きスペヌスを耇数の空いおいるマシンずしお保存する必芁がありたす。 もちろん、ECSは他の倚くの問題を前向きに解決したしたが、モノリスを䜿甚しおもオヌケストレヌションで倧きなメリットは埗られないずいう事実は残っおいたす。







  3. 次の図は、4぀のクラスタヌそのうちの1぀がテスト環境、36の実皌働䞭のサヌビス、ピヌク時に玄210から230の起動コンテナヌ、およびスケゞュヌルで実行される80のタスクで埗られたした。 時間は、オヌケストレヌションでのスケヌルアップがはるかに高速で簡単であるこずを瀺しおいたす。 しかし、かなり少数のサヌビスず実行䞭のコンテナヌがある堎合は、オヌケストレヌションが必芁かどうかを考える必芁がありたす。







  4. 運がよければ、この戊いの埌、AWSはEKSず呌ばれる独自のKubernetesホスティングサヌビスを開始し始めたした。 このプロセスは非垞に初期の段階であり、本番環境での䜿甚に関するフィヌドバックはただありたせんが、AWSでは2぀のボタンで最も人気のあるオヌケストレヌションプラットフォヌムをセットアップでき、ほずんどの「ペン」にアクセスできるこずを誰もが理解しおいたす。 オヌケストラが遞ばれた瞬間に戻るず、Kubernetesは柔軟性、豊富な機胜、プロゞェクトの迅速な開発のために優先事項ずなりたす。


AWSは、EC2むンスタンスをホストするこずなくコンテナヌを起動するECS Fargateも導入したした。 iFunnyでは、圌らはすでにいく぀かのテストサヌビスで詊しおみたしたが、その機胜に぀いお結論を出すのは時期尚早ず蚀えたす。







PS蚘事は非垞に倧芏暡であるこずが刀明したしたが、ECSのケヌスでさえ終わりではありたせん。 コメントでトピックに関する質問をするか、成功した実装事䟋を共有しおください。








All Articles