Custom locations on top of Azure Arc-enabled Kubernetes
As an extension of the Azure location construct, Custom Locations provides a way for tenant administrators to use their Azure Arc-enabled Kubernetes clusters as target locations for deploying Azure services instances. Azure resources examples include Azure Arc-enabled SQL Managed Instance and Azure Arc-enabled PostgreSQL Hyperscale.
Similar to Azure locations, end users within the tenant with access to Custom Locations can deploy resources there using their company's private compute.
You can visualize Custom Locations as an abstraction layer on top of Azure Arc-enabled Kubernetes cluster, cluster connect, and cluster extensions. Custom Locations creates the granular RoleBindings and ClusterRoleBindings necessary for other Azure services to access the cluster. These other Azure services require cluster access to manage resources the customer wants to deploy on their clusters.
Important
Azure Arc-enabled Kubernetes preview features are available on a self-service, opt-in basis. Previews are provided "as is" and "as available," and they're excluded from the service-level agreements and limited warranty. Azure Arc-enabled Kubernetes previews are partially covered by customer support on a best-effort basis.
Architecture
When the admin enables the Custom Locations feature on the cluster, a ClusterRoleBinding is created on the cluster, authorizing the Azure AD application used by the Custom Locations Resource Provider (RP). Once authorized, Custom Locations RP can create ClusterRoleBindings or RoleBindings needed by other Azure RPs to create custom resources on this cluster. The cluster extensions installed on the cluster determines the list of RPs to authorize.
When the user creates a data service instance on the cluster:
- The PUT request is sent to Azure Resource Manager.
- The PUT request is forwarded to the Azure Arc-enabled Data Services RP.
- The RP fetches the
kubeconfigfile associated with the Azure Arc-enabled Kubernetes cluster, on which the Custom Location exists.- Custom Location is referenced as
extendedLocationin the original PUT request.
- Custom Location is referenced as
- Azure Arc-enabled Data Services RP uses the
kubeconfigto communicate with the cluster to create a custom resource of the Azure Arc-enabled Data Services type on the namespace mapped to the Custom Location.- The Azure Arc-enabled Data Services operator was deployed via cluster extension creation before the Custom Location existed.
- The Azure Arc-enabled Data Services operator reads the new custom resource created on the cluster and creates the data controller, translating into realization of the desired state on the cluster.
The sequence of steps to create the SQL managed instance and PostgreSQL instance are identical to the sequence of steps described above.
Next steps
- Use our quickstart to connect a Kubernetes cluster to Azure Arc.
- Create a custom location on your Azure Arc-enabled Kubernetes cluster.
Povratne informacije
Pošalјite i prikažite povratne informacije za