インフラストラクチャのコストを可能な限り低く抑えるために、使用されていない特定のリソースをシャットダウンすることができます。ただし、ここでの課題は、必要なときにリソースを自動的にオンにする方法を決定することです。この記事では、Linode Kubernetes Engine (LKE) を使用して Kubernetes クラスターをデプロイし、Kubernetes Events-Driven Autoscaler (KEDA) を使用してそれをゼロにスケールダウンし、再度スケールアップする方法を説明します。 Linode が Akamai ソリューション ファミリーに加わったことを記念して、今すぐ Linode に登録して、Linode クラウド プラットフォームが提供するさまざまなサービスを使用するための 100 ドル相当の無料使用クレジットを獲得しましょう。詳細と登録については、ここをクリックしてください↓↓↓ 海外クラウドサービスならAkamaiが最適です!なぜゼロに縮小するのですか?Kubernetes 上で一般的なリソース集約型アプリケーションが実行されているが、そのアプリケーションを実行する必要があるのは営業時間中だけだとします。全員が退社するときに電源をオフにし、仕事に着いたら自動的に電源をオンに戻すようにしたい場合があります。 使用されていない開発環境をシャットダウンする必要がある場合があります。 この時点では、CronJob を使用してインスタンスをスケーリングできますが、これは一時的な対策にすぎず、事前に設定されたスケジュールに従ってのみ実行できます。 週末は何が起こるでしょうか?祝日はどうですか?チーム全員が病気で出勤できない場合はどうなるでしょうか? 増え続けるルールのリストをコンパイルするのではなく、トラフィックに基づいてワークロードをスケーリングできます。トラフィックが増加すると、レプリカの数を拡張できます。トラフィックがない場合、アプリケーション全体をシャットダウンできます。アプリケーションがシャットダウンされ、新しい着信リクエストを受信すると、Kubernetes はトラフィックを処理するために少なくとも 1 つのレプリカを開始します。 アプリケーションをゼロにスケールダウンするとリソースを節約できます 以下にその方法を説明します。
ご参考までに、関連コードが公開されています。 LearnK8s GitHub。 クラスターの作成まず、Kubernetes クラスターを作成する必要があります。次のコマンドを使用してクラスターを作成し、kubeconfig ファイルを保存します。 次のコマンドを実行すると、インストール プロセスが成功したことを確認できます。 多くの場合、環境変数を使用して kubeconfig ファイルをエクスポートすると便利です。これを行うには、次のコマンドを実行します。 次に、アプリケーションをデプロイする必要があります。 アプリケーションをデプロイする
次のコマンドを使用して YAML ファイルを送信します。 ブラウザを開いてアプリにアクセスするには、 ローカルホスト:8080。 その後、アプリが表示されるはずです。 次に、この例で使用するオートスケーラーである KEDA をインストールする必要があります。 KEDA: Kubernetes イベント駆動型オートスケーラーKubernetesが提供するもの Horizontal Pod Autoscaler (HPA) をコントローラーとして使用して、レプリカの数を動的に増減できます。ただし、HPA にはいくつかの欠点があります。
幸いなことに、公式の Autoscaler の使用に限定されず、KEDA も使用できます。ケダ 次の 3 つのコンポーネント用に構築されたオートスケーラー:
KEDAアーキテクチャ スケーラーはアダプタに似ており、データベース、メッセージブローカー、テレメトリシステムなどからメトリクスを収集できます。たとえば、HTTPスケーラー このアダプタは HTTP トラフィックを傍受して収集できます。ここで、RabbitMQ を使用した Scaler の例を見ることができます。 メトリック アダプターは、スケーラーによって収集されたメトリックを、Kubernetes メトリック パイプラインで使用できる形式でエクスポートする役割を担います。 最後に、コントローラーはこれらすべてのコンポーネントを結び付けます。
理論的な紹介はこれですべてです。実際にどのように機能するかを見てみましょう。 Helm を使用すると、コントローラーをすばやくインストールできます。詳しい手順と紹介については、 Helm公式サイト。 KEDA にはデフォルトで HTTP Scaler が含まれていないため、別途インストールする必要があります。 その後、アプリケーションを拡張できます。 自動スケーリングポリシーの定義KEDA の HTTP アドオンは、アプリケーションを拡張する方法を記述できる CRD を公開します。例を見てみましょう: このファイルはインターセプターに http://example.com リクエストは podinfo サービスに転送されます。 KEDA と HTTP インターセプター 拡張する必要があるデプロイメントの名前も含まれています。この場合は ポッドインフォ。 次のコマンドを使用して、YAML をクラスターに送信します。 上記の定義を送信した後、Pod は削除されました。なぜこのようなことが起こるのでしょうか? HTTPScaledObject を作成した後、現時点ではトラフィックがないため、KEDA はすぐにデプロイメントをゼロにスケールダウンします。 スケーリングするには、アプリケーションに HTTP リクエストを送信する必要があります。サービスに接続してリクエストしてみてください。 このコマンドはハングしています。 現在、リクエストを処理できる Pod がないため、この動作は妥当です。しかし、Kubernetes はこのデプロイメントを 1 にスケールしなかったのはなぜでしょうか? KEDAインターセプターのテストHelm を使用してアドオンをインストールすると、keda-add-ons-http-interceptor-proxy という Kubernetes サービスが作成されます。自動スケーリングが適切に機能するには、まず HTTP トラフィックをこのサービス経由でルーティングする必要があります。これを kubectl port-forward でテストできます。 今回はブラウザでURLにアクセスできません。 Ingress での KEDA HTTP アドインの使用Helm を使用して Nginx-ingress コントローラーをインストールできます。 次に、トラフィックを podinfo にルーティングするための Ingress マニフェストを記述します。 次のコマンドを実行すると、ロード バランサーの IP アドレスを取得できます。 最後に、次のコマンドを使用してアプリケーションにリクエストを発行します。 それは動作します!十分に長く待つと、デプロイメントが最終的にゼロに縮小されることにも気付くでしょう。 これは Kubernetes 上の Serverless とどう違うのでしょうか?この構成は、Kubernetes 上のサーバーレス フレームワーク (OpenFaaS など) とはいくつかの重要な違いがあります。
この記事の内容は大丈夫でしょうか?今すぐ Linode プラットフォームで試してみませんか?今すぐ登録すると、100 ドル相当の無料クレジットを獲得できることをお忘れなく。早速、この記事で紹介した機能やサービスを実際に体験してみましょう↓↓↓ 海外クラウドサービスならAkamaiが最適です!フォローを歓迎します アカマイ 、高可用性 MySQL/MariaDB リファレンス アーキテクチャと豊富なアプリケーション例を初めて知ることができます。 |
<<: ジェネラル・ダイナミクスがマルチクラウド戦略を次のレベルへ
>>: マイクロソフト、クラウド移行のための企業向けビジネス管理ツールを提供するAIMプログラムを開始
中国の SEO 市場が活況を呈し、さまざまな SEO 個人やチームの出現により、中国の SEO 担当...
国内のインターネットでは、アリババが電子商取引を、テンセントがソーシャルネットワーキングを代表し、一...
テンセントテクノロジーニュース(楽天)11月28日のニュースによると、変動の激しいグループ購入業界は...
生産コスト、人件費、運営コストはすべて増加しています。このような状況では、eコマース企業にはコストを...
IT と運用技術の境界線は曖昧になっています。エッジ コンピューティングは IT と OT の関係を...
Toggleboxはアメリカの企業(2008年設立、親会社は1997年設立のTektonic)で、ダ...
企業はクラウド ロギングを使用する理由を理解する必要があります。ログは、クラウド リソースの健全性、...
前回と同様に、この記事には他の URL リンク、特に以前に最適化された URL リンクをあまり多く含...
二重削減政策の実施後、教育業界は脱教育訓練時代に入った。オフラインのK12教育機関が閉鎖の波に見舞わ...
Racknerdはこれまで、米国ユタ州で超大型160Tハードドライブを搭載したストレージサーバーを発...
インテル コーポレーションの上級副社長であり、デジタル エンタープライズ グループ (DEG) の共...
[[429682]]この記事は、Double_Dong&Huazi が執筆した WeChat...
いわゆる検索エンジン不正行為とは、Baidu の「検索エンジン最適化ガイド 2.0」の言葉を借りれば...
2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っていますInmai...
コアヒント: 最も難しいのは、キーワードを上位にランク付けすることです。ここでは、サイトのランキング...