Skip to content

Commit f26676f

Browse files
authored
Merge pull request #230598 from MicrosoftDocs/main
Publish to live, Tuesday 4 AM PST, 3/14
2 parents 1411d01 + 5d11f63 commit f26676f

File tree

331 files changed

+3826
-1895
lines changed

Some content is hidden

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

331 files changed

+3826
-1895
lines changed

.openpublishing.redirection.azure-monitor.json

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6005,6 +6005,26 @@
60056005
"source_path_from_root": "/articles/azure-monitor/app/availability-multistep.md",
60066006
"redirect_url": "/previous-versions/azure/azure-monitor/app/availability-multistep",
60076007
"redirect_document_id": false
6008+
},
6009+
{
6010+
"source_path_from_root": "/articles/azure-monitor/app/status-monitor-v2-overview.md",
6011+
"redirect_url": "/azure/azure-monitor/app/application-insights-asp-net-agent",
6012+
"redirect_document_id": false
6013+
},
6014+
{
6015+
"source_path_from_root": "/articles/azure-monitor/app/status-monitor-v2-get-started.md",
6016+
"redirect_url": "/azure/azure-monitor/app/application-insights-asp-net-agent",
6017+
"redirect_document_id": false
6018+
},
6019+
{
6020+
"source_path_from_root": "/articles/azure-monitor/app/status-monitor-v2-detailed-instructions.md",
6021+
"redirect_url": "/azure/azure-monitor/app/application-insights-asp-net-agent",
6022+
"redirect_document_id": false
6023+
},
6024+
{
6025+
"source_path_from_root": "/articles/azure-monitor/app/status-monitor-v2-api-reference.md",
6026+
"redirect_url": "/azure/azure-monitor/app/application-insights-asp-net-agent",
6027+
"redirect_document_id": false
60086028
}
60096029
]
60106030
}

.openpublishing.redirection.azure-productivity.json

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,61 @@
8989
"source_path": "articles/lab-services/troubleshoot.md",
9090
"redirect_url": "/azure/lab-services/troubleshoot-lab-creation",
9191
"redirect_document_id": true
92+
},
93+
{
94+
"source_path": "articles/lab-services/quick-create-lab-portal.md",
95+
"redirect_url": "/azure/lab-services/quick-create-connect-lab",
96+
"redirect_document_id": true
97+
},
98+
{
99+
"source_path": "articles/lab-services/tutorial-setup-lab-plan.md",
100+
"redirect_url": "/azure/lab-services/quick-create-resources",
101+
"redirect_document_id": true
102+
},
103+
{
104+
"source_path": "articles/lab-services/quick-create-lab-plan-portal.md",
105+
"redirect_url": "/azure/lab-services/quick-create-resources",
106+
"redirect_document_id": false
107+
},
108+
{
109+
"source_path": "articles/lab-services/quick-create-lab-bicep.md",
110+
"redirect_url": "/azure/lab-services/how-to-create-lab-bicep",
111+
"redirect_document_id": true
112+
},
113+
{
114+
"source_path": "articles/lab-services/quick-create-lab-plan-bicep.md",
115+
"redirect_url": "/azure/lab-services/how-to-create-lab-plan-bicep",
116+
"redirect_document_id": true
117+
},
118+
{
119+
"source_path": "articles/lab-services/quick-create-lab-plan-powershell.md",
120+
"redirect_url": "/azure/lab-services/how-to-create-lab-plan-powershell",
121+
"redirect_document_id": true
122+
},
123+
{
124+
"source_path": "articles/lab-services/quick-create-lab-plan-python.md",
125+
"redirect_url": "/azure/lab-services/how-to-create-lab-plan-python",
126+
"redirect_document_id": true
127+
},
128+
{
129+
"source_path": "articles/lab-services/quick-create-lab-plan-template.md",
130+
"redirect_url": "/azure/lab-services/how-to-create-lab-plan-template",
131+
"redirect_document_id": true
132+
},
133+
{
134+
"source_path": "articles/lab-services/quick-create-lab-powershell.md",
135+
"redirect_url": "/azure/lab-services/how-to-create-lab-powershell",
136+
"redirect_document_id": true
137+
},
138+
{
139+
"source_path": "articles/lab-services/quick-create-lab-python.md",
140+
"redirect_url": "/azure/lab-services/how-to-create-lab-python",
141+
"redirect_document_id": true
142+
},
143+
{
144+
"source_path": "articles/lab-services/quick-create-lab-template.md",
145+
"redirect_url": "/azure/lab-services/how-to-create-lab-template",
146+
"redirect_document_id": true
92147
}
93148
]
94149
}

articles/api-management/TOC.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@
2626
- name: Create an instance - ARM template
2727
displayName: Resource Manager
2828
href: quickstart-arm-template.md
29+
- name: Create an instance - Terraform
30+
href: quickstart-terraform.md
2931
- name: Tutorials
3032
items:
3133
- name: 1 - Import your first API
Lines changed: 126 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
---
2+
title: 'Quickstart: Create an Azure API Management service using Terraform'
3+
description: 'In this article, you create an Azure API Management service using Terraform.'
4+
ms.topic: quickstart
5+
ms.service: api-management
6+
ms.date: 3/13/2023
7+
ms.custom: devx-track-terraform
8+
author: TomArcherMsft
9+
ms.author: tarcher
10+
---
11+
12+
# Quickstart: Create an Azure API Management service using Terraform
13+
14+
This article shows how to use [Terraform](/azure/terraform) to create an [API Management service instance](/azure/api-management/api-management-key-concepts) on Azure. API Management helps organizations publish APIs to external, partner, and internal developers to unlock the potential of their data and services. API Management provides the core competencies to ensure a successful API program through developer engagement, business insights, analytics, security, and protection. API Management enables you to create and manage modern API gateways for existing backend services hosted anywhere. For more information, see the [Azure API Management - Overview and key concepts](api-management-key-concepts.md).
15+
16+
[!INCLUDE [Terraform abstract](~/azure-dev-docs-pr/articles/terraform/includes/abstract.md)]
17+
18+
In this article, you learn how to:
19+
20+
> [!div class="checklist"]
21+
> * Create a random pet name for the Azure resource group name using [random_pet](https://registry.terraform.io/providers/hashicorp/random/latest/docs/resources/pet)
22+
> * Create an Azure resource group using [azurerm_resource_group](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/resource_group)
23+
> * Create a random string for the Azure API Management service name using [random_string](https://registry.terraform.io/providers/hashicorp/random/latest/docs/resources/string)
24+
> * Create an Azure API Management service using [azurerm_api_management](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/api_management)
25+
26+
[!INCLUDE [AI attribution](../../includes/ai-generated-attribution.md)]
27+
28+
## Prerequisites
29+
30+
- [Install and configure Terraform](/azure/developer/terraform/quickstart-configure)
31+
32+
## Implement the Terraform code
33+
34+
> [!NOTE]
35+
> The sample code for this article is located in the [Azure Terraform GitHub repo](https://github.com/Azure/terraform/tree/master/quickstart/101-azure-api-management-create). You can view the log file containing the [test results from current and previous versions of Terraform](https://github.com/Azure/terraform/tree/master/quickstart/101-azure-api-management-create/TestRecord.md).
36+
>
37+
> See more [articles and sample code showing how to use Terraform to manage Azure resources](/azure/terraform)
38+
39+
1. Create a directory in which to test and run the sample Terraform code and make it the current directory.
40+
41+
1. Create a file named `main.tf` and insert the following code:
42+
43+
[!code-terraform[master](~/terraform_samples/quickstart/101-azure-api-management-create/main.tf)]
44+
45+
1. Create a file named `outputs.tf` and insert the following code:
46+
47+
[!code-terraform[master](~/terraform_samples/quickstart/101-azure-api-management-create/outputs.tf)]
48+
49+
1. Create a file named `providers.tf` and insert the following code:
50+
51+
[!code-terraform[master](~/terraform_samples/quickstart/101-azure-api-management-create/providers.tf)]
52+
53+
1. Create a file named `variables.tf` and insert the following code:
54+
55+
[!code-terraform[master](~/terraform_samples/quickstart/101-azure-api-management-create/variables.tf)]
56+
57+
## Initialize Terraform
58+
59+
[!INCLUDE [terraform-init.md](~/azure-dev-docs-pr/articles/terraform/includes/terraform-init.md)]
60+
61+
## Create a Terraform execution plan
62+
63+
[!INCLUDE [terraform-plan.md](~/azure-dev-docs-pr/articles/terraform/includes/terraform-plan.md)]
64+
65+
## Apply a Terraform execution plan
66+
67+
[!INCLUDE [terraform-apply-plan.md](~/azure-dev-docs-pr/articles/terraform/includes/terraform-apply-plan.md)]
68+
69+
## Verify the results
70+
71+
#### [Azure CLI](#tab/azure-cli)
72+
73+
1. Get the Azure resource group name.
74+
75+
```console
76+
resource_group_name=$(terraform output -raw resource_group_name)
77+
```
78+
79+
1. Get the service name.
80+
81+
```console
82+
api_management_service_name=$(terraform output -raw api_management_service_name)
83+
```
84+
85+
1. Run [az apim show](/cli/azure/apim#az-apim-show) to display information about the new service.
86+
87+
```azurecli
88+
az apim show --resource-group $resource_group_name \
89+
--name $api_management_service_name
90+
```
91+
92+
#### [Azure PowerShell](#tab/azure-powershell)
93+
94+
1. Get the Azure resource group name.
95+
96+
```console
97+
$resource_group_name=$(terraform output -raw resource_group_name)
98+
```
99+
100+
1. Get the service name.
101+
102+
```console
103+
$api_management_service_name=$(terraform output -raw api_management_service_name)
104+
```
105+
106+
1. Run [Get-AzApiManagement](/powershell/module/az.apimanagement/get-azapimanagement) to display information about the new service.
107+
108+
```azurepowershell
109+
Get-AzApiManagement -ResourceGroupName $resource_group_name `
110+
-Name $api_management_service_name
111+
```
112+
113+
---
114+
115+
## Clean up resources
116+
117+
[!INCLUDE [terraform-plan-destroy.md](~/azure-dev-docs-pr/articles/terraform/includes/terraform-plan-destroy.md)]
118+
119+
## Troubleshoot Terraform on Azure
120+
121+
[Troubleshoot common problems when using Terraform on Azure](/azure/developer/terraform/troubleshoot)
122+
123+
## Next steps
124+
125+
> [!div class="nextstepaction"]
126+
> [Tutorial: Import and publish your first API](import-and-publish.md)

articles/app-service/overview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ Azure App Service is a fully managed platform as a service (PaaS) offering for d
2525
* **Containerization and Docker** - Dockerize your app and host a custom Windows or Linux container in App Service. Run multi-container apps with Docker Compose. Migrate your Docker skills directly to App Service.
2626
* **DevOps optimization** - Set up [continuous integration and deployment](deploy-continuous-deployment.md) with Azure DevOps, GitHub, BitBucket, Docker Hub, or Azure Container Registry. Promote updates through [test and staging environments](deploy-staging-slots.md). Manage your apps in App Service by using [Azure PowerShell](/powershell/azure/) or the [cross-platform command-line interface (CLI)](/cli/azure/install-azure-cli).
2727
* **Global scale with high availability** - Scale [up](manage-scale-up.md) or [out](../azure-monitor/autoscale/autoscale-get-started.md) manually or automatically. Host your apps anywhere in Microsoft's global datacenter infrastructure, and the App Service [SLA](https://azure.microsoft.com/support/legal/sla/app-service/) promises high availability.
28-
* **Connections to SaaS platforms and on-premises data** - Choose from more than 50 [connectors](../connectors/apis-list.md) for enterprise systems (such as SAP), SaaS services (such as Salesforce), and internet services (such as Facebook). Access on-premises data using [Hybrid Connections](app-service-hybrid-connections.md) and [Azure Virtual Networks](./overview-vnet-integration.md).
28+
* **Connections to SaaS platforms and on-premises data** - Choose from [many hundreds of connectors](/connectors/connector-reference/connector-reference-logicapps-connectors) for enterprise systems (such as SAP), SaaS services (such as Salesforce), and internet services (such as Facebook). Access on-premises data using [Hybrid Connections](app-service-hybrid-connections.md) and [Azure Virtual Networks](./overview-vnet-integration.md).
2929
* **Security and compliance** - App Service is [ISO, SOC, and PCI compliant](https://www.microsoft.com/trustcenter). Authenticate users with [Azure Active Directory](configure-authentication-provider-aad.md), [Google](configure-authentication-provider-google.md), [Facebook](configure-authentication-provider-facebook.md), [Twitter](configure-authentication-provider-twitter.md), or [Microsoft account](configure-authentication-provider-microsoft.md). Create [IP address restrictions](app-service-ip-restrictions.md) and [manage service identities](overview-managed-identity.md). [Prevent subdomain takeovers](reference-dangling-subdomain-prevention.md).
3030
* **Application templates** - Choose from an extensive list of application templates in the [Azure Marketplace](https://azure.microsoft.com/marketplace/), such as WordPress, Joomla, and Drupal.
3131
* **Visual Studio and Visual Studio Code integration** - Dedicated tools in Visual Studio and Visual Studio Code streamline the work of creating, deploying, and debugging.
Lines changed: 18 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,47 +1,41 @@
11
---
2-
title: Backup and restore for Azure Database for PostgreSQL server
3-
description: Explains how to back up and restore for Azure Database for PostgreSQL servers
2+
title: Automated backup for Azure Arc-enabled PostgreSQL server
3+
description: Explains how to configure backups for Azure Arc-enabled PostgreSQL server
44
services: azure-arc
55
ms.service: azure-arc
66
ms.subservice: azure-arc-data-postgresql
77
author: dhanmm
88
ms.author: dhmahaja
99
ms.reviewer: mikeray
10-
ms.date: 11/03/2021
10+
ms.date: 03/12/2023
1111
ms.topic: how-to
1212
---
1313

14-
# Back up and restore Azure Arc-enabled PostgreSQL servers
14+
# Automated backup Azure Arc-enabled PostgreSQL servers
1515

16-
Automated backups can be enabled by including the `--storage-class-backups` argument when creating an Azure Arc-enabled PostgreSQL server. Specify the retention period for backups with the `--retention-days` parameter, when creating or updating an Arc-enabled PostgreSQL server. The retention period can be between 0 and 35 days. If backups are enabled but no retention period is specified, the default is seven days.
16+
To enable automated backups, include the `--storage-class-backups` argument when you create an Azure Arc-enabled PostgreSQL server. Specify the retention period for backups with the `--retention-days` parameter. Use this parameter when you create or update an Arc-enabled PostgreSQL server. The retention period can be between 0 and 35 days. If backups are enabled but no retention period is specified, the default is seven days.
1717

18-
Restoring an Azure Arc-enable PostgreSQL server creates a new server by copying the configuration of the existing server (for example resource requests/limits, extensions etc.). Configurations that could cause conflicts (for example primary endpoint port) aren't copied. The storage configuration for the new resource can be defined by passing `--storage-class*` and `--volume-size-*` parameters to the `restore` command.
18+
Additionally, if you set the retention period to zero, then automated backups are disabled.
1919

20-
Restore an Azure Arc-enabled PostgreSQL server to a new server with the `restore` command:
21-
```azurecli
22-
az postgres server-arc restore -n <destination-server-name> --source-server <source-server-name> --k8s-namespace <namespace> --use-k8s
23-
```
20+
[!INCLUDE [azure-arc-data-preview](../../../includes/azure-arc-data-preview.md)]
2421

25-
## Examples:
22+
## Create server with automated backup
2623

27-
Create a new Arc-enabled PostgreSQL server `pg02` by restoring `pg01` using the latest backups:
28-
```azurecli
29-
az postgres server-arc restore -n pg02 --source-server pg01 --k8s-namespace arc --use-k8s
30-
```
24+
Create an Azure Arc-enabled PostgreSQL server with automated backups:
3125

32-
Create a new Arc-enabled PostgreSQL server `pg02` by restoring `pg01` using the latest backups, defining new storage requirements for pg02:
3326
```azurecli
34-
az postgres server-arc restore -n pg02 --source-server pg01 --k8s-namespace arc --storage-class-data azurefile-csi-premium --volume-size-data 10Gi --storage-class-logs azurefile-csi-premium --volume-size-logs 2Gi--use-k8s --storage-class-backups azurefile-csi-premium --volume-size-backups 15Gi
27+
az postgres server-arc create -n <name> -k <namespace> --storage-class-backups <storage-class> --retention-days <number of days> --use-k8s
3528
```
3629

37-
Create a new Arc-enabled PostgreSQL server `pg02` by restoring `pg01` to its state at `2023-02-01T00:00:00Z`:
38-
```azurecli
39-
az postgres server-arc restore -n pg02 --source-server pg01 --k8s-namespace arc -t 2023-02-01T00:00:00Z --use-k8s
40-
```
30+
## Update a server to set retention period
31+
32+
Update the backup retention period for an Azure Arc-enabled PostgreSQL server:
4133

42-
For details about all the parameters available for restore review the output of the command:
4334
```azurecli
44-
az postgres server-arc restore --help
35+
az postgres server-arc update -n pg01 -k test --retention-days <number of days> --use-k8s
4536
```
4637

47-
- Read about [scaling up or down (increasing/decreasing memory/vcores)](scale-up-down-postgresql-server-using-cli.md) your server.
38+
## Next steps
39+
40+
- [Restore Azure Arc-enabled PostgreSQL servers](restore-postgresql.md)
41+
- [Scaling up or down (increasing/decreasing memory/vcores)](scale-up-down-postgresql-server-using-cli.md) your server.

articles/azure-arc/data/configure-security-postgresql.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,10 @@ To configure roles and users in your Azure Arc-enabled PostgreSQL server, use th
169169

170170
For audit scenarios please configure your server group to use the `pgaudit` extensions of Postgres. For more details about `pgaudit` see [`pgAudit` GitHub project](https://github.com/pgaudit/pgaudit/blob/master/README.md). To enable the `pgaudit` extension in your server group read [Use PostgreSQL extensions](using-extensions-in-postgresql-server.md).
171171

172+
## Use SSL connection
173+
174+
SSL is required for client connections. In connection string, the SSL mode parameter should not be disabled. [Form connection strings](get-connection-endpoints-and-connection-strings-postgresql-server.md#form-connection-strings).
175+
172176
## Next steps
173177
- See [`pgcrypto` extension](https://www.postgresql.org/docs/current/pgcrypto.html)
174178
- See [Use PostgreSQL extensions](using-extensions-in-postgresql-server.md)

articles/azure-arc/data/deploy-active-directory-postgresql-server-cli.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@ Before you proceed, install the following tools:
2828

2929
To know more further details about how to set up OU and AD account, go to [Deploy Azure Arc-enabled data services in Active Directory authentication - prerequisites](active-directory-prerequisites.md)
3030

31+
> [!IMPORTANT]
32+
> When using Active Directory, the default account must be named "postgres" in order for connections to succeed.
3133
3234
## Deploy and update Active Directory integrated Azure Arc-enabled PostgreSQL server
3335

articles/azure-arc/data/get-connection-endpoints-and-connection-strings-postgresql-server.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ Use these end points to:
6464
- Access the Grafana and Kibana dashboards from your browser
6565

6666
For example, you can use the end point named _PostgreSQL Instance_ to connect with psql to your server group:
67+
6768
```console
6869
psql postgresql://postgres:[email protected]:5432
6970
psql (10.14 (Ubuntu 10.14-0ubuntu0.18.04.1), server 12.4 (Ubuntu 12.4-1.pgdg16.04+1))
@@ -80,6 +81,7 @@ postgres=#
8081
8182

8283
## From CLI with kubectl
84+
8385
```console
8486
kubectl get postgresqls/<server name> -n <namespace name>
8587
```
@@ -100,6 +102,9 @@ postgres01 Ready 3/3 12.345.567.89:5432 9d
100102

101103
Use the connections string examples below for your server group. Copy, paste, and customize them as needed:
102104

105+
> [!IMPORTANT]
106+
> SSL is required for client connections. In connection string, the SSL mode parameter should not be disabled. For more information, review [https://www.postgresql.org/docs/14/runtime-config-connection.html](https://www.postgresql.org/docs/14/runtime-config-connection.html).
107+
103108
### ADO.NET
104109

105110
```ado.net

0 commit comments

Comments
 (0)