Azure Container Apps

Azureコンテナーアプリでのデプロイ

概要

本ページでは、KeeperオートメーターをAzure Container Appsサービスに公開するための手順を解説します。これにより、オートメーターサービスを簡単にクラウドでホストしていただけます。

Azure Government、GCC High、DoDなどの環境では、Azure Container Appsサービスがこれらのリージョンで利用できない可能性があるため、Azure App Services方式を使用します。

1. オートメーターConfigキーの作成

コマンドラインを開き、オペレーティングシステムに応じて次のいずれかの方法を使用してURLエンコード形式で256ビットAESキーを生成します。

キーの生成

openssl rand -base64 32

このコマンドによって生成される値を手順 3のために保存します。

Mac/Linuxで生成されたキー値の例
PowerShellで生成されたキー値の例

2. コンテナレジストリの作成

コンテナレジストリをまだお持ちでない場合は、以下のように新しく作成し、適切に構成する必要があります。

3. コンテナーアプリの作成

Azureから新しいコンテナーアプリを作成します。

  • 新しいリソースグループを選択または作成します。

  • コンテナアプリ名を「keeperautator」または任意の名前に設定します。

  • デプロイメントソースとして「コンテナイメージ」を選択します。

  • サービスをホストしたい地域を選択します。

  • 新しいアプリ環境を作成するか、既存の環境を選択します。

  • [次へ] をクリックします。

4. コンテナの詳細のセットアップ

「コンテナ」の手順では以下のように設定します。

  • [クイックスタートイメージを使用する] のチェックを外します

  • [Docker Hub または他のレジストリ] を選択します

  • [パブリック] を選択します

  • レジストリログインサーバーにdocker.ioを選択します

  • イメージを設定し、keeper/automator:latestとしてタグを付けます

  • 「Container resource allocation (コンテナリソース割り当て)」 に進みます

  • CPUとメモリについては、0.5 CPUコアと1Gi メモリで十分ですが、新しいデバイスのログイン量に基づいて変更できます

  • 上記の手順1の値を使用してAUTOMATOR_CONFIG_KEYという環境変数を作成します

  • 8089の値を使用してAUTOMATOR_PORTという環境変数を作成します

  • noneの値でSSL_MODEという環境変数を作成します

  • [次へ] をクリックします

5. イングレスのセットアップ

イングレスセットアップ画面で以下を選択します。

  • イングレスを有効 (Enable)にします

  • イングレスのトラフィックをAccepting traffic from anywhere にします (後ほど変更します)

  • イングレスタイプをHTTPにします

  • ターゲットポートを8089に設定します

6. コンテナアプリの作成

[Review + Create] をクリックしてから [Create] をクリックします。

数分後、コンテナアプリが作成され自動的に起動します。

[Go to Resource (リソースに移動)] をクリックするとコンテナ環境に移動します。

リソースに移動

7. イングレス設定のカスタマイズ

Keeperオートメーターサービスへの通信を制限するには、画面左側の [設定] セクションにある [Ingress] のリンクをクリックします。

  • [Ingress] をクリックします。

  • [Allow traffic from IPs configured below, deny all other traffic] を選択します。

  • [Add]をクリックしてKeeperの2つのIPとテストに必要なIPをどれか追加します。イングレス要件についてはこちらのページをご参照ください。

  • [Save] をクリックします。

ヘルスチェックの実行をご希望の場合は、ご自身のIPアドレスを追加します。ご自身のIPアドレスについては、https://checkip.amazonaws.comにてご確認になれます。

8. スケーリングの設定

  • [Application] から [Scale] セクションへ進み、[Min replicas][Max replicas] を1に設定します。

9. ボリュームの作成

  • [Application] > [Volume] を選択し、[+ 追加] をクリックします。

  • [Ephemeral Storage] (一時ストレージ) を選択し、任意の名前を付けて [Add] をクリックします。

  • [Save as a new revision] をクリックします。

10. ヘルスプローブとボリュームマウントのセットアップ

  • [Application][Revisions and replicas] セクションに移動します。

  • [Create new revision] をクリックします。

[Application] > [Revisions and replicas] をクリックし、新しいリビジョンがアクティブ化されるのを確認します。

  • 次に、[Container] タブをクリックします。

  • 下部にあるコンテナーイメージ名のリンク (この例では「keeperautomator」) をクリックします。

[Health Probes] に移動し、[Liveness probes] の箇所で以下のように設定します。

  • [Enable liveness probes] をチェック

  • Transport: HTTP

  • Path: /health

  • Port: 8089

  • Initial delay seconds: 5

  • Period seconds: 30

Liveness probes

[Startup probes] の箇所で以下のように設定します。

  • [Enable startup probes] をチェック

  • Transport: HTTP

  • Path: /health

  • Port: 8089

  • Initial delay seconds: 5

  • Period seconds: 30

[Volume Mounts] のタブで以下のように設定します。

  • [+ Add] を選択します。

  • 以前の手順で作成したボリュームを選択し、[Mount path] に「/usr/mybin/config」を追加します。

構成を完了します。

  • [Save] をクリックしてから [Create] をクリックして新しい構成をビルドします。 数分後、新しいコンテナが起動します。

11. アプリケーションURLの取得

リビジョンがアクティブ化が完了するまで待ちます。

コンテナーアプリの概要の右側に、割り当てられたアプリケーションURLが表示されます。このURLをコピーして次の手順で使用します。

(例: https://craigautomator1.xyx-1234.azurecontainerapps.io)

アプリケーションURLの取得

12. Keeperコマンダーにログイン

最後に、Keeperコマンダーが必要となります。どこからでも実行でき、サーバーにインストールする必要はありません。

ご利用のワークステーションまたはサーバーにKeeperコマンダーCLIをインストールします。 バイナリインストーラーを含むインストール手順についてはこちらのページをご覧ください。 コマンダーをインストールした後、コマンダーを起動するか既存の端末からkeeper shellと入力してセッションを開いてから、loginコマンドを使用してログインします。オートメーターをセットアップするには、Keeper管理者として、または SSOノードを管理する権限を持つ管理者としてログインする必要があります。

$ keeper shell

My Vault> login admin@company.com

  _  __  
 | |/ /___ ___ _ __  ___ _ _ 
 | ' </ -_) -_) '_ \/ -_) '_|
 |_|\_\___\___| .__/\___|_|
 v16.x.xxx    |_|

 password manager & digital vault

Logging in to Keeper Commander
Enter password for admin@company.com
Password: ********************
Successfully authenticated with Master Password
Syncing...
Decrypted [58] record(s)

My Vault>

10. オートメーターの作成

automator createで始まる一連のコマンドにノード名を使用してオートメーターを作成します。

My Vault> automator create --name="My Automator" --node="Azure Cloud"

ノード名 (この場合はAzure Cloud) は、以下のように管理コンソールUIから取得します。

Automatorの作成

コマンドの出力には、IDプロバイダからのメタデータを含むオートメーター設定が表示されます。

                    Automator ID: 1477468749950
                            Name: My Automator
                             URL: 
                         Enabled: No
                     Initialized: No
                          Skills: Device Approval

URLはまだ入力されていないことにご留意ください。手順8のアプリケーションURLとなります。

以下のようにautomator editコマンドを実行します。これによりURLとスキルが設定されます (teamteam_for_userdevice)。

automator edit --url https://<application URL> --skill=team --skill=team_for_user --skill=device "My Automator"

次にキーを交換します。オートメーター公開キーで暗号化されたエンタープライズ秘密キーがオートメーターに提供されます。

automator setup "My Automator"

新しい設定でオートメーターを初期化します。

automator init "My Automator"

サービスを有効にします。

automator enable "My Automator"

この時点で設定は完了となります。

外部ヘルスチェックには以下のURLをご使用になれます。

https://<server>/health

以下はcurlコマンドを使用した例です。

$ curl https://craigautomator1.xyz.azurecontainerapps.io/health
OK

ユーザー体験のテスト

Keeperオートメーターがデプロイされましたので、ユーザー体験をテストしてみましょう。ユーザーが SSO IDプロバイダで認証した後は、承認を求めるプロンプトが表示されなくなります。

最も簡単にテストするには、ブラウザでシークレットモードのウィンドウを開いてKeeperウェブボルトへアクセスし、SSOクラウドでログインしてみます。デバイスの承認を求めるプロンプトは表示されません。

高度な機能

Azureコンテナーアプリには本ページには含まれていない多くの高度な機能があります。以下はその一部となります。

複数のコンテナーでのスケーリング

複数のコンテナでKeeperオートメーターサービスを実行したい場合は以下を行います。

  • [Scale and replicas] をクリックします。

  • [Edit and deploy] をクリックします。

  • [Scale] タブをクリックします。

  • コンテナーの最小数および最大数を選択します。最小数は少なくとも1にします。

  • [Create] をクリックします。

  • 1分後に新しいバージョンがデプロイされます。

  • コンテナーの数に応じて何度かautomator setup xxxを実行します (コンテナーにつき1回)。

  • コンテナーの数に応じて何度かautomator init xxxを実行します (コンテナーにつき1回)。

ログ作成

Keeperオートメーターのログは、「コンソール」または「ログストリーム」を使用して表示および監視できます。

たとえば、実行中のオートメーターサービスのログファイルを追跡するには以下のようにします。

  • コンソールをクリックします。

  • 「/bin/sh」を選択します。

  • Connectをクリックします。

  • プロンプトが表示されるとtail -f logs/keeper-automator.logと入力します。

高度な設定

環境変数をコンテナに渡してランタイム環境の機能を有効にしたり無効にしたりできます。変数およびその説明については、高度な設定ページをご覧ください。

最終更新

役に立ちましたか?