Goブログ

Go Cloud Development Kit の新機能

Google の Go Cloud Development Kit チーム
2019年3月4日

はじめに

昨年7月、私たちは発表しました Go Cloud Development Kit (以前は単に「Go Cloud」と呼ばれていました) は、Go を使用したクラウド開発のエクスペリエンスを向上させるためのライブラリとツールを構築するオープンソースプロジェクトです。それ以来、多くの進歩がありました。早期の貢献者の皆様、ありがとうございます。Go CDK ユーザーとコントリビューターのコミュニティを拡大し、早期導入者と緊密に連携できることを楽しみにしています。

ポータブル API

私たちの最初の取り組みは、一般的なクラウドサービス向けのポータブル API のセットです。これらの API を使用してアプリケーションを作成し、AWS、GCP、Azure、オンプレミス、またはテスト用の単一の開発者マシンなど、プロバイダーの任意の組み合わせにデプロイします。インターフェースを実装することで、プロバイダーを追加できます。

これらのポータブル API は、次のいずれかに該当する場合に最適です。

  • クラウドアプリケーションをローカルで開発する。
  • クラウドで実行したいオンプレミスアプリケーションがある (永続的に、または移行の一部として)。
  • 複数のクラウド間でポータビリティを確保したい。
  • クラウドサービスを使用する新しい Go アプリケーションを作成している。

各クラウドプロバイダーごとに新しいアプリケーションコードを記述する必要がある従来のアプローチとは異なり、Go CDK では、以下に示すサービスセットにアクセスするためにポータブル API を使用してアプリケーションコードを一度記述します。次に、最小限の設定変更で、サポートされている任意のクラウドでアプリケーションを実行できます。

現在、API セットには以下が含まれています。

  • blob は、blob データの永続化用です。サポートされているプロバイダーには、AWS S3、Google Cloud Storage (GCS)、Azure Storage、ファイルシステム、およびインメモリが含まれます。
  • pubsub は、トピックへのメッセージのパブリッシュ/サブスクライブ用です。サポートされているプロバイダーには、Amazon SNS/SQS、Google Pub/Sub、Azure Service Bus、RabbitMQ、およびインメモリが含まれます。
  • runtimevar は、外部構成変数の監視用です。サポートされているプロバイダーには、AWS Parameter Store、Google Runtime Configurator、etcd、およびファイルシステムが含まれます。
  • secrets は、暗号化/復号化用です。サポートされているプロバイダーには、AWS KMS、GCP KMS、Hashicorp Vault、およびローカル対称キーが含まれます。
  • クラウドSQLプロバイダーに接続するためのヘルパー。サポートされているプロバイダーには、AWS RDSとGoogle Cloud SQLが含まれます。
  • ドキュメントストレージAPI (例: MongoDB、DynamoDB、Firestore) にも取り組んでいます。

フィードバック

Go CDK に私たちと同じように興奮していただければ幸いです。私たちの godoc を確認し、チュートリアル を通して、Go CDK をアプリケーションで使用してください。他の API や、見てみたい API プロバイダーに関するご意見をお待ちしております。

Go CDK を詳しく調べている場合は、ご意見をお聞かせください。

  • うまくいったことは何ですか?
  • APIの使用に問題はありましたか?
  • 使用したAPIに不足している機能はありますか?
  • ドキュメント改善のための提案。

フィードバックを送信するには、次の方法があります。

ありがとうございます。

次の記事: 新しい Go 開発者ネットワーク
前の記事: Go 1.12 がリリースされました
ブログインデックス