Cloud Marketplace で Apigee Developer Portal Kickstart をカスタマイズする

このページの内容は ApigeeApigee ハイブリッドに該当します。

Apigee Edge のドキュメントを表示する。

このページでは、Apigee Developer Portal Kickstart ソリューションのカスタマイズ、メンテナンス、保護のためのオプションについて説明します。デプロイ後、ポータルで使用されるすべての Cloud サービス コンポーネントは、標準の Google Cloud ドキュメントに従ってカスタマイズできます。以降のセクションでは、ポータル ソリューションに固有の構成オプションと、本番環境のガイドラインについて説明します。

Apigee または Apigee ハイブリッドに接続する

Apigee や Apigee ハイブリッドの組織で Apigee Developer Portal Kickstart ソリューションを使用するには、ポータルを Apigee のプロビジョニングで使用される Google Cloud プロジェクトにデプロイする必要があります。デプロイ時には、Apigee Developer Admin ロールを持つサービス アカウントが作成されます。このロールは、Apigee API を呼び出すサービス アカウントに必要です。

ポータル用に HTTPS を構成する

ポータル デプロイメントの起動構成で、ポータル用に HTTPS を構成できます。チェックボックスの構成オプションには、次のものがあります。

オフ デプロイ スクリプトが自動で TLS を有効にすることはありません。TLS は、Cloud Load Balancing を使用してデプロイ後に手動で構成できます。これがデフォルトのオプションです。
オン デプロイ パッケージでは、TLS の有効化、IP アドレスのプロビジョニング、ドメイン名の構成、nip.io を使用した SSL 証明書のリクエストが行われます。nip.io の使用は、Google が推奨するものではなく、デプロイのテストに役立つオプションとして利用できるものです。このオプションを選択すると、nip.io の利用規約に同意したものとみなされます。

CMEK で Cloud SQL を使用する

ポータル用の Cloud SQL インスタンスは、起動構成時に選択したリージョンに作成されます。デフォルトでは、Google が管理する暗号鍵を使用して保存データが暗号化されます。顧客管理の暗号鍵(CMEK)を使用して Cloud SQL インスタンスに保存されているデータを暗号化するには、顧客管理の暗号鍵を使用するに記載の手順に沿って鍵を構成します。

Cloud SQL を管理する

デプロイ後に Cloud SQL インスタンスを管理するには:

マネージド インスタンス グループを構成および更新する

マネージド インスタンス グループ(MIG)とは、単一のエンティティとして管理できる仮想マシン(VM)インスタンスの集まりのことです。自動スケーリング、自動修復、リージョン(マルチゾーン)デプロイ、自動更新などの自動化 MIG サービスを活用することで、ワークロードのスケーラビリティと高可用性を実現できます。

デプロイ後に MIG を構成するには:

Apigee Developer Portal Kickstart ソリューション用の新しい VM イメージは、定期的にリリースされます。お客様は、MIG のインスタンスを更新するに記載の手順に沿って、MIG のインスタンスを置換または再起動することで、最新のイメージを使用できます。

VPC Service Controls でプライベート IP を有効にする

Cloud SQL インスタンスのプライベート IP アドレスを有効にするには:

ポータルコードをカスタマイズする

デプロイ後にポータルコードや起動スクリプトをカスタマイズした場合は、これらの変更をエクスポートして Filestore にバックアップし、Apigee Developer Portal Kickstart ベースイメージの更新中に変更が失われないようにする必要があります。

たとえば、新しい Drupal モジュールが Compute Engine インスタンスにインストールされた場合は、次の手順でバックアップを作成します。

  1. /opt/apigee/scripts/export-code.sh を実行して変更をエクスポートします。
  2. このスクリプトにより、エクスポートしたファイルが、/mnt/fileshare/portalname/ にマウントされた Filestore インスタンスにコピーされます。
  3. マネージド インスタンス グループ内のインスタンスを再起動して、グループ全体での変更の取り込みをトリガーします。起動スクリプトは、コードのバックアップが存在するかどうかを自動で検出し、変更を読み込み、ファイルの権限を修正して、settings.php ファイルを適用します。
  4. composer update を使用して Drupal のコアとモジュールを更新します。Apigee のベースイメージの更新では、OS の更新、PHP パッチ、NGINX の更新のみが提供されます。Drupal のコアとモジュールの更新は、すべてお客様が管理し、手動で適用する必要があります。

起動スクリプトをカスタマイズするには、/mnt/fileshare/$PORTAL_NAME/custom-startup-script.sh にスクリプトを作成します。

PHP パッケージをインストールする場合は、service supervisor restart コマンドを実行して変更を適用します。

バックアップを作成する

Apigee Developer Portal Kickstart ソリューションのベスト プラクティスとして、定期的にバックアップを作成することをおすすめします。手順の詳細については、以下をご覧ください。

本番環境で使用するポータルを構成する

本番環境で使用するためにポータルを構成するには、以下の手順をおすすめします。

Cloud SQL データベース
  • データベースのマシンタイプを確認または変更する
  • データベースのパブリック IP を無効にして、プライベート IP を構成する
  • データベースの自動バックアップを有効にする
  • データベースの高可用性を有効にする
Filestore
  • Filestore のバックアップを有効にする
Cloud Load Balancing
  • Cloud CDN を有効にして静的コンテンツをキャッシュに保存する
  • 必要に応じてカスタム SSL 証明書を追加する
マネージド インスタンス グループ
  • 本番環境のトラフィックに必要なインスタンスの最小数と最大数を調整する
認証
  • サイトから HTTP Basic 認証アクセス制限を削除します。

    次のコマンドを実行して、ポータルサイトを一般公開します。

    gcloud beta runtime-config configs variables set site_basic_auth/enabled 0 \
      --is-text --config-name=PORTAL_NAME --project=GCP_PROJECT_NAME
    gcloud beta compute instance-groups managed rolling-action \
      replace INSTANCE_GROUP_ID --region=GCP_REGION \
      --replacement-method=substitute --project=GCP_PROJECT_NAME

次のステップ