CNE AWS Ready: 初期環境のブートストラップ
の前提条件を完了したら、Cloud Native Experience (CNE) ブートストラップ プロセスを実行します。 この手順では、AWSインフラストラクチャをプロビジョニングし、GitOps同期を設定し、Liferayプラットフォームをデプロイします。
クラウドネイティブエクスペリエンス(CNE)の初期プロビジョニングには、45~70分かかる場合があります。
ブートストラッププロセスでは、Crossplaneを通じて複数のAWSマネージドサービスがプロビジョニングされます。 最も長いステップは通常次のとおりです。
- OpenSearchのプロビジョニング(最大約30分)
- Amazon RDSデータベースのプロビジョニング(最大約20分)
これらのサービスは並行して実行されますが、LiferayInfrastructureリソースがHealthyを報告する前に両方が完了する必要があります。
この間はブートストラップ処理を中断しないでください。
初めてクラウドネイティブ環境をデプロイする場合は、TerraformやHelmの値を変更する前に、デフォルト設定でブートストラッププロセスを実行してください。
この初期導入を通して、Terraform、Argo CD、GitOpsワークフローといったクラウドネイティブツールに慣れることができます。
環境を確認し、デプロイ プロセスを理解したら、 環境を破棄し、 本番環境へのデプロイに必要な構成でブートストラップを再度実行します。
ローカル環境を認証する
スクリプトを実行する前に、AWSアカウントを使用してターミナルを認証してください。
-
まだ設定していない場合は、AWS CLI プロファイルを設定してください
aws configure sso -
AWSアカウントで認証してください。
export AWS_PROFILE=[your-profile-name] aws sso login
Bootstrapディレクトリを準備する
ブートストラップ処理用のディレクトリを作成します。 このディレクトリに、 config.json ファイルを作成します。 この場所からブートストラップコマンドを実行してください。
例えば、
mkdir cne-bootstrap
cd cne-bootstrap
touch config.json
Bootstrapを設定する
config.json ファイルは、ブートストラップ プロセスが環境をプロビジョニングする方法を定義します。
{
"options": {
"provider": "aws",
"version": "1.0.0",
"auto_approve": false
},
"variables": {
"deployment_name": "clarity",
"liferay_git_repo_url": "https://github.com/clarity/acme-gitops",
"region": "us-west-2",
"liferay_git_repo_config": {
"auth": {
"credentials_secret_name": "liferay/credentials/gitops"
},
"source_paths": {},
"target": {}
}
}
}
GitOpsリポジトリはArgo CDからアクセス可能である必要があります。
liferay_git_repo_config.auth.credentials_secret_name の値は、 前提条件 で作成されたシークレットと一致する必要があります。 このシークレットには、Gitリポジトリの認証情報(GitHubパーソナルアクセストークンなど)が保存されており、Argo CDがリポジトリで認証を行うために必要です。
秘密の名前は独自の命名規則に従うことができますが、 config.json で設定された値と一致する必要があります。
オプション
| オプション | 説明 |
|---|---|
provider | 自己ホスト型プロバイダを指定します。 有効な値: aws、 gcp。 |
version | Bootstrapのバージョンを定義します。 Liferayが提供するバージョンを使用してください。 |
auto-approve | true に設定すると、インフラストラクチャの作成が自動的に承認されます。 |
変数
| 変数 | 説明 |
|---|---|
deployment_name | インフラストラクチャ リソースに名前を付けるために使用される識別子。 |
liferay_git_repo_url | GitOpsリポジトリのURL(例えば、前提条件の際に作成したボイラープレートのフォークなど)。 |
liferay_git_repo_config | GitOpsリポジトリへのアクセス設定。認証情報シークレットによる認証も含まれます。 |
region | インフラストラクチャが作成されるAWSリージョン。 |
liferay_git_repo_config.source_paths | GitOpsリポジトリ内のソースパスを定義します。 デフォルト設定の場合は、空欄のままにしてください ({})。 |
liferay_git_repo_config.target | デプロイメントターゲット構成を定義します。 デフォルト設定の場合は、空欄のままにしてください ({})。 |
Bootstrapスクリプトを実行する
-
config.jsonを含むディレクトリから、以下を実行します。bash <(curl -sL https://raw.githubusercontent.com/liferay/liferay-portal/master/cloud/scripts/bootstrap.sh)このスクリプトは、指定されたブートストラップバージョンをダウンロードし、ブートストラップ処理を実行します。
-
自動承認がfalseに設定されている場合、プロンプトが表示されたらインフラストラクチャの作成を確認し、特別な要件がない限りデフォルト値を受け入れてください。- EKS – Kubernetesクラスター
- GitOpsプラットフォーム – Argo CDおよび関連サービス
- GitOpsリソース – Liferayとその依存関係
Bootstrapプロセスを再実行する
ブートストラップ プロセスが失敗した場合 (たとえば、無効な設定値が原因である場合)、 config.json ファイルを更新し、同じディレクトリからブートストラップ コマンドを再度実行してください。
- スクリプトは、可能な場合は既存のリソースを再利用する可能性がある。
- 障害発生箇所によっては、一部のAWSリソースが既に存在しており、再実行時に競合が発生する可能性があります。
ブートストラップ処理が引き続き失敗する場合は、 環境をクリーンアップし、 ブートストラップを再度実行してください。
ブートストラップ プロセスを再実行しても問題が解決しない場合は、 トラブルシューティング を参照してください。
アクセスアルゴCD
ブートストラップ処理が完了すると、スクリプトはArgo CDの管理者パスワードを表示し、ポートフォワーディングを開始します。
Argo CD にアクセスするには、ブラウザで http://localhost:8080 を開きます。
ログイン方法:
Username: admin
Password: [see terminal output]
ターミナルを閉じて、再び Argo CD にアクセスしたい場合は、以下を実行してください。
kubectl port-forward service/argocd-server 8080:443 \
--namespace argocd-system
初期管理者パスワードを再度取得するには、以下を実行してください。
kubectl -n argocd-system get secret argocd-initial-admin-secret \
-o jsonpath="{.data.password}" | base64 --decode
Argo CD でアプリケーションが 正常 および 同期済み ステータスに達すると、クラウドネイティブエクスペリエンス環境が完全にプロビジョニングされます。 AWSインフラストラクチャ、Kubernetesクラスター、およびLiferayプラットフォームは現在、GitOpsを通じて稼働および管理されています。
クラウドネイティブエクスペリエンスの設定 に進んでください。