Skip to content

Commit 268da74

Browse files
hhunter-mstmacamgreenie-msftwxbtyItalyPaleAle
authored
Docs upmerge 12/16 (#3015)
* Fix: codeblock wasn't properly closed Minor formatting fix. Signed-off-by: Tiago Alves Macambira <[email protected]> * update code examples Signed-off-by: Hannah Hunter <[email protected]> * Fix broken link in components-concept page Commit 043a39d shuffled content around and removed a section called "Pluggable Components", breaking an existing link to this section. This PR fixes the link to point to the section now hosting the appropriate content. Signed-off-by: Tiago Alves Macambira <[email protected]> * Add Resiliency to the concepts page Signed-off-by: Nick Greenfield <[email protected]> * Update redis.md Signed-off-by: wxbty <[email protected]> * Remove ServiceInvocation.NoDefaultContentType feature flag Fixes #2869 Signed-off-by: ItalyPaleAle <[email protected]> * dotnet submodule Signed-off-by: Hannah Hunter <[email protected]> * Simplifying kubernetes YAML config (#2908) * Simplifying Kubernetes YAML Signed-off-by: Marcos Candeia <[email protected]> * Update pluggable-components-registration.md Signed-off-by: Marcos Candeia <[email protected]> Signed-off-by: Marcos Candeia <[email protected]> * Clarify GH actions doc (#2906) * dotnet submodule Signed-off-by: Hannah Hunter <[email protected]> * attempt to clarify doc Signed-off-by: Hannah Hunter <[email protected]> * Revert "dotnet submodule" This reverts commit 8fdeb61. Signed-off-by: Hannah Hunter <[email protected]> * dotnet submodule (#2904) Signed-off-by: Hannah Hunter <[email protected]> Signed-off-by: Hannah Hunter <[email protected]> Co-authored-by: Mark Fussell <[email protected]> * Update latest Python SDK version Signed-off-by: Bernd Verst <[email protected]> * etag true for dynamodb (#2902) Signed-off-by: Hannah Hunter <[email protected]> Signed-off-by: Hannah Hunter <[email protected]> Co-authored-by: Mark Fussell <[email protected]> * [Run w/o docker] Add tabs and port number (#2905) * add tabs and window example Signed-off-by: Hannah Hunter <[email protected]> * edits per Mark Signed-off-by: Hannah Hunter <[email protected]> Signed-off-by: Hannah Hunter <[email protected]> Co-authored-by: Mark Fussell <[email protected]> * 1/3 update per alecor191 Signed-off-by: Hannah Hunter <[email protected]> * Update redis.md Signed-off-by: wxbty <[email protected]> * Add missing rocketmq pubsub to table Signed-off-by: Bernd Verst <[email protected]> * Update aws-secret-manager.md Signed-off-by: vishalsignity <[email protected]> * Update daprdocs/content/en/concepts/resiliency-concept.md Co-authored-by: Hannah Hunter <[email protected]> Signed-off-by: greenie-msft <[email protected]> * Update daprdocs/content/en/concepts/resiliency-concept.md Co-authored-by: Hannah Hunter <[email protected]> Signed-off-by: greenie-msft <[email protected]> * Update daprdocs/content/en/concepts/resiliency-concept.md Co-authored-by: Hannah Hunter <[email protected]> Signed-off-by: greenie-msft <[email protected]> * Apply feedback to resiliency concept page * Mark pubsub.hazelcast as deprecated Fixes #2708 Signed-off-by: ItalyPaleAle <[email protected]> * Update daprdocs/content/en/reference/components-reference/supported-pubsub/setup-hazelcast.md Co-authored-by: Mukundan Sundararajan <[email protected]> Signed-off-by: Alessandro (Ale) Segala <[email protected]> * update supported versions list (#2916) * update supported versions list Signed-off-by: Mukundan Sundararajan <[email protected]> * updated supported versions Signed-off-by: Mukundan Sundararajan <[email protected]> Signed-off-by: Mukundan Sundararajan <[email protected]> Signed-off-by: greenie-msft <[email protected]> Co-authored-by: greenie-msft <[email protected]> * Update daprdocs/content/en/concepts/resiliency-concept.md Signed-off-by: greenie-msft <[email protected]> * Update azure-kubernetes-service-extension.md Signed-off-by: greenie-msft <[email protected]> * Update redis.md Signed-off-by: wxbty <[email protected]> * Update redis.md Signed-off-by: wxbty <[email protected]> * Update eventgrid.md command typos (#2932) Signed-off-by: Ana Cozma <[email protected]> Signed-off-by: Ana Cozma <[email protected]> * Add sidecar health image and fix broken links Signed-off-by: Nick Greenfield <[email protected]> * update python to be declarative example Signed-off-by: Hannah Hunter <[email protected]> * Start of resiliency quickstart Signed-off-by: Nick Greenfield <[email protected]> * Update daprdocs/content/en/getting-started/quickstarts/resiliency-quickstart.md Signed-off-by: greenie-msft <[email protected]> * Update docs runtime version to 1.9.3 Signed-off-by: Nick Greenfield <[email protected]> * Update azure-api-management.md Removed one word Signed-off-by: Richard de Zwart <[email protected]> * Use Google Analytics 4 ID (#2941) Signed-off-by: Patrice Chalin <[email protected]> Signed-off-by: Patrice Chalin <[email protected]> Co-authored-by: Mark Fussell <[email protected]> * Fix Python SDK version Signed-off-by: greenie-msft <[email protected]> * update code snippets Signed-off-by: Hannah Hunter <[email protected]> * Azurite queue default port is 10001 fix: Update azurite port to 10001 instead of 10000 See [docs](https://learn.microsoft.com/en-us/azure/storage/common/storage-use-azurite?tabs=visual-studio#queue-listening-port-configuration) Signed-off-by: ThumNet <[email protected]> * updates per resiliency example Signed-off-by: Hannah Hunter <[email protected]> * Add resiliency images for quickstarts Signed-off-by: Nick Greenfield <[email protected]> * Updates to resiliency svc invoke quickstart * updates per Nick review Signed-off-by: Hannah Hunter <[email protected]> * Update daprdocs/content/en/developing-applications/integrations/Azure/azure-kubernetes-service-extension.md Co-authored-by: Hannah Hunter <[email protected]> Signed-off-by: greenie-msft <[email protected]> * capitalize Dapr Signed-off-by: Hannah Hunter <[email protected]> * Update daprdocs/content/en/getting-started/quickstarts/resiliency/resiliency-state-quickstart.md Signed-off-by: greenie-msft <[email protected]> * Update daprdocs/content/en/getting-started/quickstarts/resiliency/resiliency-state-quickstart.md Signed-off-by: greenie-msft <[email protected]> * Update daprdocs/content/en/getting-started/quickstarts/resiliency/resiliency-state-quickstart.md Signed-off-by: greenie-msft <[email protected]> * Update daprdocs/content/en/getting-started/quickstarts/resiliency/resiliency-state-quickstart.md Signed-off-by: greenie-msft <[email protected]> * Update daprdocs/content/en/getting-started/quickstarts/resiliency/resiliency-state-quickstart.md Signed-off-by: greenie-msft <[email protected]> * Fix resiliency component quickstart Signed-off-by: Nick Greenfield <[email protected]> * Update runtime version to 1.9.4 Signed-off-by: Nick Greenfield <[email protected]> * Update subscription examples (#2957) * dotnet submodule Signed-off-by: Hannah Hunter <[email protected]> * update to v2alpha Signed-off-by: Hannah Hunter <[email protected]> * revert some changes Signed-off-by: Hannah Hunter <[email protected]> * update routes Signed-off-by: Hannah Hunter <[email protected]> Signed-off-by: Hannah Hunter <[email protected]> * Kafka SASL SCRAM Authentication (#2939) * Adds settings for SASL SCRAM SHA-256 and SHA-512 Signed-off-by: Andrew <[email protected]> * Update setup-apache-kafka.md Signed-off-by: Andrew <[email protected]> Signed-off-by: Andrew <[email protected]> Co-authored-by: Hannah Hunter <[email protected]> Co-authored-by: Mukundan Sundararajan <[email protected]> Co-authored-by: Yaron Schneider <[email protected]> * Update fluentd.md (#2967) Elastic search installed by helm will version 8 series which does not let dapr connect with kibana(Because it enables authentication), After using version 7 series works as expected Signed-off-by: vikram-thiru <[email protected]> Signed-off-by: vikram-thiru <[email protected]> * Adding missing brace for json document example (#2968) There is a missing brace in the example json Signed-off-by: Chris Kingdon <[email protected]> Signed-off-by: Chris Kingdon <[email protected]> Co-authored-by: Yaron Schneider <[email protected]> * Update Kubernetes job page (#2973) Adds a paragraph mentioning `restartPolicy` needs to be set to `Never` for successful job completion. Signed-off-by: Renato L. de F. Cunha <[email protected]> Signed-off-by: Renato L. de F. Cunha <[email protected]> * Remove backoffmaxretries from pubsub.mqtt metadata spec Signed-off-by: shivam <[email protected]> * Fix resiliency run command in quickstart (#2983) Signed-off-by: Nick Greenfield <[email protected]> Signed-off-by: Nick Greenfield <[email protected]> * Update version to 1.9.5 (#2987) * Updated per feedback Signed-off-by: ItalyPaleAle <[email protected]> * clarify app namespace Signed-off-by: Hannah Hunter <[email protected]> * Improve Hashicorp Vault documentation on CA certificates. (#2988) * Improve Hashicorp Vault documentation on CA certificates. Hashicorp Vault component documentation for CA related fields (`caPem`, `caCert` and `caPath`) does not describe the precedence among those flags and a big ambiguous on what those flags mean. This PR tries to alliviate that. Closes #2989 Signed-off-by: Tiago Alves Macambira <[email protected]> * Apply suggestions from code review Co-authored-by: Hannah Hunter <[email protected]> Signed-off-by: Tiago Alves Macambira <[email protected]> Signed-off-by: Tiago Alves Macambira <[email protected]> Co-authored-by: Hannah Hunter <[email protected]> Co-authored-by: Mark Fussell <[email protected]> * Removing stored procedure references from cosmosDB docs (#3000) Signed-off-by: Ryan Lettieri <[email protected]> Signed-off-by: Ryan Lettieri <[email protected]> Co-authored-by: Ryan Lettieri <[email protected]> Co-authored-by: Mark Fussell <[email protected]> * fix broken ref in distributed_lock_api Signed-off-by: Lenshood <[email protected]> * Adding `helm repo update` (#3010) Signed-off-by: salaboy <[email protected]> Signed-off-by: salaboy <[email protected]> * change link for sidecar security (#3011) Signed-off-by: Hannah Hunter <[email protected]> Signed-off-by: Hannah Hunter <[email protected]> * update port to match go code (#3014) Signed-off-by: Hannah Hunter <[email protected]> Signed-off-by: Hannah Hunter <[email protected]> Co-authored-by: Mark Fussell <[email protected]> Signed-off-by: Tiago Alves Macambira <[email protected]> Signed-off-by: Hannah Hunter <[email protected]> Signed-off-by: Nick Greenfield <[email protected]> Signed-off-by: wxbty <[email protected]> Signed-off-by: ItalyPaleAle <[email protected]> Signed-off-by: Marcos Candeia <[email protected]> Signed-off-by: Bernd Verst <[email protected]> Signed-off-by: vishalsignity <[email protected]> Signed-off-by: greenie-msft <[email protected]> Signed-off-by: Alessandro (Ale) Segala <[email protected]> Signed-off-by: Mukundan Sundararajan <[email protected]> Signed-off-by: Ana Cozma <[email protected]> Signed-off-by: Richard de Zwart <[email protected]> Signed-off-by: Patrice Chalin <[email protected]> Signed-off-by: ThumNet <[email protected]> Signed-off-by: Andrew <[email protected]> Signed-off-by: vikram-thiru <[email protected]> Signed-off-by: Chris Kingdon <[email protected]> Signed-off-by: Renato L. de F. Cunha <[email protected]> Signed-off-by: shivam <[email protected]> Signed-off-by: Ryan Lettieri <[email protected]> Signed-off-by: Lenshood <[email protected]> Signed-off-by: salaboy <[email protected]> Co-authored-by: Tiago Alves Macambira <[email protected]> Co-authored-by: greenie-msft <[email protected]> Co-authored-by: Nick Greenfield <[email protected]> Co-authored-by: wxbty <[email protected]> Co-authored-by: ItalyPaleAle <[email protected]> Co-authored-by: Marcos Candeia <[email protected]> Co-authored-by: Mark Fussell <[email protected]> Co-authored-by: Bernd Verst <[email protected]> Co-authored-by: Artur Souza <[email protected]> Co-authored-by: vishalsignity <[email protected]> Co-authored-by: Mukundan Sundararajan <[email protected]> Co-authored-by: Ana Cozma <[email protected]> Co-authored-by: Richard de Zwart <[email protected]> Co-authored-by: Patrice Chalin <[email protected]> Co-authored-by: ThumNet <[email protected]> Co-authored-by: Jeffrey Tummers <[email protected]> Co-authored-by: Andrew <[email protected]> Co-authored-by: Yaron Schneider <[email protected]> Co-authored-by: vikram-thiru <[email protected]> Co-authored-by: Chris Kingdon <[email protected]> Co-authored-by: Renato L. de F. Cunha <[email protected]> Co-authored-by: shivam <[email protected]> Co-authored-by: Ryan Lettieri <[email protected]> Co-authored-by: Ryan Lettieri <[email protected]> Co-authored-by: Lenshood <[email protected]> Co-authored-by: salaboy <[email protected]>
1 parent e075a43 commit 268da74

File tree

45 files changed

+2372
-169
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+2372
-169
lines changed

daprdocs/content/en/concepts/components-concept.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ Dapr uses a modular design where functionality is delivered as a component. Each
1111
You can contribute implementations and extend Dapr's component interfaces capabilities via:
1212

1313
- The [components-contrib repository](https://github.com/dapr/components-contrib)
14-
- [Pluggable components]({{<ref "components-concept.md#pluggable-components" >}}).
14+
- [Pluggable components]({{<ref "components-concept.md#built-in-and-pluggable-components" >}}).
1515

1616
A building block can use any combination of components. For example, the [actors]({{<ref "actors-overview.md">}}) and the [state management]({{<ref "state-management-overview.md">}}) building blocks both use [state components](https://github.com/dapr/components-contrib/tree/master/state).
1717

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
---
2+
type: docs
3+
title: "Resiliency"
4+
linkTitle: "Resiliency"
5+
weight: 400
6+
description: "Configure policies and monitor app and sidecar health"
7+
---
8+
9+
Distributed applications are commonly comprised of many microservices, with dozens - sometimes hundreds - of instances scaling across underlying infrastructure. As these distributed solutions grow in size and complexity, the potential for system failures inevitably increases. Service instances can fail or become unresponsive due to any number of issues, including hardware failures, unexpected throughput, or application lifecycle events, such as scaling out and application restarts. Designing and implementing a self-healing solution with the ability to detect, mitigate, and respond to failure is critical.
10+
11+
## Resiliency Policies
12+
<img src="/images/resiliency_diagram.png" width="1200" alt="Diagram showing the resiliency applied to Dapr APIs">
13+
14+
Dapr provides a capability for defining and applying fault tolerance resiliency policies to your application. You can define policies for following resiliency patterns:
15+
16+
- Timeouts
17+
- Retries/back-offs
18+
- Circuit breakers
19+
20+
These policies can be applied to any Dapr API calls when calling components with a [resiliency spec]({{< ref resiliency-overview >}}).
21+
22+
## App Health Checks
23+
<img src="/images/observability-app-health.webp" width="800" alt="Diagram showing the app health feature. Running Dapr with app health enabled causes Dapr to periodically probe the app for its health">
24+
25+
Applications can become unresponsive for a variety of reasons. For example, they are too busy to accept new work, could have crashed, or be in a deadlock state. Sometimes the condition can be transitory or persistent.
26+
27+
Dapr provides a capability for monitoring app health through probes that check the health of your application and react to status changes. When an unhealthy app is detected, Dapr stops accepting new work on behalf of the application.
28+
29+
Read more on how to apply [app health checks]({{< ref app-health >}}) to your application.
30+
31+
## Sidecar Health Checks
32+
<img src="/images/sidecar-health.png" width="800" alt="Diagram showing the app health feature. Running Dapr with app health enabled causes Dapr to periodically probe the app for its health">
33+
34+
Dapr provides a way to determine its health using an [HTTP `/healthz` endpoint]({{< ref health_api.md >}}). With this endpoint, the *daprd* process, or sidecar, can be:
35+
36+
- Probed for its health
37+
- Determined for readiness and liveness
38+
39+
Read more on about how to apply [dapr health checks]({{< ref sidecar-health >}}) to your application.

daprdocs/content/en/developing-applications/building-blocks/observability/sidecar-health.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ weight: 200
66
description: Dapr sidecar health checks
77
---
88

9-
Dapr provides a way to [determine its health using an [HTTP `/healthz` endpoint]({{< ref health_api.md >}}). With this endpoint, the *daprd* process, or sidecar, can be:
9+
Dapr provides a way to determine its health using an [HTTP `/healthz` endpoint]({{< ref health_api.md >}}). With this endpoint, the *daprd* process, or sidecar, can be:
1010

1111
- Probed for its health
1212
- Determined for readiness and liveness

daprdocs/content/en/developing-applications/building-blocks/pubsub/howto-publish-subscribe.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -155,13 +155,14 @@ Learn more in the [declarative and programmatic subscriptions doc]({{< ref subsc
155155
Create a file named `subscription.yaml` and paste the following:
156156

157157
```yaml
158-
apiVersion: dapr.io/v1alpha1
158+
apiVersion: dapr.io/v2alpha1
159159
kind: Subscription
160160
metadata:
161161
name: order-pub-sub
162162
spec:
163163
topic: orders
164-
route: /checkout
164+
routes:
165+
default: /checkout
165166
pubsubname: order-pub-sub
166167
scopes:
167168
- orderprocessing

daprdocs/content/en/developing-applications/building-blocks/pubsub/subscription-methods.md

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,6 @@ In your application code, subscribe to the topic specified in the Dapr pub/sub c
104104

105105
```csharp
106106
//Subscribe to a topic
107-
[Topic("pubsub", "orders")]
108107
[HttpPost("checkout")]
109108
public void getCheckout([FromBody] int orderId)
110109
{
@@ -117,16 +116,15 @@ public void getCheckout([FromBody] int orderId)
117116
{{% codetab %}}
118117

119118
```java
119+
import io.dapr.client.domain.CloudEvent;
120+
120121
//Subscribe to a topic
121-
@Topic(name = "orders", pubsubName = "pubsub")
122122
@PostMapping(path = "/checkout")
123123
public Mono<Void> getCheckout(@RequestBody(required = false) CloudEvent<String> cloudEvent) {
124124
return Mono.fromRunnable(() -> {
125125
try {
126126
log.info("Subscriber received: " + cloudEvent.getData());
127-
} catch (Exception e) {
128-
throw new RuntimeException(e);
129-
}
127+
}
130128
});
131129
}
132130
```
@@ -136,25 +134,30 @@ public Mono<Void> getCheckout(@RequestBody(required = false) CloudEvent<String>
136134
{{% codetab %}}
137135

138136
```python
137+
from cloudevents.sdk.event import v1
138+
139139
#Subscribe to a topic
140-
@app.subscribe(pubsub_name='pubsub', topic='orders')
141-
def mytopic(event: v1.Event) -> None:
140+
@app.route('/checkout', methods=['POST'])
141+
def checkout(event: v1.Event) -> None:
142142
data = json.loads(event.Data())
143143
logging.info('Subscriber received: ' + str(data))
144-
145-
app.run(6002)
146144
```
147145

148146
{{% /codetab %}}
149147

150148
{{% codetab %}}
151149

152150
```javascript
153-
//Subscribe to a topic
154-
await server.pubsub.subscribe("pubsub", "orders", async (orderId) => {
155-
console.log(`Subscriber received: ${JSON.stringify(orderId)}`)
151+
const express = require('express')
152+
const bodyParser = require('body-parser')
153+
const app = express()
154+
app.use(bodyParser.json({ type: 'application/*+json' }));
155+
156+
// listen to the declarative route
157+
app.post('/checkout', (req, res) => {
158+
console.log(req.body);
159+
res.sendStatus(200);
156160
});
157-
await server.startServer();
158161
```
159162

160163
{{% /codetab %}}
@@ -163,11 +166,10 @@ await server.startServer();
163166

164167
```go
165168
//Subscribe to a topic
166-
if err := s.AddTopicEventHandler(sub, eventHandler); err != nil {
167-
log.Fatalf("error adding topic subscription: %v", err)
168-
}
169-
if err := s.Start(); err != nil && err != http.ErrServerClosed {
170-
log.Fatalf("error listenning: %v", err)
169+
var sub = &common.Subscription{
170+
PubsubName: "pubsub",
171+
Topic: "orders",
172+
Route: "/checkout",
171173
}
172174
173175
func eventHandler(ctx context.Context, e *common.TopicEvent) (retry bool, err error) {

daprdocs/content/en/developing-applications/building-blocks/service-invocation/howto-invoke-discover-services.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -405,9 +405,9 @@ dapr invoke --app-id checkout --method checkout/100
405405

406406
### Namespaces
407407

408-
When running on [namespace supported platforms]({{< ref "service_invocation_api.md#namespace-supported-platforms" >}}), you include the namespace of the target app in the app ID: `checkout.production`
408+
When running on [namespace supported platforms]({{< ref "service_invocation_api.md#namespace-supported-platforms" >}}), you include the namespace of the target app in the app ID. For example, following the `<app>.<namespace>` format, use `checkout.production`.
409409

410-
For example, invoking the example service with a namespace would look like:
410+
Using this example, invoking the service with a namespace would look like:
411411

412412
```bash
413413
curl http://localhost:3602/v1.0/invoke/checkout.production/method/checkout/100 -X POST

daprdocs/content/en/developing-applications/building-blocks/service-invocation/service-invocation-overview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,4 +134,4 @@ For quick testing, try using the Dapr CLI for service invocation:
134134
- Read the [service invocation API specification]({{< ref service_invocation_api.md >}}). This reference guide for service invocation describes how to invoke methods on other services.
135135
- Understand the [service invocation performance numbers]({{< ref perf-service-invocation.md >}}).
136136
- Take a look at [observability]({{< ref monitoring.md >}}). Here you can dig into Dapr's monitoring tools like tracing, metrics and logging.
137-
- Read up on our [security practices]({{< ref monitoring.md >}}) around mTLS encryption, token authentication, and endpoint authorization.
137+
- Read up on our [security practices]({{< ref security-concept.md >}}) around mTLS encryption, token authentication, and endpoint authorization.

daprdocs/content/en/developing-applications/integrations/Azure/authenticating-azure.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ To start, create a new Azure AD application, which will also be used as Service
8484

8585
Prerequisites:
8686

87-
- [Azure Subscription](https://azure.microsoft.com/free/)
87+
- Azure Subscription
8888
- [Azure CLI](https://docs.microsoft.com/cli/azure/install-azure-cli)
8989
- [jq](https://stedolan.github.io/jq/download/)
9090
- OpenSSL (included by default on all Linux and macOS systems, as well as on WSL)

daprdocs/content/en/developing-applications/integrations/Azure/azure-api-management.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,6 @@ description: "Publish APIs for Dapr services and components through Azure API Ma
66
weight: 2000
77
---
88

9-
Azure API Management (APIM) is a way to create consistent and modern API gateways for back-end services, including as those built with Dapr. Dapr support can be enabled in self-hosted API Management gateways to allow them to forward requests to Dapr services, send messages to Dapr Pub/Sub topics, or trigger Dapr output bindings. For more information, read the guide on [API Management Dapr Integration policies](https://docs.microsoft.com/azure/api-management/api-management-dapr-policies) and try out the [Dapr & Azure API Management Integration Demo](https://github.com/dapr/samples/tree/master/dapr-apim-integration).
9+
Azure API Management (APIM) is a way to create consistent and modern API gateways for back-end services, including those built with Dapr. Dapr support can be enabled in self-hosted API Management gateways to allow them to forward requests to Dapr services, send messages to Dapr Pub/Sub topics, or trigger Dapr output bindings. For more information, read the guide on [API Management Dapr Integration policies](https://docs.microsoft.com/azure/api-management/api-management-dapr-policies) and try out the [Dapr & Azure API Management Integration Demo](https://github.com/dapr/samples/tree/master/dapr-apim-integration).
1010

1111
{{< button text="Learn more" link="https://docs.microsoft.com/azure/api-management/api-management-dapr-policies" >}}

daprdocs/content/en/developing-applications/integrations/Azure/azure-kubernetes-service-extension.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ weight: 4000
77
---
88

99
# Prerequisites
10-
- [Azure subscription](https://azure.microsoft.com/free/?WT.mc_id=A261C142F)
10+
- Azure subscription
1111
- [Azure CLI](https://docs.microsoft.com/cli/azure/install-azure-cli-windows?tabs=azure-cli) and the ***aks-preview*** extension.
1212
- [Azure Kubernetes Service (AKS) cluster](https://docs.microsoft.com/azure/aks/tutorial-kubernetes-deploy-cluster?tabs=azure-cli)
1313

@@ -106,4 +106,4 @@ dapr-sidecar-injector-9555889bc-rpjwl 1/1 Running 0 1h
106106
dapr-sidecar-injector-9555889bc-rqjgt 1/1 Running 0 1h
107107
```
108108

109-
For further information such as configuration options and targeting specific versions of Dapr, see the official [AKS Dapr Extension Docs](https://docs.microsoft.com/azure/aks/dapr).
109+
For more information about configuration options and targeting specific Dapr versions, see the official [AKS Dapr Extension Docs](https://docs.microsoft.com/azure/aks/dapr).

0 commit comments

Comments
 (0)