// Module included in the following assemblies:
//
// * architecture/control-plane.adoc
// * hosted-control-planes/index.adoc


:_mod-docs-content-type: REFERENCE
[id="hosted-control-planes-concepts-personas_{context}"]
= Glossary of common concepts and personas for {hcp}

[role="_abstract"]
When you use {hcp} for {product-title}, it is important to understand its key concepts and the personas that are involved.

[id="hosted-control-planes-concepts_{context}"]
== Concepts

data plane:: The part of the cluster that includes the compute, storage, and networking where workloads and applications run.

hosted cluster:: An {product-title} cluster with its control plane and API endpoint hosted on a management cluster. The hosted cluster includes the control plane and its corresponding data plane.

hosted cluster infrastructure:: Network, compute, and storage resources that exist in the tenant or end-user cloud account.

hosted control plane:: An {product-title} control plane that runs on the management cluster, which is exposed by the API endpoint of a hosted cluster. The components of a control plane include etcd, the Kubernetes API server, the Kubernetes controller manager, and a VPN.

hosting cluster:: See _management cluster_.

managed cluster:: A cluster that the hub cluster manages. This term is specific to the cluster lifecycle that the {mce} manages in Red Hat Advanced Cluster Management. A managed cluster is not the same thing as a _management cluster_. For more information, see link:https://docs.redhat.com/en/documentation/red_hat_advanced_cluster_management_for_kubernetes/2.16/html/about/welcome-to-red-hat-advanced-cluster-management-for-kubernetes#managed-cluster[Managed cluster].

management cluster:: An {product-title} cluster where the HyperShift Operator is deployed and where the control planes for hosted clusters are hosted. The management cluster is synonymous with the _hosting cluster_.

management cluster infrastructure:: Network, compute, and storage resources of the management cluster.

node pool:: A resource that manages a set of compute nodes that are associated with a hosted cluster. The compute nodes run applications and workloads within the hosted cluster. 

[id="hosted-control-planes-personas_{context}"]
== Personas

cluster instance administrator:: Users who assume this role are the equivalent of administrators in standalone {product-title}. This user has the `cluster-admin` role in the provisioned cluster, but might not have power over when or how the cluster is updated or configured. This user might have read-only access to see some configuration projected into the cluster.

cluster instance user:: Users who assume this role are the equivalent of developers in standalone {product-title}. This user does not have a view into the software catalog or machines.

cluster service consumer:: Users who assume this role can request control planes and worker nodes, drive updates, or modify externalized configurations. Typically, this user does not manage or access cloud credentials or infrastructure encryption keys. The cluster service consumer persona can request hosted clusters and interact with node pools. Users who assume this role have role-based access control (RBAC) to create, read, update, or delete hosted clusters and node pools within a logical boundary.

cluster service provider:: Users who assume this role typically have the `cluster-admin` role on the management cluster and have RBAC to monitor and own the availability of the HyperShift Operator and the control planes for the tenant's hosted clusters. The cluster service provider persona is responsible for several activities, including the following examples:

** Owning service-level objects for control plane availability, uptime, and stability
** Configuring the cloud account for the management cluster to host control planes
** Configuring the user-provisioned infrastructure, which includes the host awareness of available compute resources
