diff --git a/daprdocs/assets/icons/logo-black.svg b/daprdocs/assets/icons/logo-black.svg new file mode 100644 index 000000000..6816cf01b --- /dev/null +++ b/daprdocs/assets/icons/logo-black.svg @@ -0,0 +1,15 @@ + + + + dark on white + Created with Sketch. + + + + + + + + + + \ No newline at end of file diff --git a/daprdocs/assets/icons/logo-blue.svg b/daprdocs/assets/icons/logo-blue.svg new file mode 100644 index 000000000..f87fe64c3 --- /dev/null +++ b/daprdocs/assets/icons/logo-blue.svg @@ -0,0 +1,15 @@ + + + + logo large + Created with Sketch. + + + + + + + + + + \ No newline at end of file diff --git a/daprdocs/content/en/concepts/building-blocks-concept.md b/daprdocs/content/en/concepts/building-blocks-concept.md index 111c8fc16..f310910ce 100644 --- a/daprdocs/content/en/concepts/building-blocks-concept.md +++ b/daprdocs/content/en/concepts/building-blocks-concept.md @@ -24,6 +24,6 @@ The following are the building blocks provided by Dapr: | [**State management**]({{}}) | `/v1.0/state` | Application state is anything an application wants to preserve beyond a single session. Dapr provides a key/value-based state API with pluggable state stores for persistence. | [**Publish and subscribe**]({{}}) | `/v1.0/publish` `/v1.0/subscribe`| Pub/Sub is a loosely coupled messaging pattern where senders (or publishers) publishes messages to a topic, to which subscribers subscribe. Dapr supports the pub/sub pattern between applications. | [**Resource bindings**]({{}}) | `/v1.0/bindings` | A binding provides a bi-directional connection to an external cloud/on-premise service or system. Dapr allows you to invoke the external service through the Dapr binding API, and it allows your application to be triggered by events sent by the connected service. -| [**Actors**]({{}}) | `/v1.0/actors` | An actor is an isolated, independent unit of compute and state with single-threaded execution. Dapr provides an actor implementation based on the Virtual Actor pattern which provides a single-threaded programming model and where actors are garbage collected when not in use. See [Actor Overview](./actors#understanding-actors) +| [**Actors**]({{}}) | `/v1.0/actors` | An actor is an isolated, independent unit of compute and state with single-threaded execution. Dapr provides an actor implementation based on the Virtual Actor pattern which provides a single-threaded programming model and where actors are garbage collected when not in use. | [**Observability**]({{}}) | `N/A` | Dapr system components and runtime emit metrics, logs, and traces to debug, operate and monitor Dapr system services, components and user applications. | [**Secrets**]({{}}) | `/v1.0/secrets` | Dapr offers a secrets building block API and integrates with secret stores such as Azure Key Vault and Kubernetes to store the secrets. Service code can call the secrets API to retrieve secrets out of the Dapr supported secret stores. diff --git a/daprdocs/content/en/concepts/security-concept.md b/daprdocs/content/en/concepts/security-concept.md index dd097337e..4eef5676b 100644 --- a/daprdocs/content/en/concepts/security-concept.md +++ b/daprdocs/content/en/concepts/security-concept.md @@ -112,7 +112,7 @@ Threat modeling is a process by which potential threats, such as structural vuln ### February 2021 -In February 2021, Dapr has gone a 2nd security audit targetting it's 1.0 release by Cure53. +In February 2021, Dapr has gone through a 2nd security audit targetting it's 1.0 release by Cure53. The test focused on the following: * Dapr runtime code base evaluation since last audit diff --git a/daprdocs/content/en/developing-applications/building-blocks/pubsub/howto-publish-subscribe.md b/daprdocs/content/en/developing-applications/building-blocks/pubsub/howto-publish-subscribe.md index affecfbf8..96d81bc5f 100644 --- a/daprdocs/content/en/developing-applications/building-blocks/pubsub/howto-publish-subscribe.md +++ b/daprdocs/content/en/developing-applications/building-blocks/pubsub/howto-publish-subscribe.md @@ -367,7 +367,7 @@ dapr run --app-id testpubsub --dapr-http-port 3500 Then publish a message to the `deathStarStatus` topic: ```bash -dapr publish --publish-app-id testpubapp --pubsub pubsub --topic deathStarStatus --data '{"status": "completed"}' +dapr publish --publish-app-id testpubsub --pubsub pubsub --topic deathStarStatus --data '{"status": "completed"}' ``` {{% /codetab %}} diff --git a/daprdocs/content/en/operations/components/setup-bindings/supported-bindings/_index.md b/daprdocs/content/en/operations/components/setup-bindings/supported-bindings/_index.md index e07b2c3b8..692149ac5 100644 --- a/daprdocs/content/en/operations/components/setup-bindings/supported-bindings/_index.md +++ b/daprdocs/content/en/operations/components/setup-bindings/supported-bindings/_index.md @@ -29,6 +29,7 @@ Table captions: | [InfluxDB]({{< ref influxdb.md >}}) | | ✅ | Alpha | v1 | 1.0 | | [Kafka]({{< ref kafka.md >}}) | ✅ | ✅ | Alpha | v1 | 1.0 | | [Kubernetes Events]({{< ref "kubernetes-binding.md" >}}) | ✅ | | Alpha | v1 | 1.0 | +| [Local Storage]({{< ref localstorage.md >}}) | | ✅ | Alpha | v1 | 1.1 | | [MQTT]({{< ref mqtt.md >}}) | ✅ | ✅ | Alpha | v1 | 1.0 | | [MySQL]({{< ref mysql.md >}}) | | ✅ | Alpha | v1 | 1.0 | | [PostgreSql]({{< ref postgres.md >}}) | | ✅ | Alpha | v1 | 1.0 | diff --git a/daprdocs/content/en/operations/components/setup-bindings/supported-bindings/gcpbucket.md b/daprdocs/content/en/operations/components/setup-bindings/supported-bindings/gcpbucket.md index e52a252cb..b00f19822 100644 --- a/daprdocs/content/en/operations/components/setup-bindings/supported-bindings/gcpbucket.md +++ b/daprdocs/content/en/operations/components/setup-bindings/supported-bindings/gcpbucket.md @@ -70,6 +70,85 @@ This component supports **output binding** with the following operations: - `create` +### Create file + +To perform a create operation, invoke the GCP Storage Bucket binding with a `POST` method and the following JSON body: + +> Note: by default, a random UUID is generated. See below for Metadata support to set the name + +```json +{ + "operation": "create", + "data": "YOUR_CONTENT" +} +``` + +#### Examples + + +##### Save text to a random generated UUID file + +{{< tabs Windows Linux >}} + {{% codetab %}} + On Windows, utilize cmd prompt (PowerShell has different escaping mechanism) + ```bash + curl -d "{ \"operation\": \"create\", \"data\": \"Hello World\" }" http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + + {{% codetab %}} + ```bash + curl -d '{ "operation": "create", "data": "Hello World" }' \ + http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + +{{< /tabs >}} + +##### Save text to a specific file + +{{< tabs Windows Linux >}} + + {{% codetab %}} + ```bash + curl -d "{ \"operation\": \"create\", \"data\": \"Hello World\", \"metadata\": { \"name\": \"my-test-file.txt\" } }" \ + http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + + {{% codetab %}} + ```bash + curl -d '{ "operation": "create", "data": "Hello World", "metadata": { "name": "my-test-file.txt" } }' \ + http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + +{{< /tabs >}} + + +##### Upload a file + +To upload a file, pass the file contents as the data payload; you may want to encode this in e.g. Base64 for binary content. + +Then you can upload it as you would normally: + +{{< tabs Windows Linux >}} + + {{% codetab %}} + ```bash + curl -d "{ \"operation\": \"create\", \"data\": \"(YOUR_FILE_CONTENTS)\", \"metadata\": { \"name\": \"my-test-file.jpg\" } }" http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + + {{% codetab %}} + ```bash + curl -d '{ "operation": "create", "data": "$(cat my-test-file.jpg)", "metadata": { "name": "my-test-file.jpg" } }' \ + http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + +{{< /tabs >}} + ## Related links - [Basic schema for a Dapr component]({{< ref component-schema >}}) diff --git a/daprdocs/content/en/operations/components/setup-bindings/supported-bindings/localstorage.md b/daprdocs/content/en/operations/components/setup-bindings/supported-bindings/localstorage.md new file mode 100644 index 000000000..7268b2bd9 --- /dev/null +++ b/daprdocs/content/en/operations/components/setup-bindings/supported-bindings/localstorage.md @@ -0,0 +1,266 @@ +--- +type: docs +title: "Local Storage binding spec" +linkTitle: "Local Storage" +description: "Detailed documentation on the Local Storage binding component" +--- + +## Component format + +To set up the Local Storage binding, create a component of type `bindings.localstorage`. See [this guide]({{< ref "howto-bindings.md#1-create-a-binding" >}}) on how to create and apply a binding configuration. + + +```yaml +apiVersion: dapr.io/v1alpha1 +kind: Component +metadata: + name: + namespace: +spec: + type: bindings.localstorage + version: v1 + metadata: + - name: rootPath + value: +``` + +## Spec metadata fields + +| Field | Required | Binding support | Details | Example | +|--------------------|:--------:|--------|---------|---------| +| rootPath | Y | Input / Output | The root path anchor to which files can be read / saved | `"/temp/files"` | + +## Binding support + +This component supports **output binding** with the following operations: + +- `create` : [Create file](#create-file) +- `get` : [Get file](#get-file) +- `list` : [List files](#list-files) +- `delete` : [Delete file](#delete-file) + +### Create file + +To perform a create file operation, invoke the Local Storage binding with a `POST` method and the following JSON body: + +> Note: by default, a random UUID is generated. See below for Metadata support to set the name + +```json +{ + "operation": "create", + "data": "YOUR_CONTENT" +} +``` + +#### Examples + + +##### Save text to a random generated UUID file + +{{< tabs Windows Linux >}} + {{% codetab %}} + On Windows, utilize cmd prompt (PowerShell has different escaping mechanism) + ```bash + curl -d "{ \"operation\": \"create\", \"data\": \"Hello World\" }" http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + + {{% codetab %}} + ```bash + curl -d '{ "operation": "create", "data": "Hello World" }' \ + http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + +{{< /tabs >}} + +##### Save text to a specific file + +{{< tabs Windows Linux >}} + + {{% codetab %}} + ```bash + curl -d "{ \"operation\": \"create\", \"data\": \"Hello World\", \"metadata\": { \"fileName\": \"my-test-file.txt\" } }" \ + http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + + {{% codetab %}} + ```bash + curl -d '{ "operation": "create", "data": "Hello World", "metadata": { "fileName": "my-test-file.txt" } }' \ + http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + +{{< /tabs >}} + + +##### Save a binary file + +To upload a file, encode it as Base64. The binding should automatically detect the Base64 encoding. + +{{< tabs Windows Linux >}} + + {{% codetab %}} + ```bash + curl -d "{ \"operation\": \"create\", \"data\": \"YOUR_BASE_64_CONTENT\", \"metadata\": { \"fileName\": \"my-test-file.jpg\" } }" http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + + {{% codetab %}} + ```bash + curl -d '{ "operation": "create", "data": "YOUR_BASE_64_CONTENT", "metadata": { "fileName": "my-test-file.jpg" } }' \ + http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + +{{< /tabs >}} + +#### Response + +The response body will contain the following JSON: + +```json +{ + "fileName": "" +} + +``` + +### Get file + +To perform a get file operation, invoke the Local Storage binding with a `POST` method and the following JSON body: + +```json +{ + "operation": "get", + "metadata": { + "fileName": "myfile" + } +} +``` + +#### Example + +{{< tabs Windows Linux >}} + + {{% codetab %}} + ```bash + curl -d '{ \"operation\": \"get\", \"metadata\": { \"fileName\": \"myfile\" }}' http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + + {{% codetab %}} + ```bash + curl -d '{ "operation": "get", "metadata": { "fileName": "myfile" }}' \ + http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + +{{< /tabs >}} + +#### Response + +The response body contains the value stored in the file. + +### List files + +To perform a list files operation, invoke the Local Storage binding with a `POST` method and the following JSON body: + +```json +{ + "operation": "list" +} +``` + +If you only want to list the files beneath a particular directory below the `rootPath`, specify the relative directory name as the `fileName` in the metadata. + +```json +{ + "operation": "list", + "metadata": { + "fileName": "my/cool/directory" + } +} +``` + +#### Example + +{{< tabs Windows Linux >}} + + {{% codetab %}} + ```bash + curl -d '{ \"operation\": \"list\", \"metadata\": { \"fileName\": \"my/cool/directory\" }}' http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + + {{% codetab %}} + ```bash + curl -d '{ "operation": "list", "metadata": { "fileName": "my/cool/directory" }}' \ + http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + +{{< /tabs >}} + +#### Response + +The response is a JSON array of file names. + +### Delete file + +To perform a delete file operation, invoke the Local Storage binding with a `POST` method and the following JSON body: + +```json +{ + "operation": "delete", + "metadata": { + "fileName": "myfile" + } +} +``` + +#### Example + +{{< tabs Windows Linux >}} + + {{% codetab %}} + ```bash + curl -d '{ \"operation\": \"delete\", \"metadata\": { \"fileName\": \"myfile\" }}' http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + + {{% codetab %}} + ```bash + curl -d '{ "operation": "delete", "metadata": { "fileName": "myfile" }}' \ + http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + +{{< /tabs >}} + +#### Response + +An HTTP 204 (No Content) and empty body will be returned if successful. + +## Metadata information + +By default the Local Storage output binding auto generates a UUID as the file name. It is configurable in the metadata property of the message. + +```json +{ + "data": "file content", + "metadata": { + "fileName": "filename.txt" + }, + "operation": "create" +} +``` + +## Related links + +- [Basic schema for a Dapr component]({{< ref component-schema >}}) +- [Bindings building block]({{< ref bindings >}}) +- [How-To: Trigger application with input binding]({{< ref howto-triggers.md >}}) +- [How-To: Use bindings to interface with external resources]({{< ref howto-bindings.md >}}) +- [Bindings API reference]({{< ref bindings_api.md >}}) diff --git a/daprdocs/content/en/operations/components/setup-bindings/supported-bindings/s3.md b/daprdocs/content/en/operations/components/setup-bindings/supported-bindings/s3.md index deaaf0add..e38dc221d 100644 --- a/daprdocs/content/en/operations/components/setup-bindings/supported-bindings/s3.md +++ b/daprdocs/content/en/operations/components/setup-bindings/supported-bindings/s3.md @@ -29,8 +29,8 @@ spec: value: ***************** - name: secretKey value: ***************** - - name: bucket - value: mybucket + - name: sessionToken + value: mysession ``` {{% alert title="Warning" color="warning" %}} @@ -54,6 +54,85 @@ This component supports **output binding** with the following operations: - `create` +### Create file + +To perform a create operation, invoke the AWS S3 binding with a `POST` method and the following JSON body: + +> Note: by default, a random UUID is generated. See below for Metadata support to set the name + +```json +{ + "operation": "create", + "data": "YOUR_CONTENT" +} +``` + +#### Examples + + +##### Save text to a random generated UUID file + +{{< tabs Windows Linux >}} + {{% codetab %}} + On Windows, utilize cmd prompt (PowerShell has different escaping mechanism) + ```bash + curl -d "{ \"operation\": \"create\", \"data\": \"Hello World\" }" http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + + {{% codetab %}} + ```bash + curl -d '{ "operation": "create", "data": "Hello World" }' \ + http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + +{{< /tabs >}} + +##### Save text to a specific file + +{{< tabs Windows Linux >}} + + {{% codetab %}} + ```bash + curl -d "{ \"operation\": \"create\", \"data\": \"Hello World\", \"metadata\": { \"key\": \"my-test-file.txt\" } }" \ + http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + + {{% codetab %}} + ```bash + curl -d '{ "operation": "create", "data": "Hello World", "metadata": { "key": "my-test-file.txt" } }' \ + http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + +{{< /tabs >}} + + +##### Upload a file + +To upload a file, pass the file contents as the data payload; you may want to encode this in e.g. Base64 for binary content. + +Then you can upload it as you would normally: + +{{< tabs Windows Linux >}} + + {{% codetab %}} + ```bash + curl -d "{ \"operation\": \"create\", \"data\": \"(YOUR_FILE_CONTENTS)\", \"metadata\": { \"key\": \"my-test-file.jpg\" } }" http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + + {{% codetab %}} + ```bash + curl -d '{ "operation": "create", "data": "$(cat my-test-file.jpg)", "metadata": { "key": "my-test-file.jpg" } }' \ + http://localhost:/v1.0/bindings/ + ``` + {{% /codetab %}} + +{{< /tabs >}} + ## Related links - [Basic schema for a Dapr component]({{< ref component-schema >}}) diff --git a/daprdocs/content/en/operations/components/setup-state-store/supported-state-stores/setup-dynamodb.md b/daprdocs/content/en/operations/components/setup-state-store/supported-state-stores/setup-dynamodb.md index 77761e65f..fa1fcf9d9 100644 --- a/daprdocs/content/en/operations/components/setup-state-store/supported-state-stores/setup-dynamodb.md +++ b/daprdocs/content/en/operations/components/setup-state-store/supported-state-stores/setup-dynamodb.md @@ -7,7 +7,7 @@ description: Detailed information on the AWS DynamoDB state store component ## Component format -To setup a DynamoDB state store create a component of type `state.dynamodb`. See [this guide]({{< ref "howto-get-save-state.md#step-1-setup-a-state-store" >}}) on how to create and apply a state store configuration. +To setup a DynamoDB state store create a component of type `state.aws.dynamodb`. See [this guide]({{< ref "howto-get-save-state.md#step-1-setup-a-state-store" >}}) on how to create and apply a state store configuration. ```yaml apiVersion: dapr.io/v1alpha1 @@ -16,7 +16,7 @@ metadata: name: namespace: spec: - type: state.dynamodb + type: state.aws.dynamodb version: v1 metadata: - name: table diff --git a/daprdocs/content/en/operations/hosting/kubernetes/cluster/setup-gke.md b/daprdocs/content/en/operations/hosting/kubernetes/cluster/setup-gke.md new file mode 100644 index 000000000..5a7b7607c --- /dev/null +++ b/daprdocs/content/en/operations/hosting/kubernetes/cluster/setup-gke.md @@ -0,0 +1,55 @@ +--- +type: docs +title: "Setup a Google Kubernetes Engine cluster" +linkTitle: "Google Kubernetes Engine" +weight: 3000 +description: "Setup a Google Kubernetes Engine cluster" +--- + +### Prerequisites + +- [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/) +- [Google Cloud SDK](https://cloud.google.com/sdk) + +## Create a new cluster +```bash +$ gcloud services enable container.googleapis.com && \ + gcloud container clusters create $CLUSTER_NAME \ + --zone $ZONE \ + --project $PROJECT_ID +``` +For more options refer to the [Google Cloud SDK docs](https://cloud.google.com/sdk/gcloud/reference/container/clusters/create), or instead create a cluster through the [Cloud Console](https://console.cloud.google.com/kubernetes) for a more interactive experience. + +{{% alert title="For private GKE clusters" color="warning" %}} +Sidecar injection will not work for private clusters without extra steps. An automatically created firewall rule for master access does not open port 4000. This is needed for Dapr sidecar injection. + +To review the relevant firewall rule: +```bash +$ gcloud compute firewall-rules list --filter="name~gke-${CLUSTER_NAME}-[0-9a-z]*-master" +``` + +To replace the existing rule and allow kubernetes master access to port 4000: +```bash +$ gcloud compute firewall-rules update --allow tcp:10250,tcp:443,tcp:4000 +``` +{{% /alert %}} + +## Retrieve your credentials for `kubectl` + +```bash +$ gcloud container clusters get-credentials $CLUSTER_NAME \ + --zone $ZONE \ + --project $PROJECT_ID +``` + +## (optional) Install Helm v3 + +1. [Install Helm v3 client](https://helm.sh/docs/intro/install/) + +> **Note:** The latest Dapr helm chart no longer supports Helm v2. Please migrate from helm v2 to helm v3 by following [this guide](https://helm.sh/blog/migrate-from-helm-v2-to-helm-v3/). + +2. In case you need permissions the kubernetes dashboard (i.e. configmaps is forbidden: User "system:serviceaccount:kube-system:kubernetes-dashboard" cannot list configmaps in the namespace "default", etc.) execute this command + +```bash +kubectl create clusterrolebinding kubernetes-dashboard -n kube-system --clusterrole=cluster-admin --serviceaccount=kube-system:kubernetes-dashboard +``` diff --git a/daprdocs/content/en/operations/hosting/kubernetes/cluster/setup-minikube.md b/daprdocs/content/en/operations/hosting/kubernetes/cluster/setup-minikube.md index 4c9f5deff..8222d7f0b 100644 --- a/daprdocs/content/en/operations/hosting/kubernetes/cluster/setup-minikube.md +++ b/daprdocs/content/en/operations/hosting/kubernetes/cluster/setup-minikube.md @@ -2,7 +2,7 @@ type: docs title: "Setup an Minikube cluster" linkTitle: "Minikube" -weight: 2000 +weight: 1000 description: > How to setup Dapr on a Minikube cluster. --- diff --git a/daprdocs/content/en/operations/hosting/kubernetes/kubernetes-annotations.md b/daprdocs/content/en/operations/hosting/kubernetes/kubernetes-annotations.md index 12d501411..47e0c3a88 100644 --- a/daprdocs/content/en/operations/hosting/kubernetes/kubernetes-annotations.md +++ b/daprdocs/content/en/operations/hosting/kubernetes/kubernetes-annotations.md @@ -20,7 +20,7 @@ The following table shows all the supported pod Spec annotations supported by Da | `dapr.io/api-token-secret` | Tells Dapr which Kubernetes secret to use for token based API authentication. By default this is not set. | `dapr.io/app-protocol` | Tells Dapr which protocol your application is using. Valid options are `http` and `grpc`. Default is `http` | `dapr.io/app-max-concurrency` | Limit the concurrency of your application. A valid value is any number larger than `0` -| `dapr.io/app-ssl` | Tells Dapr to invoke the app over an insecure SSL connection. Applies to both HTTP and gRPC. Default is `false`. +| `dapr.io/app-ssl` | Tells Dapr to invoke the app over an insecure SSL connection. Applies to both HTTP and gRPC. Traffic between your app and the Dapr sidecar is encrypted with a certificate issued by a non-trusted certificate authority, which is considered insecure. Default is `false`. | `dapr.io/metrics-port` | Sets the port for the sidecar metrics server. Default is `9090` | `dapr.io/sidecar-cpu-limit` | Maximum amount of CPU that the Dapr sidecar can use. See valid values [here](https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/). By default this is not set | `dapr.io/sidecar-memory-limit` | Maximum amount of Memory that the Dapr sidecar can use. See valid values [here](https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/). By default this is not set diff --git a/daprdocs/content/en/operations/hosting/kubernetes/kubernetes-overview.md b/daprdocs/content/en/operations/hosting/kubernetes/kubernetes-overview.md index 87febadc4..781050e26 100644 --- a/daprdocs/content/en/operations/hosting/kubernetes/kubernetes-overview.md +++ b/daprdocs/content/en/operations/hosting/kubernetes/kubernetes-overview.md @@ -10,7 +10,7 @@ description: "Overview of how to get Dapr running on your Kubernetes cluster" Dapr can be configured to run on any Kubernetes cluster. To achieve this, Dapr begins by deploying the `dapr-sidecar-injector`, `dapr-operator`, `dapr-placement`, and `dapr-sentry` Kubernetes services. These provide first-class integration to make running applications with Dapr easy. - **dapr-operator:** Manages [component]({{< ref components >}}) updates and Kubernetes services endpoints for Dapr (state stores, pub/subs, etc.) -- **dapr-sidecar-injector:** Injects Dapr into [annotated](#adding-dapr-to-a-kubernetes-cluster) deployment pods and adds the environment variables `DAPR_HTTP_PORT` and `DAPR_GRPC_PORT` to enable user-defined applications to easily communicate with Dapr without hard-coding Dapr port values. +- **dapr-sidecar-injector:** Injects Dapr into [annotated](#adding-dapr-to-a-kubernetes-deployment) deployment pods and adds the environment variables `DAPR_HTTP_PORT` and `DAPR_GRPC_PORT` to enable user-defined applications to easily communicate with Dapr without hard-coding Dapr port values. - **dapr-placement:** Used for [actors]({{< ref actors >}}) only. Creates mapping tables that map actor instances to pods - **dapr-sentry:** Manages mTLS between services and acts as a certificate authority. For more information read the [security overview]({{< ref "security-concept.md" >}}). @@ -22,7 +22,7 @@ Read [this guide]({{< ref kubernetes-deploy.md >}}) to learn how to deploy Dapr ## Adding Dapr to a Kubernetes deployment -Deploying and running a Dapr enabled application into your Kubernetes cluster is a simple as adding a few annotations to the deployment schemes. To give your service an `id` and `port` known to Dapr, turn on tracing through configuration and launch the Dapr sidecar container, you annotate your Kubernetes deployment like this. +Deploying and running a Dapr enabled application into your Kubernetes cluster is as simple as adding a few annotations to the deployment schemes. To give your service an `id` and `port` known to Dapr, turn on tracing through configuration and launch the Dapr sidecar container, you annotate your Kubernetes deployment like this. For more information check [dapr annotations]({{< ref kubernetes-annotations.md >}}) ```yml annotations: diff --git a/daprdocs/content/en/operations/monitoring/tracing/setup-tracing.md b/daprdocs/content/en/operations/monitoring/tracing/setup-tracing.md index 6d481dc19..85db1cd4a 100644 --- a/daprdocs/content/en/operations/monitoring/tracing/setup-tracing.md +++ b/daprdocs/content/en/operations/monitoring/tracing/setup-tracing.md @@ -16,7 +16,7 @@ the cloud or on-premises. The `tracing` section under the `Configuration` spec contains the following properties: ```yml -tracing: +spec: tracing: samplingRate: "1" zipkin: diff --git a/daprdocs/content/en/operations/troubleshooting/common_issues.md b/daprdocs/content/en/operations/troubleshooting/common_issues.md index 0d3c8a186..581a041ff 100644 --- a/daprdocs/content/en/operations/troubleshooting/common_issues.md +++ b/daprdocs/content/en/operations/troubleshooting/common_issues.md @@ -47,6 +47,8 @@ If your pod spec template is annotated correctly and you still don't see the sid If this is the case, restarting the pods will fix the issue. +If you are deploying Dapr on a private GKE cluster, sidecar injection does not work without extra steps. See [Setup a Google Kubernetes Engine cluster]({{< ref setup-gke.md >}}). + In order to further diagnose any issue, check the logs of the Dapr sidecar injector: ```bash @@ -202,4 +204,4 @@ This is usually due to one of the following issues - You may have defined the `NAMESPACE` environment variable locally or deployed your components into a different namespace in Kubernetes. Check which namespace your app and the components are deployed to. Read [scoping components to one or more applications]({{< ref "component-scopes.md" >}}) for more information. - You may have not provided a `--components-path` with the Dapr `run` commands or not placed your components into the default components folder for your OS. Read [define a component]({{< ref "get-started-component.md" >}}) for more information. -- You may have a syntax issue in component YAML file. Check your component YAML with the component [YAML samples]({{< ref "components.md" >}}). \ No newline at end of file +- You may have a syntax issue in component YAML file. Check your component YAML with the component [YAML samples]({{< ref "components.md" >}}). diff --git a/translations/docs-zh b/translations/docs-zh index e26148b86..1806602cc 160000 --- a/translations/docs-zh +++ b/translations/docs-zh @@ -1 +1 @@ -Subproject commit e26148b866552f94a148c5ad6fe81e066775b804 +Subproject commit 1806602cccee4cc091c38d6bb06ef7b0220a53ed