11章アプリケーションをKubernetesでクラウドにデプロイ

前の章では、サービスをデプロイできるようにする作業を行いましたが、ローカルにしかデプロイしませんでした。この章では、サービスをクラウドにデプロイし、インターネット上に公開します。Kubernetesは、コンテナ、ネットワーク、ボリュームなど、アプリケーションに必要なリソースを抽象化しています。これは、Goがオペレーティングシステムとプロセッサアーキテクチャを抽象化し、それぞれで同じプログラムを実行できるようにするのに似ています。そのため、ローカルのKubernetesクラスタをクラウドに移行するために必要な変更は、ほとんどありません。

三つのクラウドプラットフォームが主流です。Google Cloud Platform(GCP)†1、Amazon Web Services(AWS)†2、Microsoft Azure†3です。三つのプラットフォームはすべて、類似している機能と独自のKubernetesサービスを提供しています。Kubernetesがプラットフォーム間の違いを補うことで、どれかにデプロイしたり、プロバイダを簡単に移ったり(プロバイダと値段交渉したり)、同時に全部で実行したりできるのです。この章では、GCPにサービスをデプロイします。

GCPは、制限付きで製品のフリーティア(free tier)を提供し、12か月の無料トライアル中に使える300ドルのクレジットも提供しています。この本での作業で重要なのは、フリーティアには一つのKubernetesクラスタと5 GBのストレージが含まれていることです。それは、私たちのサービスをクラウドにデプロイするのに十分です。Googleは無料トライアルに課金しませんが、サインアップ(申し込み登録)にはクレジットカードが必要です。トライアル中はGoogleがバナーでクレジットの数と残り時間を表示するので、自分のステータスを知ることができます。トライアル期間が終了し、サービスを購入し、さらにプラットフォームを使うことを決定すると、Googleは自動課金を有効にすることを要求します。 ...

Get Go言語による分散サービス ―信頼性、拡張性、保守性の高いシステムの構築 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.