Azureコンテナーアプリ
Azure Container Appでのデプロイ
概要
本ガイドは、Keeper AutomatorをAzureコンテナーアプリサービスに公開するための詳細な手順となります。これにより、Automatorサービスを簡単にクラウドでホストしていただけます(注: 2024年1月現在、Azure GovernmentではAzure Container Appはご利用になれません)。
(1) Automator Configキーの作成
コマンドラインを開き、オペレーティングシステムに応じて次のいずれかの方法を使用してURLエンコード形式で256ビットAESキーを生成します。
キーの生成
このコマンドによって生成された結果の値を手順(3)のために保存します。
(2) Container Appの作成
Azureから新しいコンテナーアプリを作成します。
新しいリソースグループを選択または作成します。
コンテナアプリ名をkeeperautatorまたは任意の名前に設定します。
サービスをホストしたい地域を選択します。
新しいアプリ環境を作成するか、既存の環境を選択します。
[次へ]: [コンテナ] >をクリックします。
(3) コンテナの詳細のセットアップ
コンテナーの手順では以下のように設定します。
[クイックスタートイメージを使用する]のチェックを外します
[Docker Hub または他のレジストリ]を選択します
[パブリック]を選択します
レジストリログインサーバーに
docker.io
を選択しますイメージを設定し、
keeper/automator:latest
としてタグを付けますCPUとメモリについては、0.5 CPUコアと1Gi メモリで十分ですが、新しいデバイスのログイン量に基づいて変更できます
上記の手順1の値を使用して
AUTOMATOR_CONFIG_KEY
という環境変数を作成します8089の値を使用して
AUTOMATOR_PORT
という環境変数を作成しますnoneの値で
SSL_MODE
という環境変数を作成します[次へ]: バインド >をクリックします
[次へ]: イングレス > をクリックします
(4) イングレスのセットアップ
イングレスセットアップ画面で以下を選択します。
イングレスを有効
(
Enable
)
にしますイングレスのトラフィックを
Accepting traffic from anywhere
にします(後ほど変更します)イングレスタイプを
HTTP
にしますターゲットポートを
8089
に設定します
(5) コンテナーアプリの作成
[Review + Create]をクリックしてから[Create]をクリックします。
数分後、コンテナーアプリが作成され自動的に起動します。
[リソースに移動]をクリックするとコンテナー環境に移動します。
(6) イングレス設定のカスタマイズ
Keeper Automatorサービスへの通信を制限するには、画面左側の [Ingress]リンクをクリックします。
[Ingress]をクリックします。
[Allow traffic from IPs configured below, deny all other traffic]を選択します。
[Add]をクリックしてKeeperの2つのIPとテストに必要なIPをどれか追加します。
[Save]をクリックします。
Keeperテナント地域 | IP1 | IP2 |
---|---|---|
US | 54.208.20.102/32 | 34.203.159.189/32 |
US GovCloud | 18.252.135.74/32 | 18.253.212.59/32 |
EU | 52.210.163.45/32 | 54.246.185.95/32 |
AU | 3.106.40.41/32 | 54.206.208.132/32 |
CA | 35.182.216.11/32 | 15.223.136.134/32 |
JP | 54.150.11.204/32 | 52.68.53.105/32 |
ヘルスチェックの実行をご希望の場合は、ご自身のIPアドレスを追加します。ご自身のIPアドレスについては、https://checkip.amazonaws.comにてご確認になれます。
(7) スケーリング、ヘルスプローブ、ボリュームマウントのセットアップ
Azureがゼロインスタンスにダウンスケールしないようにするには、インスタンスの最小数を1に設定することが重要となります。
[Scale and replicas]をクリックします。
[Edit and deploy]をクリックします。
[Scale]タブをクリックします。
とりあえずMinとmaxを両方1に設定します。
次に、[コンテナ]タブをクリックし、コンテナイメージ名をクリックします。
右上の[正常性プローブ]タブをクリックします。
[Liveness probes]で以下のように設定します。
liveness probesを有効(Enable)にします。
Transport(トランスポート):
HTTP
Path(パス):
/health
Port(ポート):
8089
Initial delay seconds:
5
Period seconds:
30
[Startup probes]で以下のように設定します。
startup probesを有効(Enable)にします。
Transport(トランスポート):
HTTP
Path(パス):
/health
Port(ポート):
8089
Initial delay seconds:
5
Period seconds:
30
[Volume Mounts]で以下のように設定します。
[Ephemeral Storage]を選択します。
automatordata
というボリューム名を追加します。Mount Pathを
/usr/mybin/config
にします。
設定を完了します。
[保存]
をクリックします。[
Create]
をクリックして新しい設定を作成します。数分後に新しいコンテナーが起動します。
(8) アプリケーションURLの取得
コンテナーアプリの概要の右側に、割り当てられた「アプリケーションURL」が表示されます。このURLをコピーして次の手順で使用します。
(例: https://craigautomator1.xyx-1234.azurecontainerapps.io)
(9) Keeper Commanderにログイン
Automator設定の最後の手順を行うのに、Keeper Commander が必要となります。どこからでも実行でき、サーバーにインストールする必要はありません。
ご利用のワークステーションまたはサーバーにKeeper Commander CLIをインストールします。 バイナリインストーラーを含むインストール手順については以下をご覧ください。
https://docs.keeper.io/secrets-manager/commander-cli/commander-installation-setup
Commanderをインストールした後、Commanderを起動するか既存の端末からkeeper shell
と入力してセッションを開いてから、login
コマンドを使用してログインします。Automator をセットアップするには、Keeper 管理者として、または SSOノードを管理する権限を持つ管理者としてログインする必要があります。
(10) Automatorの作成
automator create
で始まる一連のコマンドを使用してAutomatorを作成します。
ノード名 (この場合はAzure Cloud) は、以下のように管理コンソールUIから取得します。
コマンドの出力には、IDプロバイダからのメタデータを含むAutomator設定が表示されます。
URLはまだ入力されていないことにご留意ください。手順8のアプリケーションURLとなります。
以下のようにautomator editコマンドを実行します。これによりURLとスキルが設定されます(team
、 team_for_user
、device
)。
次にキーを交換します。Automator公開キーで暗号化されたエンタープライズ秘密キーがAutomator に提供されます。
新しい設定でAutomatorを初期化します。
サービスを有効にします。
この時点で設定は完了となります。
外部ヘルスチェックには以下のURLをご使用になれます。
https://<server>/health
以下はcurl
コマンドを使用した例です。
ユーザー体験のテスト
Keeper Automatorがデプロイされましたので、エンドユーザー体験のテストが可能です。ユーザーがSSO IDプロバイダーで認証した後は、承認を求めるプロンプトは必要ありません。
最も簡単なテスト方法は、ブラウザでシークレットモードのウィンドウを開いてKeeperウェブボルトへアクセスし、SSOクラウドでログインすることとなります。デバイスの承認を求めるプロンプトは表示されません。
高度な機能
Azure Container Appsにはこの資料には含まれていない多くの高度な機能があります。以下はその一部となります。
複数のコンテナーでのスケーリング
複数のコンテナでKeeper Automatorサービスを実行したい場合は以下を行います。
[Scale and replicas]をクリックします。
[Edit and deploy]をクリックします。
[Scale]タブをクリックします。
コンテナーの最小数および最大数を選択します。最小数は少なくとも1にします。
[Create]をクリックします。
1分後に新しいバージョンがデプロイされます。
コンテナーの数に応じて何度か
automator setup xxx
を実行します(コンテナーにつき1回)。コンテナーの数に応じて何度か
automator init xxx
を実行します(コンテナーにつき1回)。
ログ作成
Keeper Automatorのログは、「コンソール」または「ログストリーム」を使用して表示および監視できます。
たとえば、実行中のAutomatorサービスのログファイルを追跡するには以下のようにします。
コンソールをクリックします。
「/bin/sh」を選択します。
Connectをクリックします。
プロンプトが表示されると
tail -f logs/keeper-automator.log
と入力します。
高度な設定
環境変数をコンテナに渡してランタイム環境の機能を有効にしたり無効にしたりできます。変数およびその説明については、詳細設定ページをご覧ください。
最終更新