メインコンテンツへスキップ
お客様のインフラで Human Plugin を実行する

お客様のネットワーク内に 1 つのコンテナと 1 つの PostgreSQL データベースを用意すれば、Unico に接続できます。

Markdown

要件​

要件詳細
コンテナランタイムDocker、Docker Compose、または Kubernetes。イメージは linux/amd64 と linux/arm64 向けにビルドされており、非 root で実行されます
PostgreSQLバージョン 16 以降。Human Plugin 専用のデータベースで、ユーザーとパスワードで接続できること。デフォルトで SSL が必須です
アウトバウンド HTTPSUnico への接続。ネットワークとセキュリティを参照してください
インバウンドポート 8080、プレーン HTTP、お客様のバックエンドからのみ
シークレットお客様のアクセスキーとデータベースのパスワード

ハードウェア要件​

800 KB までのセルフィーを使用し、1 分あたり最大 1,500 トランザクションで Human Plugin を実行するための最小構成です。

Human Plugin​

リソース最小
CPUレプリカあたり 1 vCPU
メモリレプリカあたり 1 GB

より多くのボリュームを処理する場合は、1 分あたり 1,500 トランザクションごとにレプリカを 1 つ追加してください。また、1 つが再起動している間も Human Plugin を利用し続けられるよう、複数のレプリカでの実行をおすすめします。

PostgreSQL​

リソース最小
バージョン16
CPU2 vCPU
メモリ4 GB
ディスクSSD

ディスク容量を見積もるには、1 プロセスあたり約 1.7 KB × 1 日あたりのプロセス数 × 保持日数を計算し、30% を加算してください。

ネットワーク​

Unico へのアウトバウンド HTTPS (ポート 443)。ネットワークとセキュリティを参照してください。

イメージ​

Human Plugin は pkg.unico.run/human-plugin-api:latest として公開されています。常に現在のリリースである latest タグを実行してください。Unico から提供されるレジストリの認証情報 (ユーザー名とトークン) を使ってプルします。前提条件とアクセスを参照してください。

デプロイの手順​

  1. 専用のデータベースと、Human Plugin 用のロールを作成します。
  2. シークレットストアのシークレットを使って、設定を行います。
  3. Docker Compose または Kubernetes でコンテナを起動します。停止タイムアウトは 60 秒以上にしてください。
  4. トラフィックをルーティングする前に、GET /health/ready が 200 を返すまで待ちます。ヘルスとモニタリングを参照してください。
  5. アクセスをお客様のバックエンドに限定します。ネットワークとセキュリティを参照してください。
  6. クイックスタートの作成リクエストを実行します。

起動時の動作​

Human Plugin は、属性カタログをダウンロードし、PostgreSQL に接続してテーブルを準備してから、ポートを開きます。次の場合は、リッスンを開始する前にエラーで停止します。

  • 必須の設定が不足している、または無効である。
  • 属性カタログをダウンロードできない。
  • PostgreSQL に到達できない、またはロールがテーブルを作成できない。

ログに理由が記録されます。トラブルシューティングを参照してください。

複数のインスタンス​

Human Plugin はリクエストの状態をメモリに保持しないため、複数のコンテナで 1 つのデータベースを共有できます。同時に起動したコンテナはデータベースを通じて調整し合うため、レプリカをまとめてロールアウトできます。

本番環境へ移行する前に​

  • 停止タイムアウトを 60 秒以上に保ちます。
  • /health/ready が 200 を返してから、コンテナにトラフィックをルーティングします。
  • Human Plugin をプライベートネットワークの外に公開しないでください。
  • データベースをバックアップします。データベースにはお客様のインテリジェンスが保存されています。運用を参照してください。