Updates from: 10/12/2022 01:06:32
Service Microsoft Docs article Related commit history on GitHub Change details
application-gateway Quick Create Bicep https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/application-gateway/quick-create-bicep.md
Title: 'Quickstart: Direct web traffic using Bicep'
description: In this quickstart, you learn how to use Bicep to create an Azure Application Gateway that directs web traffic to virtual machines in a backend pool. --++ Last updated 04/14/2022
azure-arc Active Directory Introduction https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-arc/data/active-directory-introduction.md
Previously updated : 04/15/2022 Last updated : 10/11/2022
Azure Arc-enabled data services support Active Directory (AD) for Identity and Access Management (IAM). The Arc-enabled SQL Managed Instance uses an existing on-premises Active Directory (AD) domain for authentication. - This article describes how to enable Azure Arc-enabled SQL Managed Instance with Active Directory (AD) Authentication. The article demonstrates two possible AD integration modes: - Customer-managed keytab (CMK) - System-managed keytab (SMK)
To enable Active Directory authentication for Arc-enabled SQL Managed Instance,
The following section compares these modes.
-| |Customer-managed keytabΓÇï|System-managed keytab - PreviewΓÇï|
+| |Customer-managed keytabΓÇï|System-managed keytab|
|||--| |**Use cases**|Small and medium size businesses who are familiar with managing Active Directory objects and want flexibility in their automation process |All sizes of businesses - seeking to highly automated Active Directory management experience| |**User provides**|An Active Directory account and SPNs under that account, and a [keytab file](/sql/linux/sql-server-linux-ad-auth-understanding#what-is-a-keytab-file) for Active Directory authentication |An [Organizational Unit (OU)](../../active-directory-domain-services/create-ou.md) and a domain service account has [sufficient permissions](deploy-system-managed-keytab-active-directory-connector.md?#prerequisites) on that OU in Active Directory.| |**Characteristics**|User managed. Users bring the Active Directory account, which impersonates the identity of the managed instance and the keytab file. |System managed. The system creates a domain service account for each managed instance and sets SPNs automatically on that account. It also, creates and delivers a keytab file to the managed instance. | |**Deployment process**| 1. Deploy data controller <br/> 2. Create keytab file <br/>3. Set up keytab information to Kubernetes secret<br/> 4. Deploy AD connector, deploy SQL managed instance<br/><br/>For more information, see [Deploy a customer-managed keytab Active Directory connector](deploy-customer-managed-keytab-active-directory-connector.md) | 1. Deploy data controller, deploy AD connector<br/>2. Deploy SQL managed instance<br/><br/>For more information, see [Deploy a system-managed keytab Active Directory connector](deploy-system-managed-keytab-active-directory-connector.md) | |**Manageability**|You can create the keytab file by following the instructions from [Active Directory utility (`adutil`)](/sql/linux/sql-server-linux-ad-auth-adutil-introduction). Manual keytab rotation. |Managed keytab rotation.|
-|**Limitations**|We do not recommend sharing keytab files among services. Each service should have a specific keytab file. As the number of keytab files increases the level of effort and complexity increases. |Managed keytab generation and rotation. The service account will require sufficient permissions in Active Directory to manage the credentials. |
+|**Limitations**|We do not recommend sharing keytab files among services. Each service should have a specific keytab file. As the number of keytab files increases the level of effort and complexity increases. |Managed keytab generation and rotation. The service account will require sufficient permissions in Active Directory to manage the credentials. <br/> <br/> Distributed Availability Group is not supported.|
For either mode, you need a specific Active Directory account, keytab, and Kubernetes secret for each SQL managed instance.
azure-arc Active Directory Prerequisites https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-arc/data/active-directory-prerequisites.md
Previously updated : 04/21/2022 Last updated : 10/11/2022
This document explains how to prepare to deploy Azure Arc-enabled data services with Active Directory (AD) authentication. Specifically the article describes Active Directory objects you need to configure before the deployment of Kubernetes resources. - [The introduction](active-directory-introduction.md#compare-ad-integration-modes) describes two different integration modes: - *System-managed keytab* mode allows the system to create and manage the AD accounts for each SQL Managed Instance. - *Customer-managed keytab* mode allows you to create and manage the AD accounts for each SQL Managed Instance.
azure-arc Connect Active Directory Sql Managed Instance https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-arc/data/connect-active-directory-sql-managed-instance.md
Previously updated : 12/15/2021 Last updated : 10/11/2022
This article describes how to connect to SQL Managed Instance endpoint using Active Directory (AD) authentication. Before you proceed, make sure you have an AD-integrated Azure Arc-enabled SQL Managed Instance deployed already. - See [Tutorial ΓÇô Deploy AD-integrated SQL Managed Instance](deploy-active-directory-sql-managed-instance.md) to deploy Azure Arc-enabled SQL Managed Instance with Active Directory authentication enabled. > [!NOTE]
azure-arc Deploy Active Directory Connector Cli https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-arc/data/deploy-active-directory-connector-cli.md
Previously updated : 08/16/2022 Last updated : 10/11/2022
This article explains how to deploy an Active Directory (AD) connector using Azure CLI. The AD connector is a key component to enable Active Directory authentication on Azure Arc-enabled SQL Managed Instance. - ## Prerequisites ### Install tools
azure-arc Deploy Active Directory Connector Portal https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-arc/data/deploy-active-directory-connector-portal.md
Previously updated : 05/24/2022 Last updated : 10/11/2022
Active Directory (AD) connector is a key component to enable Active Directory authentication on Azure Arc-enabled SQL Managed Instances. - This article explains how to deploy, manage, and delete an Active Directory (AD) connector in directly connected mode from the Azure portal. ## Prerequisites
azure-arc Deploy Active Directory Sql Managed Instance Cli https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-arc/data/deploy-active-directory-sql-managed-instance-cli.md
Previously updated : 04/28/2022 Last updated : 10/11/2022
This article explains how to deploy Azure Arc-enabled SQL Managed Instance with Active Directory (AD) authentication using Azure CLI. - See these articles for specific instructions: - [Tutorial ΓÇô Deploy AD connector in customer-managed keytab mode](deploy-customer-managed-keytab-active-directory-connector.md)
az sql mi-arc create
--ad-connector-name < your AD connector name > --keytab-secret < SQL MI keytab secret name > --ad-account-name < SQL MI AD user account > primary-dns-name < SQL MI DNS endpoint > primary-port-number < SQL MI port number >
+--primary-dns-name < SQL MI primary endpoint DNS name >
+--primary-port-number < SQL MI primary endpoint port number >
+--secondary-dns-name < SQL MI secondary endpoint DNS name >
+--secondary-port-number < SQL MI secondary endpoint port number >
--use-k8s ```
az sql mi-arc create
--ad-account-name arcuser --primary-dns-name arcsqlmi.contoso.local --primary-port-number 31433
+--secondary-dns-name arcsqlmi-2.contoso.local
+--secondary-port-number 31434
--use-k8s ```
az sql mi-arc create
--name < SQL MI name > --ad-connector-name < your AD connector name > --keytab-secret < SQL MI keytab secret name > ad-account-name < SQL MI AD user account > primary-dns-name < SQL MI DNS endpoint > primary-port-number < SQL MI port number > location < your cloud region >
+--ad-account-name < SQL MI AD user account >
+--primary-dns-name < SQL MI primary endpoint DNS name >
+--primary-port-number < SQL MI primary endpoint port number >
+--secondary-dns-name < SQL MI secondary endpoint DNS name >
+--secondary-port-number < SQL MI secondary endpoint port number >
--custom-location < your custom location > --resource-group < resource-group > ```
az sql mi-arc create
--ad-account-name arcuser --primary-dns-name arcsqlmi.contoso.local --primary-port-number 31433 location westeurope
+--secondary-dns-name arcsqlmi-2.contoso.local
+--secondary-port-number 31434
--custom-location private-location --resource-group arc-rg ```
az sql mi-arc create
--k8s-namespace < namespace > --ad-connector-name < your AD connector name > --ad-account-name < SQL MI AD user account > primary-dns-name < SQL MI DNS endpoint > primary-port-number < SQL MI port number >
+--primary-dns-name < SQL MI primary endpoint DNS name >
+--primary-port-number < SQL MI primary endpoint port number >
+--secondary-dns-name < SQL MI secondary endpoint DNS name >
+--secondary-port-number < SQL MI secondary endpoint port number >
--use-k8s ```
az sql mi-arc create
--ad-account-name arcuser --primary-dns-name arcsqlmi.contoso.local --primary-port-number 31433
+--secondary-dns-name arcsqlmi-2.contoso.local
+--secondary-port-number 31434
--use-k8s ```
az sql mi-arc create
--name < SQL MI name > --ad-connector-name < your AD connector name > --ad-account-name < SQL MI AD user account > primary-dns-name < SQL MI DNS endpoint > primary-port-number < SQL MI port number > location < your cloud region >
+--primary-dns-name < SQL MI primary endpoint DNS name >
+--primary-port-number < SQL MI primary endpoint port number >
+--secondary-dns-name < SQL MI secondary endpoint DNS name >
+--secondary-port-number < SQL MI secondary endpoint port number >
--custom-location < your custom location > --resource-group <resource-group> ```
az sql mi-arc create
--ad-account-name arcuser --primary-dns-name arcsqlmi.contoso.local --primary-port-number 31433 location westeurope
+--secondary-dns-name arcsqlmi-2.contoso.local
+--secondary-port-number 31434
--custom-location private-location --resource-group arc-rg ```
azure-arc Deploy Active Directory Sql Managed Instance https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-arc/data/deploy-active-directory-sql-managed-instance.md
Previously updated : 04/05/2022 Last updated : 10/11/2022
This article explains how to deploy Azure Arc-enabled SQL Managed Instance with Active Directory (AD) authentication. - Before you proceed, complete the steps explained in [Customer-managed keytab Active Directory (AD) connector](deploy-customer-managed-keytab-active-directory-connector.md) or [Deploy a system-managed keytab AD connector](deploy-system-managed-keytab-active-directory-connector.md) ## Prerequisites
The following instructions expect that the users can bring in the Active Directo
* An Active Directory user account for SQL * Service Principal Names (SPNs) under the user account
-* DNS record for the endpoint DNS name for SQL
+* DNS A (forward) record for the primary (and optionally, secondary) endpoint of SQL
#### [System-managed keytab mode](#tab/system-managed-keytab-mode) The following instructions expect that the users can bring in the Active Directory domain and provide to the AD system-managed keytab deployment. * A unique name of an Active Directory user account for SQL
-* DNS record for the endpoint DNS name for SQL
+* DNS A (forward) record for the primary (and optionally, secondary) endpoint of SQL
## Before you deploy SQL Managed Instance
-1. Identify a DNS name for the SQL endpoint.
+1. Identify a DNS name for the SQL endpoints.
- Choose a unique DNS name for the SQL endpoint that clients will connect to from outside the Kubernetes cluster.
+ Choose unique DNS names for the SQL endpoints that clients will connect to from outside the Kubernetes cluster.
- This DNS name should be in the Active Directory domain or its descendant domains.
+ These DNS names should be in the Active Directory domain or its descendant domains.
- The examples in these instructions use `sqlmi.contoso.local` for the DNS name.
+ The examples in these instructions use `sqlmi-primary.contoso.local` for the primary DNS name and `sqlmi-secondary.contoso.local` for the secondary DNS name.
-2. Identify the port number for the SQL endpoint.
+2. Identify the port numbers for the SQL endpoints.
- You provide a port number for the SQL endpoint.
+ You provide a port number for each of the SQL endpoints.
- This port number must be in the acceptable range of port numbers for Kubernetes cluster.
+ These port numbers must be in the acceptable range of port numbers for Kubernetes cluster.
- The examples in these instructions use `31433` for the port number.
+ The examples in these instructions use `31433` for the primary port number and `31434` for the secondary port number.
### [Customer-managed keytab mode](#tab/customer-managed-keytab-mode)
The following instructions expect that the users can bring in the Active Directo
-4. Create a DNS record for the SQL endpoint in the Active Directory DNS servers.
+4. Create DNS records for the SQL endpoints in the Active Directory DNS servers.
- In one of the Active Directory DNS servers, create an A record (forward lookup record) for the DNS name chosen in step 1. This DNS record should point to the IP address that the SQL endpoint will listen on for connections from outside the Kubernetes cluster.
+ In one of the Active Directory DNS servers, create A records (forward lookup records) for the DNS names chosen in step 1. These DNS records should point to the IP address that the SQL endpoint will listen on for connections from outside the Kubernetes cluster.
- You do not need to create a PTR record (reverse lookup record) in association with the A record.
+ You do not need to create PTR records (reverse lookup records) in association with the A records.
### [Customer-managed keytab mode](#tab/customer-managed-keytab-mode) 5. Create Service Principal Names (SPNs)
- In order for SQL to be able to accept AD authentication against the SQL endpoint DNS name, we need to register two SPNs under the account generated in the previous step. These two SPNs should be of the following format:
+ In order for SQL to be able to accept AD authentication against the SQL endpoints, we need to register two SPNs under the account generated in the previous step. SPNs must be registered for the primary endpoint and optionally for the secondary endpoint if AD authentication is desired on the secondary endpoint. The SPNs should be of the following format:
```output MSSQLSvc/<DNS name>
The following instructions expect that the users can bring in the Active Directo
setspn -S MSSQLSvc/<DNS name>:<port> <account> ```
- With the chosen example DNS name, port number and the account name in this document, the commands should look like the following:
+ With the chosen example primary endpoint DNS name, port number and the account name in this document, the commands should look like the following:
+
+ ```console
+ setspn -S MSSQLSvc/sqlmi-primary.contoso.local sqlmi-account
+ setspn -S MSSQLSvc/sqlmi-primary.contoso.local:31433 sqlmi-account
+ ```
+
+ Additionally, if AD authentication is needed on the secondary endpoint, the following commands will add SPNs for the secondary endpoint using the chosen example DNS name and port number:
```console
- setspn -S MSSQLSvc/sqlmi.contoso.local sqlmi-account
- setspn -S MSSQLSvc/sqlmi.contoso.local:31433 sqlmi-account
+ setspn -S MSSQLSvc/sqlmi-secondary.contoso.local sqlmi-account
+ setspn -S MSSQLSvc/sqlmi-secondary.contoso.local:31434 sqlmi-account
``` 6. Generate a keytab file containing entries for the account and SPNs
The following instructions expect that the users can bring in the Active Directo
The input parameters are expecting the following values: * `--realm` expects the uppercase of the AD domain, such as CONTOSO.LOCAL
- * `--account` expects the AD account under where the SPNs are registered, such sqlmi-account
- * `--port` expects the SQL endpoint port number 31433
- * `--dns-name` expects the DNS name for the SQL endpoint
+ * `--account` expects the AD account under where the SPNs are registered, such as sqlmi-account
+ * `--port` expects the primary SQL endpoint port number, such as 31433
+ * `--dns-name` expects the DNS name for the primary SQL endpoint
* `--keytab-file` expects the path to the keytab file * `--secret-name` expects the name of the keytab secret to generate a specification for * `--secret-namespace` expects the Kubernetes namespace containing the keytab secret
+ * `--secondary-port` expects the secondary SQL endpoint port number, such as 31434 (optional)
+ * `--secondary-dns-name` expects the DNS name for the secondary SQL endpoint (optional)
Choose a name for the Kubernetes secret hosting the keytab. The namespace should be the same as what SQL will be deployed in.
To support Active Directory authentication on SQL, the deployment specification
Name of the Active Directory account for this managed instance. - `spec.security.activeDirectory.keytabSecret` Name of the Kubernetes secret hosting the pre-created keytab file by users. This secret must be in the same namespace as the managed instance. This parameter is only required for the AD deployment in customer-managed keytab mode.
- - `spec.services.primary.dnsName`
+ - `spec.services.primary.dnsName`
You provide a DNS name for the primary SQL endpoint.
- - `spec.services.primary.port`
+ - `spec.services.primary.port`
You provide a port number for the primary SQL endpoint. - **Optional** - `spec.security.activeDirectory.connector.namespace` Kubernetes namespace of the pre-existing Active Directory connector to join for AD authentication. When not provided, system will assume the same namespace as SQL.
+ - `spec.services.readableSecondaries.dnsName`
+ You provide a DNS name for the secondary SQL endpoint.
+ - `spec.services.readableSecondaries.port`
+ You provide a port number for the secondary SQL endpoint.
### [System-managed keytab mode](#tab/system-managed-keytab-mode)
To support Active Directory authentication on SQL, the deployment specification
- **Optional** - `spec.security.activeDirectory.connector.namespace` Kubernetes namespace of the pre-existing Active Directory connector to join for AD authentication. When not provided, system will assume the same namespace as SQL.
- - `spec.security.activeDirectory.encryptionTypes`
- List of Kerberos encryption types to allow for the automatically generated AD account provided in `spec.security.activeDirectory.accountName`. Accepted values are RC4, AES128 and AES256. It defaults to allow all encryption types when there is no value provided. You can disable RC4 by providing only AES128 and AES256 as encryption types.
+ - `spec.security.activeDirectory.encryptionTypes`
+ List of Kerberos encryption types to allow for the automatically generated AD account provided in `spec.security.activeDirectory.accountName`. Accepted values are RC4, AES128 and AES256. It defaults to allow all encryption types when there is no value provided. You can disable RC4 by providing only AES128 and AES256 as encryption types.
+ - `spec.services.readableSecondaries.dnsName`
+ You provide a DNS name for the secondary SQL endpoint.
+ - `spec.services.readableSecondaries.port`
+ You provide a port number for the secondary SQL endpoint.
spec:
primary: type: LoadBalancer
- dnsName: <Endpoint DNS name>
- port: <Endpoint port number>
+ dnsName: <Primary Endpoint DNS name>
+ port: <Primary Endpoint port number>
+ readableSecondaries:
+ type: LoadBalancer
+ dnsName: <Secondary Endpoint DNS name>
+ port: <Secondary Endpoint port number>
storage: data: volumes:
spec:
primary: type: LoadBalancer
- dnsName: <Endpoint DNS name>
- port: <Endpoint port number>
+ dnsName: <Primary Endpoint DNS name>
+ port: <Primary Endpoint port number>
+ readableSecondaries:
+ type: LoadBalancer
+ dnsName: <Secondary Endpoint DNS name>
+ port: <Secondary Endpoint port number>
storage: data: volumes:
azure-arc Deploy Customer Managed Keytab Active Directory Connector https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-arc/data/deploy-customer-managed-keytab-active-directory-connector.md
Previously updated : 04/05/2022 Last updated : 10/11/2022
This article explains how to deploy Active Directory (AD) connector in customer-managed keytab mode. The connector is a key component to enable Active Directory authentication on Azure Arc-enabled SQL Managed Instance. - ## Active Directory connector in customer-managed keytab mode In customer-managed keytab mode, an Active Directory connector deploys a DNS proxy service that proxies the DNS requests coming from the managed instance to either of the two upstream DNS
azure-arc Deploy System Managed Keytab Active Directory Connector https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-arc/data/deploy-system-managed-keytab-active-directory-connector.md
Previously updated : 04/05/2022 Last updated : 10/11/2022
This article explains how to deploy Active Directory connector in system-managed keytab mode. It is a key component to enable Active Directory authentication on Azure Arc-enabled SQL Managed Instance. - ## Active Directory connector in system-managed keytab mode In System-Managed Keytab mode, an Active Directory connector deploys a DNS proxy service that proxies the DNS requests coming from the managed instance to either of the two upstream DNS
azure-arc Privacy Data Collection And Reporting https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-arc/data/privacy-data-collection-and-reporting.md
There are three resource types:
- Azure Arc-enabled SQL Managed Instance - Azure Arc-enabled PostgreSQL server -- SQL Server on Azure Arc-enabled servers
+- Azure Arc-enabled SQL Server
- Data controller The following sections show the properties, types, and descriptions that are collected and stored about each type of resource:
-### SQL Server on Azure Arc-enabled servers
+### Azure Arc-enabled SQL Server
- SQL Server edition. - `string: Edition` - Resource ID of the container resource (Azure Arc for Servers).
azure-arc Release Notes https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-arc/data/release-notes.md
This article highlights capabilities, features, and enhancements recently released or improved for Azure Arc-enabled data services.
+## October 11, 2022
+
+### Image tag
+
+`v1.12.0_2022-10-11`
+
+For complete release version information, see [Version log](version-log.md#october-11-2022).
+
+New for this release:
+- Arc data controller
+ - Updates to TelemetryRouter implementation to include inbound and outbound TelemetryCollector layers alongside Kafka as a persistent buffer
+ - AD connector will now be upgraded when data controller is upgraded
+
+- Arc-enabled SQL managed instance
+ - New reprovision replica task lets you rebuild a broken sql instance replica. For more information, see [Reprovision replica](reprovision-replica.md).
+ - Edit Active Directory settings from the Azure portal
+
+- `arcdata` Azure CLI extension
+ - Columns for release information added to the following commands: `az sql mi-arc list` this makes it easy to see what instance may need to be updated.
+ - Alternately you can run `az arcdata dc list-upgrades'
+ - New command to list AD Connectors `az arcdata ad-connector list --k8s-namespace <namespace> --use-k8s`
+ - Az CLI Polling for AD Connector create/update/delete: This feature changes the default behavior of `az arcdata ad-connector create/update/delete` to hang and wait until the operation finishes. To override this behavior, the user has to use the `--no-wait` flag when invoking the command.
+++ ## September 13, 2022 ### Image tag
azure-arc Reprovision Replica https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-arc/data/reprovision-replica.md
+
+ Title: Reprovision replica
+description: This article explains how to rebuild a broken Azure Arc-enabled SQL Managed Instance replica. A replica may break due to storage corruption, for example.
+++++++ Last updated : 10/05/2022++
+# Reprovision replica - Azure Arc-enabled SQL Managed Instance
+
+This article describes how to provision a new replica to replace an existing replica in Azure Arc-enabled SQL Managed Instance.
+
+When you reprovision a replica, you rebuild a new managed instance replica for an Azure Arc-enabled SQL Managed Instance deployment. Use this task to replace a replica that is failing to synchronize, for example, due to corruption of the data on the persistent volumes (PV) for that instance, or due to some recurring SQL issue.
+
+You can reprovision a replica [via `az` CLI](#via-az-cli) or [via `kubectl`](#via-kubectl). You can't reprovision a replica from the Azure portal.
+
+## Prerequisites
+
+You can only reprovision a replica on a multi-replica instance.
+
+## Via `az` CLI
+
+Azure CLI `az sql mi-arc` command group includes `reprovision-replica`. To reprovision a replica, update the following example. Replace `<instance_name-replica_number>` with the instance name and replica number of the replica you want to replace. Replace `<namespace>`.
+
+```az
+az sql mi-arc reprovision-replica -n <instance_name-replica_number> -k <namespace> --use-k8s
+```
+
+For example, to reprovision replica 2 of instance `mySqlInstance` in namespace `arc`, use:
+
+```az
+az sql mi-arc reprovision-replica -n mySqlInstance-2 -k arc --use-k8s
+```
+
+The command runs until completion, at which point the console returns the name of the Kubernetes task:
+
+```output
+sql-reprov-replica-mySqlInstance-2-1664217002.376132 is Ready
+```
+
+At this point, you can either examine the task or delete it.
+
+### Examine the task
+
+The following example returns information about the state of the Kubernetes task:
+
+```console
+kubectl describe SqlManagedInstanceReprovisionReplicaTask sql-reprov-replica-mySqlInstance-2-1664217002.376132 -n arc
+```
+
+> [!IMPORTANT]
+> After a replica is reprovisioned, you must delete the task before another reprovision can run on the same instance. For more information, see [Limitations](#limitations).
+
+### Delete the task
+
+The following example deletes the Kubernetes task:
+
+```console
+kubectl delete SqlManagedInstanceReprovisionReplicaTask sql-reprov-replica-mySqlInstance-2-1664217002.376132 -n arc
+```
+
+### Option parameter: `--no-wait`
+
+There's an optional `--no-wait` parameter for the command. If you send the request with `--no-wait`, the output includes the name of the task to be monitored. For example:
+
+```az
+az sql mi-arc reprovision-replica -n mySqlInstance-2 -k arc --use-k8s --no-wait
+Reprovisioning replica mySqlInstance-2 in namespace `arc`. Please use
+`kubectl get -n arc SqlManagedInstanceReprovisionReplicaTask sql-reprov-replica-mySqlInstance-2-1664217434.531035`
+to check its status or
+`kubectl get -n arc SqlManagedInstanceReprovisionReplicaTask`
+to view all reprovision tasks.
+```
+
+## Via kubectl
+
+To reprovision with `kubectl`, create a custom resource. To create a custom resource to reprovision, you can create a .yaml file with this structure:
+
+```yaml
+apiVersion: tasks.sql.arcdata.microsoft.com/v1beta1
+kind: SqlManagedInstanceReprovisionReplicaTask
+metadata:
+ name: <task name you make up>
+ namespace: <namespace>
+spec:
+ replicaName: instance_name-replica_number
+```
+
+To use the same example as above, `mySqlinstance` replica 2, the payload is:
+
+```yaml
+apiVersion: tasks.sql.arcdata.microsoft.com/v1beta1
+kind: SqlManagedInstanceReprovisionReplicaTask
+metadata:
+ name: my-reprovision-task-mySqlInstance-2
+ namespace: arc
+spec:
+ replicaName: mySqlInstance-2
+```
+
+### Monitor or delete the task
+
+Once the yaml is applied via kubectl apply, you can monitor or delete the task via kubectl:
+
+```console
+kubectl get -n arc SqlManagedInstanceReprovisionReplicaTask my-reprovision-task-mySqlInstance-2
+kubectl describe -n arc SqlManagedInstanceReprovisionReplicaTask my-reprovision-task-mySqlInstance-2
+kubectl delete -n arc SqlManagedInstanceReprovisionReplicaTask my-reprovision-task-mySqlInstance-2
+```
+
+> [!IMPORTANT]
+> After a replica is reprovisioned, you must delete the task before another reprovision can run on the same instance. For more information, see [Limitations](#limitations).
++
+## Limitations
+
+- The task rejects attempts to reprovision the current primary replica. If the current primary replica is corrupted and in need of reprovisioning, fail over to a different replica, and then request the reprovisioning.
+
+- Reprovisioning of multiple replicas in the same instance runs serially. The tasks queue and are held in `Creating` state until the currently active task finishes **and is deleted**. There's no auto-cleanup of a completed task, so this serialization will affect you even if you run the `az sql mi-arc reprovision-replica` command synchronously and wait for it to complete before requesting another reprovision. In all cases, you have to remove the task via `kubectl` before another reprovision on the same instance can run.
+
+More details about serialization of reprovision tasks: If you have multiple requests to reprovision a replica in one instance, you may see something like this in the output from a `kubectl get SqlManagedInstanceReprovisionReplicaTask`:
+
+```console
+kubectl get SqlManagedInstanceReprovisionReplicaTask -n arc
+NAME STATUS AGE
+sql-reprov-replica-c-sql-djlexlmty-1-1664217344.304601 Completed 13m
+sql-reprov-replica-c-sql-kkncursza-1-1664217002.376132 Completed 19m
+sql-reprov-replica-c-sql-kkncursza-1-1664217434.531035 Creating 12m
+```
+
+That last entry for replica c-sql-kkncursza-1, `sql-reprov-replica-c-sql-kkncursza-1-1664217434.531035`, will stay in status `Creating` until the completed one `sql-reprov-replica-c-sql-kkncursza-1-1664217002.376132` is removed.
azure-arc Upgrade Active Directory Connector https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-arc/data/upgrade-active-directory-connector.md
+
+ Title: Upgrade Active Directory connector for Azure SQL Managed Instance direct or indirect mode connected to Azure Arc
+description: The article describes how to upgrade an active directory connector for direct or indirect mode connected to Azure Arc-enabled SQL Managed Instance
++++++ Last updated : 10/11/2022+++
+# Upgrade Active Directory connector
+
+This article describes how to upgrade the Active Directory connector.
+
+## Prerequisites
+
+Before you can proceed with the tasks in this article, you need:
+
+- To connect and authenticate to a Kubernetes cluster
+- An existing Kubernetes context selected
+- Azure Arc data controller deployed, either in `direct` or `indirect` mode
+- Active Directory connector deployed
+
+### Install tools
+
+To upgrade the Active Directory connector (adc), you need to have the Kubernetes tools such as kubectl installed.
+
+The examples in this article use `kubectl`, but similar approaches could be used with other Kubernetes tools such as the Kubernetes dashboard, `oc`, or helm if you're familiar with those tools and Kubernetes yaml/json.
+
+[Install the kubectl tool](https://kubernetes.io/docs/tasks/tools/)
++
+## Limitations
+
+Auto upgrade of Active Directory connector is applicable from imageTag `v1.12.0_2022-10-11` and above and the Arc data controller must be at least `v1.11.0_2022-09-13` version.
+
+The active directory connector (adc) must be at the same version as the data controller before a data controller is upgraded.
+
+There is no batch upgrade process available at this time.
+
+## Upgrade Active Directory connector for previous versions
+
+For imageTag versions `v1.11.0_2022-09-13` or lower, the Active Directory connector must be upgraded manually as below:
+
+Use a kubectl command to view the existing spec in yaml.
+
+```console
+kubectl get adc <adc-name> --namespace <namespace> --output yaml
+```
+
+Run kubectl patch to update the desired version.
+
+```console
+kubectl patch adc <adc-name> --namespace <namespace> --type merge --patch '{"spec": {"update": {"desiredVersion": "v1.11.0_2022-09-13"}}}'
+```
+
+## Monitor
+
+You can monitor the progress of the upgrade with kubectl as follows:
+
+```console
+kubectl describe adc <adc-name> --namespace <namespace>
+```
+
+### Output
+
+The output for the command will show the resource information. Upgrade information will be in Status.
+
+During the upgrade, ```State``` will show ```Updating``` and ```Running Version``` will be the current version:
+
+```output
+Status:
+ Last Update Time: 2022-09-20T16:01:48.449512Z
+ Observed Generation: 1
+ Running Version: v1.10.0_2022-08-09
+ State: Updating
+```
+
+When the upgrade is complete, ```State``` will show ```Ready``` and ```Running Version``` will be the new version:
+
+```output
+Status:
+ Last Update Time: 2022-09-20T16:01:54.279612Z
+ Observed Generation: 2
+ Running Version: v1.11.0_2022-09-13
+ State: Ready
+```
+
azure-arc Upgrade Sql Managed Instance Cli https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-arc/data/upgrade-sql-managed-instance-cli.md
Previously updated : 07/07/2022 Last updated : 10/11/2022
The `arcdata` extension version and the image version are related. Check that yo
The Azure Arc Data Controller must be upgraded to the new version before the managed instance can be upgraded.
-The managed instance must be at the same version as the data controller before a data controller is upgraded.
+If Active Directory integration is enabled then Active Directory connector must be upgraded to the new version before the managed instance can be upgraded.
+
+The managed instance must be at the same version as the data controller and active directory connector before a data controller is upgraded.
There's no batch upgrade process available at this time.
azure-arc Upgrade Sql Managed Instance Direct Cli https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-arc/data/upgrade-sql-managed-instance-direct-cli.md
Previously updated : 07/07/2022 Last updated : 10/11/2022
The `arcdata` extension version and the image version are related. Check that yo
The Azure Arc data controller must be upgraded to the new version before the managed instance can be upgraded.
-The managed instance must be at the same version as the data controller before a data controller is upgraded.
+If Active Directory integration is enabled then Active Directory connector must be upgraded to the new version before the managed instance can be upgraded.
+
+The managed instance must be at the same version as the data controller and active directory connector before a data controller is upgraded.
There's no batch upgrade process available at this time.
azure-arc Upgrade Sql Managed Instance Direct Portal https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-arc/data/upgrade-sql-managed-instance-direct-portal.md
Previously updated : 07/07/2022 Last updated : 10/11/2022
This article describes how to upgrade Azure SQL Managed Instance deployed on a d
The Azure Arc data controller must be upgraded to the new version before the managed instance can be upgraded.
-The managed instance must be at the same version as the data controller before a data controller is upgraded.
+If Active Directory integration is enabled then Active Directory connector must be upgraded to the new version before the managed instance can be upgraded.
+
+The managed instance must be at the same version as the data controller and active directory connector before a data controller is upgraded.
There's no batch upgrade process available at this time.
azure-arc Upgrade Sql Managed Instance Indirect Kubernetes Tools https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-arc/data/upgrade-sql-managed-instance-indirect-kubernetes-tools.md
Previously updated : 07/07/2022 Last updated : 10/11/2022
You need an indirectly connected data controller with the `imageTag v1.0.0_2021-
The Azure Arc Data Controller must be upgraded to the new version before the managed instance can be upgraded.
-The managed instance must be at the same version as the data controller before a data controller is upgraded.
+If Active Directory integration is enabled then Active Directory connector must be upgraded to the new version before the managed instance can be upgraded.
+
+The managed instance must be at the same version as the data controller and active directory connector before a data controller is upgraded.
There's no batch upgrade process available at this time.
kubectl patch sqlmi <sqlmi-name> --namespace <namespace> --type merge --patch '{
## Monitor
-You can monitor the progress of the upgrade with kubectl.
-
-### kubectl
+You can monitor the progress of the upgrade with kubectl as follows:
```console kubectl describe sqlmi --namespace <namespace>
azure-arc Version Log https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-arc/data/version-log.md
This article identifies the component versions with each release of Azure Arc-enabled data services.
+## October 11, 2022
+
+|Component|Value|
+|--|--|
+|Container images tag |`v1.12.0_2022-10-11`|
+|CRD names and version|`datacontrollers.arcdata.microsoft.com`: v1beta1, v1 through v6<br/>`exporttasks.tasks.arcdata.microsoft.com`: v1beta1, v1, v2<br/>`kafkas.arcdata.microsoft.com`: v1beta1, v1beta2<br/>`monitors.arcdata.microsoft.com`: v1beta1, v1, v2<br/>`sqlmanagedinstances.sql.arcdata.microsoft.com`: v1beta1, v1 through v7<br/>`postgresqls.arcdata.microsoft.com`: v1beta1, v1beta2, v1beta3<br/>`sqlmanagedinstancerestoretasks.tasks.sql.arcdata.microsoft.com`: v1beta1, v1<br/>`failovergroups.sql.arcdata.microsoft.com`: v1beta1, v1beta2, v1 through v2<br/>`activedirectoryconnectors.arcdata.microsoft.com`: v1beta1, v1beta2, v1<br/>`sqlmanagedinstancereprovisionreplicatask.tasks.sql.arcdata.microsoft.com`: v1beta1<br/>`otelcollectors.arcdata.microsoft.com`: v1beta1, v1beta2<br/>`telemetryrouters.arcdata.microsoft.com`: v1beta1, v1beta2<br/>|
+|Azure Resource Manager (ARM) API version|2022-03-01-preview (No change)|
+|`arcdata` Azure CLI extension version|1.4.7|
+|Arc enabled Kubernetes helm chart extension version|1.12.0|
+|Arc Data extension for Azure Data Studio<br/>`arc`<br/>`azcli`|*No Changes*<br/>1.5.4 </br>1.5.4 |
+ ## September 13, 2022 |Component|Value|
azure-arc Overview https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/azure-arc/overview.md
For information, see the [Azure pricing page](https://azure.microsoft.com/pricin
* Learn about [Azure Arc-enabled servers](./servers/overview.md). * Learn about [Azure Arc-enabled Kubernetes](./kubernetes/overview.md). * Learn about [Azure Arc-enabled data services](https://azure.microsoft.com/services/azure-arc/hybrid-data-services/).
-* Learn about [SQL Server on Azure Arc-enabled servers](/sql/sql-server/azure-arc/overview).
+* Learn about [Azure Arc-enabled SQL Server](/sql/sql-server/azure-arc/overview).
* Learn about [Azure Arc-enabled VMware vSphere](vmware-vsphere/overview.md) and [Azure Arc-enabled Azure Stack HCI](/azure-stack/hci/manage/azure-arc-enabled-virtual-machines) * Learn about [Azure Arc-enabled System Center Virtual Machine Manager](system-center-virtual-machine-manager/overview.md) * Experience Azure Arc-enabled services by exploring the [Jumpstart proof of concept](https://azurearcjumpstart.io/azure_arc_jumpstart/).
chaos-studio Chaos Studio Chaos Engineering Overview https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/chaos-studio-chaos-engineering-overview.md
Title: Understanding chaos engineering and resilience with Azure Chaos Studio description: Understand the concepts of chaos engineering and resilience. -+ Last updated 11/01/2021-+
chaos-studio Chaos Studio Chaos Experiments https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/chaos-studio-chaos-experiments.md
Title: Chaos experiments in Azure Chaos Studio description: Understand the concept of a chaos experiment in Azure Chaos Studio. What are the pieces of a chaos experiment? How can I create a chaos experiment?--++ Last updated 11/01/2021
chaos-studio Chaos Studio Fault Library https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/chaos-studio-fault-library.md
Title: Chaos Studio fault and action library description: Understand the available actions you can use with Chaos Studio including any prerequisites and parameters. -+ Last updated 06/16/2022-+
chaos-studio Chaos Studio Fault Providers https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/chaos-studio-fault-providers.md
Title: Supported resource types and role assignments for Chaos Studio description: Understand the list of supported resource types and which role assignment is needed to enable an experiment to run a fault against that resource type. -+ Last updated 11/01/2021-+
chaos-studio Chaos Studio Faults Actions https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/chaos-studio-faults-actions.md
Title: Faults and actions in Azure Chaos Studio description: Understand what faults and actions are in Azure Chaos Studio. What is the difference between a fault and an action? How do you define a fault?--++ Last updated 11/01/2021
chaos-studio Chaos Studio Limitations https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/chaos-studio-limitations.md
Title: Azure Chaos Studio limitations and known issues description: Understand current limitations and known issues when using Azure Chaos Studio. -+ Last updated 11/02/2021-+
chaos-studio Chaos Studio Overview https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/chaos-studio-overview.md
Title: What is Azure Chaos Studio (Preview)? description: Measure, understand, and build resilience to incidents by using chaos engineering to inject faults and monitor how your application responds. -+ Last updated 05/27/2022-+
chaos-studio Chaos Studio Permissions Security https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/chaos-studio-permissions-security.md
Title: Permissions and security for Azure Chaos Studio description: Understand how permissions work in Azure Chaos Studio and how you can secure resources from accidental fault injection.--++ Last updated 11/01/2021
chaos-studio Chaos Studio Quickstart Dns Outage https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/chaos-studio-quickstart-dns-outage.md
Title: Use Azure Chaos Studio to replicate an internet DNS outage using the network security group fault description: Get started with Chaos Studio by creating a DNS outage using the network security group fault. -+ Last updated 08/26/2021-+
chaos-studio Chaos Studio Region Availability https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/chaos-studio-region-availability.md
Title: Regional availability of Chaos Studio description: Understand how Azure Chaos Studio makes chaos experiments and chaos targets available in Azure regions.--++ Last updated 4/29/2022
chaos-studio Chaos Studio Run Experiment https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/chaos-studio-run-experiment.md
Title: Run and manage a chaos experiment in Azure Chaos Studio description: Learn how to start, stop, view details, and view history for a chaos experiment in Azure Chaos Studio -+ Last updated 11/01/2021-+
chaos-studio Chaos Studio Samples Rest Api https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/chaos-studio-samples-rest-api.md
Title: Use the REST APIs to manage Azure Chaos Studio experiments description: Run and manage a chaos experiment with Azure Chaos Studio using REST APIs. -+ Last updated 11/01/2021-+
chaos-studio Chaos Studio Service Limits https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/chaos-studio-service-limits.md
Title: Azure Chaos Studio service limits description: Understand the throttling and usage limits for Azure Chaos Studio--++ Last updated 11/01/2021
chaos-studio Chaos Studio Targets Capabilities https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/chaos-studio-targets-capabilities.md
Title: Targets and capabilities in Azure Chaos Studio description: Understand how to control resource onboarding in Azure Chaos Studio by using targets and capabilities.--++ Last updated 11/01/2021
chaos-studio Chaos Studio Tutorial Agent Based Cli https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/chaos-studio-tutorial-agent-based-cli.md
Title: Create an experiment that uses an agent-based fault with Azure Chaos Studio with the Azure CLI description: Create an experiment that uses an agent-based fault and configure the chaos agent with the Azure CLI-+ Last updated 11/10/2021-+ ms.devlang: azurecli
chaos-studio Chaos Studio Tutorial Agent Based Portal https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/chaos-studio-tutorial-agent-based-portal.md
Title: Create an experiment that uses an agent-based fault with Azure Chaos Studio with the portal description: Create an experiment that uses an agent-based fault and configure the chaos agent with the portal-+ Last updated 11/01/2021-+
chaos-studio Chaos Studio Tutorial Aks Cli https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/chaos-studio-tutorial-aks-cli.md
Title: Create an experiment that uses an AKS Chaos Mesh fault using Azure Chaos Studio with the Azure CLI description: Create an experiment that uses an AKS Chaos Mesh fault with the Azure CLI-+ Last updated 04/21/2022-+ ms.devlang: azurecli
chaos-studio Chaos Studio Tutorial Aks Portal https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/chaos-studio-tutorial-aks-portal.md
Title: Create an experiment that uses an AKS Chaos Mesh fault using Azure Chaos Studio with the Azure portal description: Create an experiment that uses an AKS Chaos Mesh fault with the Azure portal-+ Last updated 04/21/2022-+
chaos-studio Chaos Studio Tutorial Service Direct Cli https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/chaos-studio-tutorial-service-direct-cli.md
Title: Create an experiment that uses a service-direct fault using Azure Chaos Studio with the Azure CLI description: Create an experiment that uses a service-direct fault with the Azure CLI--++ Last updated 11/10/2021
chaos-studio Chaos Studio Tutorial Service Direct Portal https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/chaos-studio-tutorial-service-direct-portal.md
Title: Create an experiment that uses a service-direct fault with Azure Chaos Studio description: Create an experiment that uses a service-direct fault--++ Last updated 11/01/2021
chaos-studio Sample Policy Targets https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/sample-policy-targets.md
Title: Azure Policy samples for onboarding resources in Azure Chaos Studio description: Sample Azure policies to onboard resources to Azure Chaos Studio using targets and capabilities -+ Last updated 11/11/2021-+
chaos-studio Sample Template Experiment https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/sample-template-experiment.md
Title: Azure Resource Manager template samples for chaos experiments description: Sample Azure Resource Manager templates to create Azure Chaos Studio experiments -+ Last updated 11/10/2021-+
chaos-studio Sample Template Targets https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/sample-template-targets.md
Title: Azure Resource Manager template samples for targets and capabilities in Azure Chaos Studio description: Sample Azure Resource Manager templates to onboard resources to Azure Chaos Studio using targets and capabilities -+ Last updated 11/10/2021-+
chaos-studio Tutorial Schedule https://github.com/MicrosoftDocs/azure-docs/commits/main/articles/chaos-studio/tutorial-schedule.md
Title: Schedule a recurring experiment run with Azure Chaos Studio description: Set up a logic app that schedules a chaos experiment in Azure Chaos Studio to run periodically. -+ Last updated 11/12/2021-+