このガイドでは、Wickr Enterprise のドキュメントを提供します。AWS Wickr を使用している場合は、「AWS Wickr 管理ガイド」または「AWS Wickr ユーザーガイド」を参照してください。
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Wickrエンタープライズの開始方法
要件
開始する前に、以下の要件が満たされていることを確認します:
-
Node.js 16+ をダウンロードします
-
AWS CLI アカウントの認証情報で設定されている。
これらは、
~/.aws/configにある設定ファイルから、またはAWS_環境変数を使用して取得されます。 -
kubectl をインストールします。詳細については、Amazon EKS ユーザーガイドの「kubectl のインストール」を参照してください。
-
KOTS CLI をインストールします。詳しくは「kots CLIのインストール
」を参照してください。 -
許可リストへのポート: HTTPS および TCP 呼び出しトラフィックの場合は 443/TCP、UDP 呼び出しトラフィックの場合は 16384-19999/UDP、TCP/8443
アーキテクチャ
依存関係をインストールします
以下のコマンドを使用して、すべての依存関係をデフォルトのパッケージに追加できます。
npm install
構成する
AWS Cloud Development Kit (AWS CDK) は、コンテキスト値を使用してアプリケーションの設定を制御します。Wickr Enterprise は CDK コンテキスト値を使用して、インストールされている Wickrエンタープライズのドメイン名や RDS バックアップを保持する日数などの設定を制御します。詳しくは、「AWS Cloud Development Kit (AWS CDK) デベロッパーガイド」の「ランタイムコンテキスト」を参照してください。
コンテキスト値を設定するには複数の方法がありますが、特定のユースケースに合わせて cdk.context.json で値を編集することをお勧めします。wickr/ で始まるコンテキスト値のみが Wickr Enterprise デプロイに関連し、残りは CDK 固有のコンテキスト値です。次回 CDK を使用して更新を行うときに同じ設定を維持するには、このファイルを保存します。
少なくとも、wickr/licensePath、、wickr/domainNameおよび wickr/acm:certificateArnまたは wickr/route53:hostedZoneIdと を設定する必要がありますwickr/route53:hostedZoneName。
パブリックホストゾーンを使用する場合
に Route 53 パブリックホストゾーンがある場合は AWS アカウント、次の設定を使用して CDK コンテキストを設定することをお勧めします。
-
wickr/domainName: この Wickr Enterprise デプロイに使用するドメイン名。Route 53 パブリックホストゾーンを使用する場合、このドメイン名の DNS レコードと ACM 証明書は自動的に作成されます。 -
wickr/route53:hostedZoneName: DNS レコードを作成する Route 53 ホストゾーン の名前。 -
wickr/route53:hostedZoneId: DNS レコードを作成する Route 53 ホストゾーン ID。
この方法では、Wickr Enterprise デプロイの前にあるロードバランサーにドメイン名を指定する DNS レコードとともに、ユーザーに代わって ACM 証明書を作成します。
パブリックホストゾーンがない場合
アカウントに Route 53 パブリックホストゾーンがない場合は、ACM 証明書を手動で作成し、wickr/acm:certificateArn コンテキスト値を使用して CDK にインポートする必要があります。
-
wickr/domainName: この Wickr Enterprise デプロイに使用するドメイン名。Route 53 パブリックホストゾーンを使用する場合、このドメイン名の DNS レコードと ACM 証明書は自動的に作成されます。 -
wickr/acm:certificateArn: ロードバランサーで使用する ACM 証明書の ARN。アカウントで Route 53 パブリックホストゾーンを利用できない場合は、この値を指定する必要があります。
への証明書のインポート
次のコマンドを使用して、外部から取得した証明書をインポートできます。
aws acm import-certificate \ --certificate fileb://path/to/cert.pem \ --private-key fileb://path/to/key.pem \ --certificate-chain fileb://path/to/chain.pem
出力は証明書 ARN になり、wickr/acm:certificateArn コンテキスト設定の値として使用する必要があります。アップロードした証明書が wickr/domainName で有効であることが重要です。そうしないと、HTTPS 接続を検証できなくなります。詳細については、AWS Certificate Manager ユーザーガイドの 証明書のインポート を参照してください。
DNS レコードの作成
利用可能なパブリックホストゾーンがないため、デプロイが完了した後に、Wickr Enterprise デプロイの前面にあるロードバランサーを指すように DNS レコードを手動で作成する必要があります。
既存の VPC へのデプロイ
既存の VPC を使用する必要がある場合は、VPC を使用できます。ただし、VPC は EKS に必要な仕様を満たすように設定する必要があります。詳細については、「Amazon EKS ユーザーガイド」の「VPC とサブネットの Amazon EKS ネットワーク要件を表示」を参照してください。また、使用する VPC がこれらの要件を満たしていることを確認します。
さらに、次のサービスの VPC エンドポイントがあることを確認することを強くお勧めします。
-
クラウドウォッチ
-
CLOUDWATCH_LOGS
-
EC2
-
EC2_MESSAGES
-
ECR
-
ECR_DOCKER
-
ELASTIC_LOAD_BALANCING
-
KMS
-
SECRETS_MANAGER
-
SSM
-
SSM_MESSAGES
リソースを既存の VPC にデプロイするには、以下のコンテキスト値を設定します。
-
wickr/vpc:id- リソースをデプロイする VPC ID (例:vpc-412beef)。 -
wickr/vpc:cidr- VPC の IPv4 CIDR (例:172.16.0.0/16)。 -
wickr/vpc:publicSubnetIds- VPC 内のパブリックサブネットのカンマ区切りリスト。Application Load Balancer と呼び出し側の EKS ワーカーノードは、これらのサブネットにデプロイされます (例:subnet-6ce9941,subnet-1785141,subnet-2e7dc10)。 -
wickr/vpc:privateSubnetIds- VPC 内のプライベートサブネットのカンマ区切りリスト。EKS ワーカーノードと踏み台サーバーは、これらのサブネットにデプロイされます (例:subnet-f448ea8,subnet-3eb0da4,subnet-ad800b5)。 -
wickr/vpc:isolatedSubnetIds- VPC 内の隔離されたサブネットのカンマ区切りリスト。RDS データベースはこれらのサブネットにデプロイされます (例:subnet-d1273a2,subnet-33504ae,subnet-0bc83ac)。 -
wickr/vpc:availabilityZones- VPC 内のサブネットのアベイラビリティーゾーンのカンマ区切りリスト (例:us-east-1a,us-east-1b,us-east-1c)。
インターフェイス VPC エンドポイントの詳細については、「インターフェイス VPC エンドポイントを使用して AWS サービスにアクセスする」を参照してください。
その他の設定
詳細については、「Context values」を参照してください。
ブートストラップ
この特定の AWS アカウント およびリージョンで CDK を初めて使用する場合は、まずアカウントをブートストラップして CDK の使用を開始する必要があります。
npx cdk bootstrap
デプロイ
この処理には約 45 分かかります。
npx cdk deploy --all --require-approval=never
これが完了すると、インフラストラクチャーが作成され、Wickrエンタープライズのインストールを開始できます。
DNS レコードの作成
CDK の設定時にパブリックホストゾーンを使用する場合、この手順は不要です。
デプロイプロセスの出力には、ロードバランサーの DNS 名の値 WickrAlb.AlbDnsName が含まれます。出力は次のようになります。
WickrAlb.AlbDnsName = Wickr-Alb-1Q5IBPJR4ZVZR-409483305.us-west-2.elb.amazonaws.com
この場合、ロール名は Wickr-Alb-1Q5IBPJR4ZVZR-409483305.us-west-2.elb.amazonaws.com です。この値は、ドメイン名の CNAME または A/AAAA (ALIAS) レコードを作成するときに使用する必要があります。
デプロイからの出力がない場合は、次のコマンドを実行してロードバランサーの DNS 名を表示します。
aws cloudformation describe-stacks --stack-name WickrAlb \ --query 'Stacks[0].Outputs[?OutputKey==`AlbDnsName`].OutputValue' \ --output text
KOTS 設定の生成
警告
このファイルには、インストールに関する機密情報が含まれています。公開で共有したり、保存したりしないでください。
Wickr Enterprise インストーラーを正常にインストールするには、インフラストラクチャーに関するいくつかの設定値が必要です。ヘルパースクリプトを使用して設定値を生成できます。
./bin/generate-kots-config.ts > wickr-config.json
最初のステップで外部証明書を ACM にインポートした場合は、このスクリプトに --ca-file フラグを渡します。次に例を示します。
./bin/generate-kots-config.ts --ca-file path/to/chain.pem > wickr-config.json
スタックが存在しないというエラーが表示された場合は、選択したリージョンに AWS_REGION 環境変数 (export AWS_REGION=us-west-2) を設定して、もう一度試してください。または、コンテキスト値 を設定した場合はwickr/stackSuffix、 --stack-suffixフラグでサフィックスを渡します。