你可以使用 Dapr CLI 或 Helm 在 Kubernetes 中部署 Dapr
For more information on what is deployed to your Kubernetes cluster read the Kubernetes overview
你可以在任何 Kubernetes 集群上安装 Dapr. 下面的链接可以提供帮助: 下面的链接可以提供帮助:
kubernetes.io/os=linux
的节点上。 如果你的应用程序有需要,你也可以将 Dapr 部署到 Windows 节点。 For more information see Deploying to a hybrid Linux/Windows Kubernetes cluster.You can install Dapr to a Kubernetes cluster using the Dapr CLI.
-k
标志在当前上下文中初始化 Kubernetes 集群上的 Dapr.
kubectl 上下文 (kubectl config kubectl config get-contexts)
以进行验证。 你可以使用 kubectl config use-context <CONTEXT>
来设置其他的上下文。在您的本地机器上运行以下命令,在您的集群上启动Dapr:
dapr init -k
⌛ Making the jump to hyperspace...
✅ Deploying the Dapr control plane to your cluster...
✅ Success! Dapr has been installed to namespace dapr-system. To verify, run "dapr status -k" in your terminal. To get started, go here: https://aka.ms/dapr-getting-started
初始化 Dapr 时默认的命名空间是dapr-system
。 你可以用 -n
标志来覆盖它。
dapr init -k -n mynamespace
You can run Dapr with 3 replicas of each control plane pod in the dapr-system namespace for production scenarios.
dapr init -k --enable-ha=true
Dapr is initialized by default with mTLS. 你可以用下面的命令关闭:
dapr init -k --enable-mtls=false
您可以使用 --want
标志来等待安装完成。
默认超时是 300s (5分钟),但可以使用 --timeout
标志自定义超时。
dapr init -k --wait --timeout 600
在您的本地机器上运行以下命令,以卸载你的集群上的 Dapr:
dapr uninstall -k
你可以使用 Helm 3 图表在 Kubernetes 上安装 Dapr 。
请确保你的机器已经安装了 Helm 3 。
添加 Helm 库并更新
helm repo add dapr https://dapr.github.io/helm-charts/
helm repo update
# See which chart versions are available
helm search repo dapr --devel --versions
将 Dapr 图表安装在你的集群的 dapr-system
命名空间中。
helm upgrade --install dapr dapr/dapr \
--version=1.2 \
--namespace dapr-system \
--create-namespace \
--wait
以高可用的方式安装:
helm upgrade --install dapr dapr/dapr \
--version=1.2 \
--namespace dapr-system \
--create-namespace \
--set global.ha.enabled=true \
--wait
See Guidelines for production ready deployments on Kubernetes for more information on installing and upgrading Dapr using Helm.
helm uninstall dapr --namespace dapr-system
当图表安装完成后,验证dapr-operator、dapr-placement、dapr-sidecar-injector和dapr-sentry 的pods是否在dapr-system
命名空间中运行。
kubectl get pods --namespace dapr-system
NAME READY STATUS RESTARTS AGE
dapr-dashboard-7bd6cbf5bf-xglsr 1/1 Running 0 40s
dapr-operator-7bd6cbf5bf-xglsr 1/1 Running 0 40s
dapr-placement-7f8f76778f-6vhl2 1/1 Running 0 40s
dapr-sidecar-injector-8555576b6f-29cqm 1/1 Running 0 40s
dapr-sentry-9435776c7f-8f7yd 1/1 Running 0 40s