Dieser Inhalt ist in der von Ihnen ausgewählten Sprache nicht verfügbar.
Chapter 3. Manually creating IAM for Azure
In environments where the cloud identity and access management (IAM) APIs are not reachable, or the administrator prefers not to store an administrator-level credential secret in the cluster
kube-system
3.1. Alternatives to storing administrator-level secrets in the kube-system project Link kopierenLink in die Zwischenablage kopiert!
The Cloud Credential Operator (CCO) manages cloud provider credentials as Kubernetes custom resource definitions (CRDs). You can configure the CCO to suit the security requirements of your organization by setting different values for the
credentialsMode
install-config.yaml
If you prefer not to store an administrator-level credential secret in the cluster
kube-system
credentialsMode
Manual
Using manual mode allows each cluster component to have only the permissions it requires, without storing an administrator-level credential in the cluster. You can also use this mode if your environment does not have connectivity to the cloud provider public IAM endpoint. However, you must manually reconcile permissions with new release images for every upgrade. You must also manually supply credentials for every component that requests them.
3.2. Manually create IAM Link kopierenLink in die Zwischenablage kopiert!
The Cloud Credential Operator (CCO) can be put into manual mode prior to installation in environments where the cloud identity and access management (IAM) APIs are not reachable, or the administrator prefers not to store an administrator-level credential secret in the cluster
kube-system
Procedure
Change to the directory that contains the installation program and create the
file by running the following command:install-config.yaml$ openshift-install create install-config --dir <installation_directory>where
is the directory in which the installation program creates files.<installation_directory>Edit the
configuration file so that it contains theinstall-config.yamlparameter set tocredentialsMode.ManualExample
install-config.yamlconfiguration fileapiVersion: v1 baseDomain: cluster1.example.com credentialsMode: Manual1 compute: - architecture: amd64 hyperthreading: Enabled ...- 1
- This line is added to set the
credentialsModeparameter toManual.
Generate the manifests by running the following command from the directory that contains the installation program:
$ openshift-install create manifests --dir <installation_directory>where
is the directory in which the installation program creates files.<installation_directory>From the directory that contains the installation program, obtain details of the OpenShift Container Platform release image that your
binary is built to use by running the following command:openshift-install$ openshift-install versionExample output
release image quay.io/openshift-release-dev/ocp-release:4.y.z-x86_64Locate all
objects in this release image that target the cloud you are deploying on by running the following command:CredentialsRequest$ oc adm release extract quay.io/openshift-release-dev/ocp-release:4.y.z-x86_64 \ --credentials-requests \ --cloud=azureThis command creates a YAML file for each
object.CredentialsRequestSample
CredentialsRequestobjectapiVersion: cloudcredential.openshift.io/v1 kind: CredentialsRequest metadata: name: <component-credentials-request> namespace: openshift-cloud-credential-operator ... spec: providerSpec: apiVersion: cloudcredential.openshift.io/v1 kind: AzureProviderSpec roleBindings: - role: Contributor ...Create YAML files for secrets in the
manifests directory that you generated previously. The secrets must be stored using the namespace and secret name defined in theopenshift-installfor eachspec.secretRefobject.CredentialsRequestSample
CredentialsRequestobject with secretsapiVersion: cloudcredential.openshift.io/v1 kind: CredentialsRequest metadata: name: <component-credentials-request> namespace: openshift-cloud-credential-operator ... spec: providerSpec: apiVersion: cloudcredential.openshift.io/v1 kind: AzureProviderSpec roleBindings: - role: Contributor ... secretRef: name: <component-secret> namespace: <component-namespace> ...Sample
SecretobjectapiVersion: v1 kind: Secret metadata: name: <component-secret> namespace: <component-namespace> data: azure_subscription_id: <base64_encoded_azure_subscription_id> azure_client_id: <base64_encoded_azure_client_id> azure_client_secret: <base64_encoded_azure_client_secret> azure_tenant_id: <base64_encoded_azure_tenant_id> azure_resource_prefix: <base64_encoded_azure_resource_prefix> azure_resourcegroup: <base64_encoded_azure_resourcegroup> azure_region: <base64_encoded_azure_region>ImportantThe release image includes
objects for Technology Preview features that are enabled by theCredentialsRequestfeature set. You can identify these objects by their use of theTechPreviewNoUpgradeannotation.release.openshift.io/feature-set: TechPreviewNoUpgrade- If you are not using any of these features, do not create secrets for these objects. Creating secrets for Technology Preview features that you are not using can cause the installation to fail.
- If you are using any of these features, you must create secrets for the corresponding objects.
To find
objects with theCredentialsRequestannotation, run the following command:TechPreviewNoUpgrade$ grep "release.openshift.io/feature-set" *Example output
0000_30_capi-operator_00_credentials-request.yaml: release.openshift.io/feature-set: TechPreviewNoUpgrade
From the directory that contains the installation program, proceed with your cluster creation:
$ openshift-install create cluster --dir <installation_directory>ImportantBefore upgrading a cluster that uses manually maintained credentials, you must ensure that the CCO is in an upgradeable state.
3.3. Next steps Link kopierenLink in die Zwischenablage kopiert!
Install an OpenShift Container Platform cluster:
- Installing a cluster quickly on Azure with default options on installer-provisioned infrastructure
- Install a cluster with cloud customizations on installer-provisioned infrastructure
- Install a cluster with network customizations on installer-provisioned infrastructure