アプリケーション開発

Artifact Registry: 次世代の Container Registry

gcp Artifact Registry.jpg

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

エンタープライズ アプリケーション チームは、ソフトウェア サプライ チェーンのコンテナだけではなく、それ以外のものも管理する必要があります。そこで Google は、コンテナ イメージとコンテナ以外のアーティファクトの両方をサポートするフルマネージド サービスである Artifact Registry を生み出しました。

Artifact Registry は、顧客管理の暗号鍵、VPC-SC 対応、Pub/Sub 通知などの Container Registry の既存の機能を改善および拡張し、さらにセキュリティ、スケーラビリティ、コントロールの面で大規模なアップグレードの基盤を提供します。Container Registry は現在も利用可能で Google Enterprise API によるサポートは継続されますが、リリースされる新機能は Artifact Registry でのみ利用可能で、Container Registry では重要なセキュリティ修正のみが適用されます。

ここでは、Container Registry に代わる Artifact Registry で実施される主な改善と、今すぐ使い始めるための手順に焦点を当てます。

コンテナ、OS、言語のリポジトリのための統一されたコントロール プレーン

Artifact Registry に含まれるのは、コンテナ イメージだけではありません。デベロッパーは、Debian や RPM などの OS パッケージ、Python、Java、Node などの人気言語の言語パッケージといった複数のアーティファクト形式で保存が可能です。さらに、それらすべてを単一の統合されたインターフェースから管理できます。

Cloud IAM による、より粒度の細かいパーミッション モデル

Artifact Registry では、Cloud IAM を通した、きめ細かいアクセス制御を行っています。そのため、Container Registry とは違い、プロジェクトにすべてのイメージを保存するのではなく、リポジトリごとのアクセス制御が可能となりました。また、必要な場合はアクセス許可を特定のリージョンまたは環境など、可能な限り細かい範囲まで限定することが可能です。

選択したリージョンにおけるリポジトリ

Artifact Registry では、リージョン リポジトリの作成をサポートしています。それによりアーティファクトやデータを、使用するロケーションに直接配置できるようになり、可用性やスピードの向上を実現しています。Container Registry の場合、「マルチリージョン」に限定されているため、たとえばオーストラリアでは最も近いマルチリージョンはアジアでした。ですが、Artifact Registry のリージョン サポートであれば、シドニーのデータセンターに直接、リポジトリを作成できます。

リージョンを尊重した料金モデル

Artifact Registry の料金体系は、下り(外向き)ネットワークとストレージ使用量の組み合わせに基づいていますが、リージョン リポジトリをサポートしています。つまり、コンテナ リポジトリをホストするリージョンを選択可能であることを意味しています。ユニットあたりのストレージの費用は Artifact Registry の方が高くなりますが、リポジトリの地域を最適化し、使用するリージョンと同じリージョンにホストすることで、結果としてコスト削減につながります。同一リージョン内のネットワーク トラフィックは下り(外向き)とは見なされず、無料となるためです。

安全なサプライ チェーンの一部

Artifact Registry は、Google の一連の安全なサプライ チェーン プロダクトに統合するためにゼロから設計されたものです。つまり必要に応じて、Artifact Registry にアップロードされたコンテナ イメージの脆弱性のスキャンに Container Analysis を使用することも、デプロイメントを保護するために Binary Authorization と直接連携することも可能です。

移行のサポートのご案内

すでに Container Registry を利用中の場合は、Artifact Registry に移行することでコンテナ イメージ ストレージの現在および今後の機能を活用できます。Google では移行に役立つように、次のガイドを用意しています。

現在、サードパーティでコンテナ イメージをホストしている場合、サードパーティ レジストリからのコンテナの移行の手順に沿って、直接 Artifact Registry の利用を開始できます。ガイドでは、ビルドとデプロイを中断する可能性のある、イメージの pull やサードパーティの停止に対するレート制限を避ける方法が示されています。

また、コンテナ イメージの保存を始めたばかりである場合は、イメージ リポジトリとしてすぐに Artifact Registry の利用を開始できます。方法については、プライベート パッケージと Docker コンテナ イメージを 1 か所で管理できる場所である Artifact Registry の利用に関するガイドから、Docker 用の Artifact Registry クイックスタートをご覧ください。

コミュニティに参加する

Google の Artifact Registry コミュニティは、疑問への答えが得られる優れたリソースであり、ベスト プラクティスに関するガイダンスも提供しています。

-シニア デベロッパー アドボケイト Dustin Ingram