Merge branch 'v1.1' into aacrawfi/concepts

This commit is contained in:
Ori Zohar 2021-04-22 13:24:08 -07:00 committed by GitHub
commit 07a8f8b8de
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
13 changed files with 72 additions and 35 deletions

10
.github/CODEOWNERS vendored Normal file
View File

@ -0,0 +1,10 @@
# Documentation and examples for what this does:
#
# https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners
# This file is a list of rules, with the last rule being most specific
# All of the people (and only those people) from the matching rule will be notified
# Default rule: anything that doesn't match a more specific rule goes here
* @dapr/approvers-docs @dapr/maintainers-docs

View File

@ -480,7 +480,7 @@ dapr --app-id app2 run -- php app2.php
Dapr automatically takes the data sent on the publish request and wraps it in a CloudEvent 1.0 envelope.
If you want to use your own custom CloudEvent, make sure to specify the content type as `application/cloudevents+json`.
See info about content types [here](#Content-Types).
Read about content types [here](#content-types), and about the [Cloud Events message format]({{< ref "pubsub-overview.md#cloud-events-message-format" >}}).
## Next steps

View File

@ -86,7 +86,7 @@ data := []byte("ping")
// create the client
client, err := dapr.NewClient()
if err != nil {
logger.Panic(err)
log.Panic(err)
}
defer client.Close()
```
@ -95,11 +95,11 @@ defer client.Close()
```go
// save state with the key key1
err = client.SaveStateData(ctx, "statestore", "key1", "1", data)
err = client.SaveState(ctx, "statestore", "key1", data)
if err != nil {
logger.Panic(err)
log.Panic(err)
}
logger.Println("data saved")
log.Println("data saved")
```
Hooray!
@ -135,6 +135,7 @@ import (
```go
// server is our user app
type server struct {
pb.UnimplementedAppCallbackServer
}
// EchoMethod is a simple demo method to invoke
@ -183,9 +184,9 @@ func (s *server) OnBindingEvent(ctx context.Context, in *pb.BindingEventRequest)
}
// This method is fired whenever a message has been published to a topic that has been subscribed. Dapr sends published messages in a CloudEvents 0.3 envelope.
func (s *server) OnTopicEvent(ctx context.Context, in *pb.TopicEventRequest) (*empty.Empty, error) {
func (s *server) OnTopicEvent(ctx context.Context, in *pb.TopicEventRequest) (*pb.TopicEventResponse, error) {
fmt.Println("Topic message arrived")
return &empty.Empty{}, nil
return &pb.TopicEventResponse{}, nil
}
```

View File

@ -53,7 +53,7 @@ dapr --version
Output should look like this:
```
CLI version: 1.1.0
Runtime version: 1.1.1
Runtime version: 1.1.2
```
### Step 4: Verify containers are running
@ -96,7 +96,7 @@ bin components config.yaml
{{% /codetab %}}
{{% codetab %}}
Open `%USERPROFILE%\.dapr\` in file explorer:
Using Command Prompt (not PowerShell), open `%USERPROFILE%\.dapr\` in file explorer:
```powershell
explorer "%USERPROFILE%\.dapr\"

View File

@ -122,7 +122,7 @@ The latest Dapr helm chart no longer supports Helm v2. Please migrate from Helm
```bash
helm upgrade --install dapr dapr/dapr \
--version=1.1.1 \
--version=1.1.2 \
--namespace dapr-system \
--create-namespace \
--wait
@ -132,7 +132,7 @@ The latest Dapr helm chart no longer supports Helm v2. Please migrate from Helm
```bash
helm upgrade --install dapr dapr/dapr \
--version=1.1.1 \
--version=1.1.2 \
--namespace dapr-system \
--create-namespace \
--set global.ha.enabled=true \

View File

@ -59,7 +59,9 @@ The CPU and memory limits above account for the fact that Dapr is intended to a
## Highly-available mode
When deploying Dapr in a production-ready configuration, it's recommended to deploy with a highly available configuration of the control plane, which creates 3 replicas of each control plane pod in the dapr-system namespace.
When deploying Dapr in a production-ready configuration, it's recommended to deploy with a highly available (HA) configuration of the control plane, which creates 3 replicas of each control plane pod in the dapr-system namespace. This configuration allows for the Dapr control plane to survive node failures and other outages.
HA mode can be enabled with both the [Dapr CLI]({{< ref "kubernetes-deploy.md#install-in-highly-available-mode" >}} and with [Helm charts]({{< ref "kubernetes-deploy.md#add-and-install-dapr-helm-chart" >}}).
## Deploying Dapr with Helm

View File

@ -11,17 +11,27 @@ description: "Follow these steps to upgrade Dapr on Kubernetes and ensure a smoo
- [Dapr CLI]({{< ref install-dapr-cli.md >}})
- [Helm 3](https://github.com/helm/helm/releases) (if using Helm)
## Upgrade existing cluster to 1.1.1
## Upgrade existing cluster to 1.1.2
There are two ways to upgrade the Dapr control plane on a Kubernetes cluster using either the Dapr CLI or Helm.
### Dapr CLI
The example below shows how to upgrade to version 1.1.1:
The example below shows how to upgrade to version 1.1.2:
```bash
dapr upgrade -k --runtime-version=1.1.1
dapr upgrade -k --runtime-version=1.1.2
```
{{% alert title="Note" color="warning" %}}
If you are using Dapr CLI v1.1.0 there is a known issue where mTLS will be enabled by default, even on clusters where it is disabled. If your cluster has mTLS disabled, and you would like it to stay disabled, add `--set global.mtls.enabled=false` to your upgrade command:
```bash
dapr upgrade -k --runtime-version 1.1.1 --set global.mtls.enabled=false
```
You can track the issue here: [#664](https://github.com/dapr/cli/issues/664).
{{% /alert %}}
You can provide all the available Helm chart configurations using the Dapr CLI.
See [here](https://github.com/dapr/cli#supplying-helm-values) for more info.
@ -43,7 +53,7 @@ To resolve this issue please run the follow command to upgrade the CustomResourc
kubectl replace -f https://raw.githubusercontent.com/dapr/dapr/5a15b3e0f093d2d0938b12f144c7047474a290fe/charts/dapr/crds/configuration.yaml
```
Then proceed with the `dapr upgrade --runtime-version 1.1.1 -k` command as above.
Then proceed with the `dapr upgrade --runtime-version 1.1.2 -k` command as above.
### Helm

View File

@ -25,11 +25,11 @@ description: "Follow these steps to upgrade Dapr in self-hosted mode and ensure
dapr init
```
1. Ensure you are using the latest version of Dapr (v1.1.1) with:
1. Ensure you are using the latest version of Dapr (v1.1.2) with:
```bash
$ dapr --version
CLI version: 1.1.0
Runtime version: 1.1.1
Runtime version: 1.1.2
```

View File

@ -35,6 +35,7 @@ The table below shows the versions of Dapr releases that have been tested togeth
| Mar 4th 2021 | 1.0.1</br>| 1.0.1 | Java 1.0.2 </br>Go 1.0.0 </br>PHP 1.0.0 </br>Python 1.0.0 </br>.NET 1.0.0 | 0.6.0 | Supported |
| Apr 1st 2021 | 1.1.0</br> | 1.1.0 | Java 1.0.2 </br>Go 1.1.0 </br>PHP 1.0.0 </br>Python 1.1.0 </br>.NET 1.1.0 | 0.6.0 | Supported |
| Apr 6th 2021 | 1.1.1</br> | 1.1.0 | Java 1.0.2 </br>Go 1.1.0 </br>PHP 1.0.0 </br>Python 1.1.0 </br>.NET 1.1.0 | 0.6.0 | Supported (current) |
| Apr 16th 2021 | 1.1.2</br> | 1.1.0 | Java 1.0.2 </br>Go 1.1.0 </br>PHP 1.0.0 </br>Python 1.1.0 </br>.NET 1.1.0 | 0.6.0 | Supported (current) |
## Upgrade paths
After the 1.0 release of the runtime there may be situations where it is necessary to explicitly upgrade through an additional release to reach the desired target. For example an upgrade from v1.0 to v1.2 may need go pass through v1.1
@ -46,10 +47,10 @@ General guidance on upgrading can be found for [self hosted mode]({{<ref self-ho
| Current Runtime version | Must upgrade through | Target Runtime version |
|--------------------------|-----------------------|------------------------- |
| 0.11 | N/A | 1.0.1 |
| | 1.0.1 | 1.1.1 |
| | 1.0.1 | 1.1.2 |
| 1.0-rc1 to 1.0-rc4 | N/A | 1.0.1 |
| 1.0.0 or 1.0.1 | N/A | 1.1.1 |
| 1.1.0 | N/A | 1.1.1 |
| 1.0.0 or 1.0.1 | N/A | 1.1.2 |
| 1.1.0 or 1.1.1 | N/A | 1.1.2 |
## Feature and deprecations
There is a process for announcing feature deprecations. Deprecations are applied two (2) releases after the release in which they were announced. For example Feature X is announced to be deprecated in the 1.0.0 release notes and will then be removed in 1.2.0.

View File

@ -9,9 +9,16 @@ description: "Common issues and problems faced when running Dapr applications"
## I don't see the Dapr sidecar injected to my pod
There could be several reasons to why a sidecar will not be injected into a pod.
First, check your Deployment or Pod YAML file, and check that you have the following annotations in the right place:
First, check your deployment or pod YAML file, and check that you have the following annotations in the right place:
Sample deployment:
```yaml
annotations:
dapr.io/enabled: "true"
dapr.io/app-id: "nodeapp"
dapr.io/app-port: "3000"
```
### Sample deployment:
```yaml
apiVersion: apps/v1
@ -31,9 +38,9 @@ spec:
labels:
app: node
annotations:
<b>dapr.io/enabled: "true"</b>
<b>dapr.io/app-id: "nodeapp"</b>
<b>dapr.io/app-port: "3000"</b>
dapr.io/enabled: "true"
dapr.io/app-id: "nodeapp"
dapr.io/app-port: "3000"
spec:
containers:
- name: node
@ -84,7 +91,7 @@ The most common cause of this failure is that a component (such as a state store
To diagnose the root cause:
- Significantly increase the liveness probe delay - [link]({{< ref "kubernetes-overview.md" >}})
- Significantly increase the liveness probe delay - [link]({{< ref "kubernetes-annotations.md" >}})
- Set the log level of the sidecar to debug - [link]({{< ref "logs-troubleshooting.md#setting-the-sidecar-log-level" >}})
- Watch the logs for meaningful information - [link]({{< ref "logs-troubleshooting.md#viewing-logs-on-kubernetes" >}})
@ -162,9 +169,9 @@ In Kubernetes, make sure the `dapr.io/app-port` annotation is specified:
```yaml
annotations:
dapr.io/enabled: "true"
dapr.io/app-id: "nodeapp"
dapr.io/app-port: "3000"
dapr.io/enabled: "true"
dapr.io/app-id: "nodeapp"
dapr.io/app-port: "3000"
```
If using Dapr Standalone and the Dapr CLI, make sure you pass the `--app-port` flag to the `dapr run` command.

View File

@ -36,12 +36,12 @@ dapr upgrade -k
### Upgrade specified version of Dapr runtime in Kubernetes
```bash
dapr upgrade -k --runtime-version 1.1.1
dapr upgrade -k --runtime-version 1.1.2
```
### Upgrade specified version of Dapr runtime in Kubernetes with value set
```bash
dapr upgrade -k --runtime-version 1.1.1 --set global.logAsJson=true
dapr upgrade -k --runtime-version 1.1.2 --set global.logAsJson=true
```
# Related links

View File

@ -77,7 +77,7 @@ To run without Docker, see the getting started guide [here](https://kafka.apache
{{% /codetab %}}
{{% codetab %}}
To run Kafka on Kubernetes, you can use the [Helm Chart](https://github.com/helm/charts/tree/master/incubator/kafka#installing-the-chart).
To run Kafka on Kubernetes, you can use any Kafka operator, such as [Strimzi](https://strimzi.io/docs/operators/latest/quickstart.html#ref-install-prerequisites-str).
{{% /codetab %}}
{{< /tabs >}}

View File

@ -8,7 +8,7 @@ aliases:
---
## Component format
To setup Azure Event Hubs pubsub create a component of type `pubsub.azure.servicebus`. See [this guide]({{< ref "howto-publish-subscribe.md#step-1-setup-the-pubsub-component" >}}) on how to create and apply a pubsub configuration.
To setup Azure Service Bus pubsub create a component of type `pubsub.azure.servicebus`. See [this guide]({{< ref "howto-publish-subscribe.md#step-1-setup-the-pubsub-component" >}}) on how to create and apply a pubsub configuration.
```yaml
apiVersion: dapr.io/v1alpha1
@ -50,6 +50,10 @@ spec:
value: 30
- name: connectionRecoveryInSec # Optional
value: 2
- name: publishMaxRetries # Optional
value: 5
- name: publishInitialRetryInternalInMs # Optional
value: 500
```
> __NOTE:__ The above settings are shared across all topics that use this component.
@ -62,7 +66,7 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| Field | Required | Details | Example |
|--------------------|:--------:|---------|---------|
| connectionString | Y | Connection-string for the Event Hubs | "`Endpoint=sb://{ServiceBusNamespace}.servicebus.windows.net/;SharedAccessKeyName={PolicyName};SharedAccessKey={Key};EntityPath={ServiceBus}`"
| connectionString | Y | Connection-string for the Service Bus | "`Endpoint=sb://{ServiceBusNamespace}.servicebus.windows.net/;SharedAccessKeyName={PolicyName};SharedAccessKey={Key};EntityPath={ServiceBus}`"
| timeoutInSec | N | Timeout for sending messages and management operations. Default: `60` |`30`
| handlerTimeoutInSec| N | Timeout for invoking app handler. # Optional. Default: `60` | `30`
| disableEntityManagement | N | When set to true, topics and subscriptions do not get created automatically. Default: `"false"` | `"true"`, `"false"`
@ -77,6 +81,8 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| autoDeleteOnIdleInSec | N |Time in seconds to wait before auto deleting messages. | `10`
| maxReconnectionAttempts | N |Defines the maximum number of reconnect attempts. Default: `30` | `30`
| connectionRecoveryInSec | N |Time in seconds to wait between connection recovery attempts. Defaults: `2` | `2`
| publishMaxRetries | N | The max number of retries for when Azure Service Bus responds with "too busy" in order to throttle messages. Defaults: `5` | `5`
| publishInitialRetryInternalInMs | N | Time in milliseconds for the initial exponential backoff when Azure Service Bus throttle messages. Defaults: `500` | `500`
## Create an Azure Service Bus