- 概要
- 要件
- インストール前
- インストール
- インストール後
- 移行とアップグレード
- 監視とアラート機能
- クラスターの管理
- 製品固有の設定
- トラブルシューティング

EKS/AKS の Automation Suite のインストール ガイド
Process Mining の前提条件を満たす
Process Mining の Dapr のインストールには、cert-manager が必要です。
cert-manager は Helm 経由でインストールできます。 インストールの手順については、 cert-manager のドキュメントをご覧ください。
-
cert-manager のロール バインディングを削除します。
# Verify if the role binding exists kubectl get rolebinding -n <uipath_namespace> | grep cert-manager # If it exists, delete it kubectl delete rolebinding <role-binding-name> -n <uipath_namespace>
# Verify if the role binding exists kubectl get rolebinding -n <uipath_namespace> | grep cert-manager # If it exists, delete it kubectl delete rolebinding <role-binding-name> -n <uipath_namespace> -
cert-manager ロールを削除します。
# Check if the role exists kubectl get role cert-manager -n <uipath_namespace> | grep cert-manager # If it exists, delete it kubectl delete role <cert-manamger-role> -n <uipath_namespace>
# Check if the role exists kubectl get role cert-manager -n <uipath_namespace> | grep cert-manager # If it exists, delete it kubectl delete role <cert-manamger-role> -n <uipath_namespace> -
名前空間内の cert-manager リソースをクリーンアップします。
# Delete all certificates kubectl delete certificates.cert-manager.io --all -n <uipath_namespace> # Delete all issuers kubectl delete issuers.cert-manager.io --all -n <uipath_namespace> # Delete all clusterissuers if you created any kubectl delete clusterissuers.cert-manager.io --all
# Delete all certificates kubectl delete certificates.cert-manager.io --all -n <uipath_namespace> # Delete all issuers kubectl delete issuers.cert-manager.io --all -n <uipath_namespace> # Delete all clusterissuers if you created any kubectl delete clusterissuers.cert-manager.io --all -
クラスターから cert-manager をアンインストールし、他の名前空間の手順 1、2、3 に従って名前空間または残りの証明書リソースを削除します。また、cert-manager が他のコンポーネントで使用されていない場合は、相互検証します。
-
残りのリソースを確認します。
# Check for any remaining cert-manager resources kubectl get all -n <uipath_namespace> | grep cert-manager kubectl get crd | grep cert-manager
# Check for any remaining cert-manager resources kubectl get all -n <uipath_namespace> | grep cert-manager kubectl get crd | grep cert-manager
特定のリソースを削除できない場合は、次のようにします。
-
必要な権限があることを確認します。
-
リソースが他のアプリケーションによって使用されているかどうかを確認します。
-
[終了中] ステートでスタックしているリソースについては、ファイナライザーの削除が必要になる場合があります。
次の Bash スクリプトを使用して、アプリケーションの YAML ファイルを生成することもできます。
#!/bin/bash
echo "Enter the namespace of argocd applications"
read argocd_namespace
echo "Enter the name of uipath namespace"
read uipath_namespace
if [[ "${argocd_namespace}" == "openshift-gitops" ]]; then
echo "Enter the argocd project name"
read project
else
project="default"
fi
echo "Enter the registry fqdn"
read registry_fqdn
echo "Enter the DAPR helm chart version"
read dapr_version
echo "-------------------- SUMMARY --------------------"
echo "Argocd Application namespace : $argocd_namespace"
echo "Uipath namespace : $uipath_namespace"
echo "Argocd Project name : $project"
echo "Helm registry FQDN : $registry_fqdn"
echo "DAPR Version : $dapr_version"
echo "------------- Application yaml file-------------"
echo -n "apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: dapr
namespace: $argocd_namespace
spec:
destination:
namespace: $uipath_namespace
server: https://kubernetes.default.svc
ignoreDifferences:
- jsonPointers:
- /data
- /stringData
- /metadata
kind: Secret
- group: apiextensions.k8s.io
jsonPointers:
- /spec/conversion
kind: CustomResourceDefinition
- group: admissionregistration.k8s.io
jsonPointers:
- /webhooks
kind: MutatingWebhookConfiguration
project: $project
source:
chart: helm/dapr
helm:
valueFiles:
- values.yaml
values: |
global:
registry: $registry_fqdn/daprio
imagePullSecrets: uipathpullsecret
mtls:
enabled: true
prometheus:
enabled: false
logAsJson: true
actors:
enabled: false
ha:
enabled: false
replicaCount: 1
rbac:
namespaced: true
seccompProfile: RuntimeDefault
dapr_dashboard:
enabled: false
dapr_operator:
watchInterval: 1m
resources:
requests:
cpu: 100m
memory: 100Mi
limits:
cpu: "1"
memory: 200Mi
watchNamespace: $uipath_namespace
deploymentAnnotations:
sidecar.istio.io/inject: "false"
dapr_sidecar_injector:
allowedServiceAccounts: $uipath_namespace:default
resources:
requests:
cpu: 100m
memory: 30Mi
limits:
cpu: "1"
memory: 100Mi
sidecarDropALLCapabilities: true
deploymentAnnotations:
sidecar.istio.io/inject: "false"
dapr_sentry:
resources:
requests:
cpu: 100m
memory: 30Mi
limits:
cpu: "1"
memory: 100Mi
deploymentAnnotations:
sidecar.istio.io/inject: "false"
dapr_rbac:
secretReader:
enabled: false
createClusterScopedObjects: true
repoURL: $registry_fqdn
targetRevision: $dapr_version
syncPolicy:
automated:
prune: true
selfHeal: true
retry:
backoff:
duration: 10s
factor: 2
maxDuration: 1m
limit: 1000
syncOptions:
- CreateNamespace=true
- RespectIgnoreDifferences=true"
#!/bin/bash
echo "Enter the namespace of argocd applications"
read argocd_namespace
echo "Enter the name of uipath namespace"
read uipath_namespace
if [[ "${argocd_namespace}" == "openshift-gitops" ]]; then
echo "Enter the argocd project name"
read project
else
project="default"
fi
echo "Enter the registry fqdn"
read registry_fqdn
echo "Enter the DAPR helm chart version"
read dapr_version
echo "-------------------- SUMMARY --------------------"
echo "Argocd Application namespace : $argocd_namespace"
echo "Uipath namespace : $uipath_namespace"
echo "Argocd Project name : $project"
echo "Helm registry FQDN : $registry_fqdn"
echo "DAPR Version : $dapr_version"
echo "------------- Application yaml file-------------"
echo -n "apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: dapr
namespace: $argocd_namespace
spec:
destination:
namespace: $uipath_namespace
server: https://kubernetes.default.svc
ignoreDifferences:
- jsonPointers:
- /data
- /stringData
- /metadata
kind: Secret
- group: apiextensions.k8s.io
jsonPointers:
- /spec/conversion
kind: CustomResourceDefinition
- group: admissionregistration.k8s.io
jsonPointers:
- /webhooks
kind: MutatingWebhookConfiguration
project: $project
source:
chart: helm/dapr
helm:
valueFiles:
- values.yaml
values: |
global:
registry: $registry_fqdn/daprio
imagePullSecrets: uipathpullsecret
mtls:
enabled: true
prometheus:
enabled: false
logAsJson: true
actors:
enabled: false
ha:
enabled: false
replicaCount: 1
rbac:
namespaced: true
seccompProfile: RuntimeDefault
dapr_dashboard:
enabled: false
dapr_operator:
watchInterval: 1m
resources:
requests:
cpu: 100m
memory: 100Mi
limits:
cpu: "1"
memory: 200Mi
watchNamespace: $uipath_namespace
deploymentAnnotations:
sidecar.istio.io/inject: "false"
dapr_sidecar_injector:
allowedServiceAccounts: $uipath_namespace:default
resources:
requests:
cpu: 100m
memory: 30Mi
limits:
cpu: "1"
memory: 100Mi
sidecarDropALLCapabilities: true
deploymentAnnotations:
sidecar.istio.io/inject: "false"
dapr_sentry:
resources:
requests:
cpu: 100m
memory: 30Mi
limits:
cpu: "1"
memory: 100Mi
deploymentAnnotations:
sidecar.istio.io/inject: "false"
dapr_rbac:
secretReader:
enabled: false
createClusterScopedObjects: true
repoURL: $registry_fqdn
targetRevision: $dapr_version
syncPolicy:
automated:
prune: true
selfHeal: true
retry:
backoff:
duration: 10s
factor: 2
maxDuration: 1m
limit: 1000
syncOptions:
- CreateNamespace=true
- RespectIgnoreDifferences=true"
先に進む前に、次の情報を収集する必要があります。
-
Dapr がインストールされている UiPath 名前空間。
-
ArgoCD 名前空間 (通常は
argocd
またはopenshift-gitops
)。
-
ArgoCD から Dapr アプリケーションを削除します。
# Verify the application exists first kubectl get application.argoproj.io dapr -n <argocd_namespace> # If it exists, delete it kubectl delete application.argoproj.io dapr -n <argocd_namespace>
# Verify the application exists first kubectl get application.argoproj.io dapr -n <argocd_namespace> # If it exists, delete it kubectl delete application.argoproj.io dapr -n <argocd_namespace>リソースが削除されるのを待ちます。
-
Dapr カスタム リソースを削除します。
# Delete all Dapr components in the UiPath namespace kubectl delete components.dapr.io --all -n <uipath_namespace> # Delete all Dapr configurations in the UiPath namespace kubectl delete configurations.dapr.io --all -n <uipath_namespace> # Delete all Dapr resiliencies in the UiPath namespace kubectl delete resiliencies.dapr.io --all -n <uipath_namespace> # Delete all Dapr subscriptions in the UiPath namespace kubectl delete subscriptions.dapr.io --all -n <uipath_namespace>
# Delete all Dapr components in the UiPath namespace kubectl delete components.dapr.io --all -n <uipath_namespace> # Delete all Dapr configurations in the UiPath namespace kubectl delete configurations.dapr.io --all -n <uipath_namespace> # Delete all Dapr resiliencies in the UiPath namespace kubectl delete resiliencies.dapr.io --all -n <uipath_namespace> # Delete all Dapr subscriptions in the UiPath namespace kubectl delete subscriptions.dapr.io --all -n <uipath_namespace> -
Dapr カスタム リソース定義 (CRD) を削除します。
# Delete Dapr CRDs kubectl delete crd components.dapr.io kubectl delete crd configurations.dapr.io kubectl delete crd resiliencies.dapr.io kubectl delete crd subscriptions.dapr.io
# Delete Dapr CRDs kubectl delete crd components.dapr.io kubectl delete crd configurations.dapr.io kubectl delete crd resiliencies.dapr.io kubectl delete crd subscriptions.dapr.io -
Dapr Webhook 構成を削除します。
# Delete the Dapr sidecar injector webhook kubectl delete mutatingwebhookconfigurations dapr-sidecar-injector
# Delete the Dapr sidecar injector webhook kubectl delete mutatingwebhookconfigurations dapr-sidecar-injector -
Dapr 固有のロール バインドを削除する
# Verify if the role binding exists kubectl get rolebinding -n <uipath_namespace> | grep dapr # If it exists, delete dapr specific role binding kubectl delete rolebinding <dapr-role-binding> -n <uipath_namespace>
# Verify if the role binding exists kubectl get rolebinding -n <uipath_namespace> | grep dapr # If it exists, delete dapr specific role binding kubectl delete rolebinding <dapr-role-binding> -n <uipath_namespace> -
Dapr 固有のロールを削除します。
# Check if the dapr-creator role exists kubectl get role -n <uipath_namespace> | grep dapr # If it exists, delete dapr specific rolekubectl delete role <dapr-role> -n <uipath_namespace>
# Check if the dapr-creator role exists kubectl get role -n <uipath_namespace> | grep dapr # If it exists, delete dapr specific rolekubectl delete role <dapr-role> -n <uipath_namespace> -
残りの Dapr リソースをクリーンアップする
-
ポッド:
# List all Dapr-related pods kubectl get pods -n <uipath_namespace> | grep dapr # Delete each Dapr pod if any kubectl delete pod <pod_name> -n <uipath_namespace>
# List all Dapr-related pods kubectl get pods -n <uipath_namespace> | grep dapr # Delete each Dapr pod if any kubectl delete pod <pod_name> -n <uipath_namespace> -
サービス:
# List all Dapr-related services kubectl get svc -n <uipath_namespace> | grep dapr # Delete each Dapr service if any kubectl delete svc <service_name> -n <uipath_namespace>
# List all Dapr-related services kubectl get svc -n <uipath_namespace> | grep dapr # Delete each Dapr service if any kubectl delete svc <service_name> -n <uipath_namespace> -
展開:
# List all Dapr-related deployments kubectl get deployments -n <uipath_namespace> | grep dapr # Delete each Dapr deployment kubectl delete deployment <deployment_name> -n <uipath_namespace>
# List all Dapr-related deployments kubectl get deployments -n <uipath_namespace> | grep dapr # Delete each Dapr deployment kubectl delete deployment <deployment_name> -n <uipath_namespace>
-
すべてのアンインストール手順が完了したら、すべての Dapr コンポーネントが削除されていることを確認します。
# Check for any remaining Dapr resources
kubectl get pods -n <uipath_namespace> | grep dapr
kubectl get svc -n <uipath_namespace> | grep dapr
kubectl get deployments -n <uipath_namespace> | grep dapr
kubectl get crd | grep dapr
# Check for any remaining Dapr resources
kubectl get pods -n <uipath_namespace> | grep dapr
kubectl get svc -n <uipath_namespace> | grep dapr
kubectl get deployments -n <uipath_namespace> | grep dapr
kubectl get crd | grep dapr
特定のリソースを削除できない場合は、次のようにします。
-
必要な権限があることを確認します。
-
リソースが別のコントローラによって管理されているかどうかを確認します。
-
削除を妨げている可能性のある依存関係を調査します。