- リリース ノート
- 要件
- インストール
- インストールについて
- サポート
- AI Fabric をアップグレードする
- AI Fabric 証明書を更新する
- 基本情報
- プロジェクト
- データセット
- ML パッケージ
- パイプライン
- ML スキル
- ML ログ
- AI Fabric での Document Understanding
- 基本的なトラブルシューティング ガイド
AI Fabric 証明書を更新する
インストール時には、自身の証明書を使用するか、手順をスキップして自己署名証明書を使用するかを選択できます。後から証明書を変更する必要がある場合は、以下の手順を実行します。
まず、証明書があることを確認します。SSL ファイルとプライベート キーを 2 つの別個のファイルとして持つ必要があります。
次に、AI Fabric の Linux マシンに接続して、以下のコマンドを実行します。
kubectl -n default annotate secret kotsadm-tls acceptAnonymousUploads=1
kubectl -n default annotate secret kotsadm-tls acceptAnonymousUploads=1
次に、kurl プロキシ サーバーを再起動します。そのためには、まず以下のコマンドを使用して、kurl プロキシ サーバーの名前を取得します。
kubectl get pods -A | grep kurl-proxy | awk '{print $2}'
kubectl get pods -A | grep kurl-proxy | awk '{print $2}'
kurl-proxy-kotsadm-XXX のような、kurl プロキシ サーバーの名前が出力されます。次に、このポッドを削除します (自動的に再起動されます)。
kubectl delete pods kurl-proxy-kotsadm-XXX
kubectl delete pods kurl-proxy-kotsadm-XXX
get pods コマンドを実行して、ポッドが再起動されたかどうかを確認できます。
kubectl get pods
kubectl get pods
ポッドの横に、1/1 および Running と表示されます。
準備が整ったら、構成マップを削除できます。
kubectl -n aifabric delete configmap is-client-config
kubectl -n aifabric delete configmap is-client-config
次に、KotsAdmin UI に接続します。URL は https://<aif-machine>:8800/tls のようになります。このページで、新しい証明書をアップロードできます (また、必要に応じて関連するドメイン名を変更することもできます)。
[Upload & continue] ボタンをクリックして、構成ページに移動します。必要に応じて HostIP/FQDN を変更して、新しいアクセス トークンを生成します。次に、保存ボタンをクリックし、プレフライト チェックが完了したら、デプロイ ボタンをクリックして AI Fabric アプリケーションを再デプロイします。インストールすると、AI Fabric で新しい証明書が使用されます。
AI Fabric を再デプロイしたら、以下のコマンドを実行して変更を反映させます。
kubectl -n istio-system rollout restart deployment istio-ingressgateway
kubectl -n istio-system rollout restart deployment istio-ingressgateway
20.10.2 以降、証明書は Cert Manager を使用してインストーラーで自動的に処理されます。ただし、最初に 20.10.1 をインストールした場合、証明書はいずれかの時点で期限が切れます。修正するには、以下の手順に従う必要があります。まず、新しいインストーラー バンドルをダウンロードして開きます (新しいバンドルのインストールは行いません)。
curl -O https://download.uipath.com/aifabric/online-installer/v2020.10.2/aifabric-installer-v20.10.2.tar.gz
tar -xvf aifabric-installer-v20.10.2.tar.gz
cd ./aifabric-installer-v20.10.2/infra/azure/aks-arm
curl -O https://download.uipath.com/aifabric/online-installer/v2020.10.2/aifabric-installer-v20.10.2.tar.gz
tar -xvf aifabric-installer-v20.10.2.tar.gz
cd ./aifabric-installer-v20.10.2/infra/azure/aks-arm
次に、以下のようなスクリプト ファイル update_cert.sh を作成します。
USER_EMAIL=<enter certificate owner email here>
sed -i "s/email.address@org.com/$USER_EMAIL/g" cert-manager-crd/letsencrypt-clusterissuer.yaml
INGRESS_HOST=$(kubectl -n istio-system get svc istio-ingressgateway -o json | jq -r ".status.loadBalancer.ingress[0].ip")
IP_NAME="$(az network public-ip list --query "[?ipAddress=='$INGRESS_HOST']|[0].name" | sed 's/"//g')"
INGRESS_DOMAIN="$(az network public-ip list --query "[?ipAddress=='$INGRESS_HOST']|[0].dnsSettings.fqdn" | sed 's/"//g')"
sed "s/{{INGRESS_DOMAIN}}/${INGRESS_DOMAIN}/g" cert-manager-crd/letsencrypt-istiocert.yaml > cert-manager-crd/letsencrypt-istiocert-temp.yaml
kubectl apply -f cert-manager-crd/letsencrypt-clusterissuer.yaml
kubectl apply -f cert-manager-crd/letsencrypt-istiocert-temp.yaml
kubectl -n istio-system \)\)
patch gateway istio-autogenerated-k8s-ingress --type=json \)\)
-p='[{"op": "replace", "path": "/spec/servers/1/tls", "value": {"credentialName": "aifabric-ingressgateway-certs", "mode": "SIMPLE", "privateKey": "sds", "serverCertificate": "sds"}}]'
kubectl -n istio-system rollout restart deployment istio-ingressgateway
USER_EMAIL=<enter certificate owner email here>
sed -i "s/email.address@org.com/$USER_EMAIL/g" cert-manager-crd/letsencrypt-clusterissuer.yaml
INGRESS_HOST=$(kubectl -n istio-system get svc istio-ingressgateway -o json | jq -r ".status.loadBalancer.ingress[0].ip")
IP_NAME="$(az network public-ip list --query "[?ipAddress=='$INGRESS_HOST']|[0].name" | sed 's/"//g')"
INGRESS_DOMAIN="$(az network public-ip list --query "[?ipAddress=='$INGRESS_HOST']|[0].dnsSettings.fqdn" | sed 's/"//g')"
sed "s/{{INGRESS_DOMAIN}}/${INGRESS_DOMAIN}/g" cert-manager-crd/letsencrypt-istiocert.yaml > cert-manager-crd/letsencrypt-istiocert-temp.yaml
kubectl apply -f cert-manager-crd/letsencrypt-clusterissuer.yaml
kubectl apply -f cert-manager-crd/letsencrypt-istiocert-temp.yaml
kubectl -n istio-system \)\)
patch gateway istio-autogenerated-k8s-ingress --type=json \)\)
-p='[{"op": "replace", "path": "/spec/servers/1/tls", "value": {"credentialName": "aifabric-ingressgateway-certs", "mode": "SIMPLE", "privateKey": "sds", "serverCertificate": "sds"}}]'
kubectl -n istio-system rollout restart deployment istio-ingressgateway
次に、以下のようにこのスクリプトを実行します。
./update_cert.sh
./update_cert.sh