mirror of https://github.com/dapr/docs.git
Merge pull request #680 from wcs1only/master
Added docs for installing dapr to hybrid windows/linux clusters (#679)
This commit is contained in:
commit
bdd1223aa7
|
@ -145,6 +145,11 @@ You can install Dapr on any Kubernetes cluster. Here are some helpful links:
|
|||
- [Setup Google Cloud Kubernetes Engine](https://cloud.google.com/kubernetes-engine/docs/quickstart)
|
||||
- [Setup Amazon Elastic Kubernetes Service](https://docs.aws.amazon.com/eks/latest/userguide/getting-started.html)
|
||||
|
||||
> **Note:** The dapr control plane containers are curently only distributed on linux containers.
|
||||
> Your kubernetes cluser must contain available Linux capable nodes.
|
||||
> Both the dapr cli, and the dapr helm chart will automatically deploy with affinity for nodes with the label kubernetes.io/os=linux.
|
||||
> For more information see [Deploying to a Hybrid Linux/Windows K8s Cluster](../howto/hybrid-clusters/)
|
||||
|
||||
### Using the Dapr CLI
|
||||
|
||||
You can install Dapr to a Kubernetes cluster using CLI.
|
||||
|
|
|
@ -89,6 +89,7 @@ For Actors How Tos see the SDK documentation
|
|||
|
||||
* [Sidecar configuration on Kubernetes](./configure-k8s)
|
||||
* [Autoscale on Kubernetes using KEDA and Dapr bindings](./autoscale-with-keda)
|
||||
* [Deploy to hybrid Linux/Windows Kubernetes clusters](./hybrid-clusters)
|
||||
|
||||
## Developer tooling
|
||||
### Using Visual Studio Code
|
||||
|
|
|
@ -0,0 +1,34 @@
|
|||
# Deploy to hybrid Linux/Windows Kubernetes clusters
|
||||
|
||||
Deploying Dapr to a Kubernetes cluster that contains both Windows and Linux nodes has known limitiations. All Dapr control plane components must be run exclusively on Linux enabled nodes. The same is currently true for all Dapr applications. Thus when deploying to hybrid Kubernetes clusters you will need to ensure that Kubernetes knows to place your application containers exclusively on Linux enabled nodes.
|
||||
|
||||
> **Note:** Windows container support for Dapr applications is in progress. Please see: [dapr/dapr#842](https://github.com/dapr/dapr/issues/842).
|
||||
|
||||
## Installing the Dapr Control Plane
|
||||
|
||||
If you are installing using the Dapr CLI or via a helm chart, simply follow the normal deployment procedures:
|
||||
[Installing Dapr on a Kubernetes cluster](../../getting-started/environment-setup.md#installing-Dapr-on-a-kubernetes-cluster)
|
||||
|
||||
Affinity will be automatically set for kubernetes.io/os=linux. If you need to override Linux to another value, you can do so by setting:
|
||||
|
||||
```
|
||||
helm install dapr dapr/dapr --set global.daprControlPlaneOs=YOUR_OS
|
||||
```
|
||||
|
||||
Dapr control plane container images are only provided for Linux, so you shouldn't need to do this unless you really know what you are doing.
|
||||
|
||||
## Installing Dapr applications
|
||||
The Dapr sidecar container is currently Linux only. For this reason, if you are writing a Dapr application, you must run it in a Linux container.
|
||||
|
||||
When deploying to a hybrid cluster, you must configure your applications to be deployed to only Linux available nodes. One of the simplest ways to do this is to add kubernetes.io/os=linux to your app's nodeSelector.
|
||||
|
||||
```yaml
|
||||
spec:
|
||||
nodeSelector:
|
||||
kubernetes.io/os: linux
|
||||
```
|
||||
|
||||
## Related links
|
||||
|
||||
- See the [official Kubernetes documentation](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/) for examples of more advanced configuration via node affinity
|
||||
|
Loading…
Reference in New Issue