サーバーレス

Cloud Run for Anthos が提供する画期的な機能

gcp_serverless.jpg

※この投稿は米国時間 2019 年 12 月 12 日に、Google Cloud blog に投稿されたものの抄訳です。

 Google は、2019 年初めにサーバーレス コンテナ向けの最新コンピューティング プラットフォーム Cloud Run を発表しました。これは、Google のフルマネージド インフラストラクチャ、または Cloud Run for Anthos を実行する Google Kubernetes Engine(GKE)クラスタで稼働します。こうしたポータビリティは、Knative オープンソース API を使用することで実現しています。

すでに一般提供をしております Cloud Run for Anthos を使用すると、Knative やサービス メッシュといった、GKE クラスタでサーバーレス コンテナをサポートするのに必要となる機能をすべて導入して管理できます。このブログでは、ネットワーキングや自動スケーリング機能の向上を含めた新機能や強化点のいくつかを紹介します。これらの機能により、Anthos GKE クラスタ上でマイクロサービスのデプロイと運用を、簡単かつサーバーレスな方法で行えるようになりました(併せて、Cloud Run フルマネージドの新機能に関する記事もご覧ください)。 

トラフィック管理

Cloud Run for Anthos では、構成したトラフィック配分比率で、同じサービスの複数のリビジョン間でランダムに各リクエストまたは RPC をルーティングできるようになりました。この機能は、アプリケーションの新しいバージョンのカナリア デプロイメントの実行に利用できます。カナリア デプロイメントでは、トラフィックのごく一部を送信して、アプリケーションのパフォーマンスが適切かどうかを検証してから、トラフィックを徐々に増加していきます。同様に、これらのトラフィック管理の新機能では、アプリケーションの旧バージョンにロールバックすることもできます。サービスへのトラフィックの管理は、Cloud Console または gcloud コマンドライン ツールで行えます。

1

オンプレミス クラスタでの Cloud Run の利用

Cloud Run for Anthos のベータ版では、Google Cloud Platform(GCP)で実行する GKE クラスタのみがサポートされていました。Cloud Run for Anthos の一般提供では、VMware にデプロイされているオンプレミス クラスタにも Cloud Run をデプロイできます。

これにより、デベロッパーとオペレーターのサーバーレス エクスペリエンスを両方の環境で同じにすることができます。Anthos クラスタがオンプレミスと GCP のどちらで実行されているかに関係なく、gcloud または Cloud Console を使用して Anthos クラスタにデプロイし、クラスタをモニタリングできます。

2

Kubernetes シークレットと ConfigMap のサポート

Cloud Console インターフェースまたは gcloud を使用して、クラスタ内の既存の Kubernetes シークレットと ConfigMap リソースを Cloud Run サービスにマウントできるようになりました。これにより、Kubernetes マニフェスト ファイルを使った膨大な量の指定なしでサービスをデプロイできます。

3

ネットワーキングと自動スケーリングのパラメータの詳細な調整 

Cloud Console と gcloud が新たに強化され、アプリケーションのネットワーキングと自動スケーリングのパラメータをリビジョン レベルごとに細かく調整できるようになりました。

  • --min-instances / --max-instances を使用すると、アプリケーションのスケーリング
    の上限と下限を指定できます。たとえば、--min-instances をゼロより大きい数値に設定すると、非アクティブになった場合にサービスのスケーリングがゼロまで下がらないようにして、コールド スタートを防止します。

  • --timeout を使用すると、サービスにカスタムのリクエスト タイムアウトを指定できます。

  • --port を使用すると、コンテナ化されたアプリケーションがリッスンするポート番号のカスタマイズと指定を行うことができます。これにより、アプリケーション サーバーのポート番号を変更する必要なく、アプリで Cloud Run を利用できます。

こういったオプションの一部は現在ベータ版ですが、これらのオプションだけでなく、他の多くの構成オプションもコマンドラインと Cloud Console ですぐに利用可能になる予定です。

サービスの可観測性の向上

追加設定なしで Cloud Run for Anthos に Stackdriver Monitoring を統合して、デプロイしたサービスの指標をモニタリングすることができます。一般提供では、これらの指標は Stackdriver 指標、またはサービスの Cloud Run ページの [指標] タブで直接確認できます。こういった指標には、次のようなゴールデン シグナルが含まれます。リクエストのレイテンシ、エラー率、CPU とメモリの使用率、コンテナ インスタンス数などです。これらの指標を活用して、アプリケーションのリビジョンごとにドリルダウンすることや、Stackdriver Monitoring を使用してアラートや SLO を作成することが可能です。

create_alerts.max-2000x2000

たとえば Anthos クラスタがオンプレミスにある VMware 上で実行されている場合でさえ、同じ指標セットを取得できることは注目に値します。

クラスタ フットプリントの削減

Cloud Run に特定の Istio コンポーネントが導入されたことにより、Cloud Run for Anthos で Istio アドオンをオプションとして使用できるようになりました。クラスタ全体のトラフィック ポリシーを実施して、Anthos Service Mesh ダッシュボードを、クラスタ内のサービスを可視化して一元管理するための単一ペインとして利用する場合は、フルバージョンの Istio も優れた補完機能として利用できます。最近 Istio コミュニティは、リソース フットプリントの削減といったさまざまな改善を Istio に加えています。

パートナー エコシステム

Google は、CI / CD、セキュリティ、可観測性の分野で広範な ISV と連携しているため、Cloud Run for Anthos で実行するアプリケーションにもお気に入りのツールを継続して利用できます。Cloud Run を専門とするパートナーが掲載された最新のリストについては、こちらをご確認ください。 

無料トライアルのご利用

お客様のアプリケーションで Cloud Run(フルマネージド)と Cloud Run for Anthos をすぐにお試しいただけます。クイックスタート ガイドに沿って、Anthos GKE クラスタで Cloud Run をぜひお試しください。2020 年 5 月まで無料で試用できます。12 か月間の GCP 無料トライアルでは、$300 相当のクレジットを受け取って、Cloud Run for Anthos が稼働するクラスタを作成できます。すでにオンプレミスで Anthos を実行している場合は、こちらのクイックスタート ガイドに沿って、Cloud Run を VMware 環境にデプロイしてみてください。

- By デベロッパー アドボケイト、Ahmet Alp Balkan