5.3. Installing a cluster quickly on Alibaba Cloud


In OpenShift Container Platform version 4.12, you can install a cluster on Alibaba Cloud that uses the default configuration options.

Important

Alibaba Cloud on OpenShift Container Platform is a Technology Preview feature only. Technology Preview features are not supported with Red Hat production service level agreements (SLAs) and might not be functionally complete. Red Hat does not recommend using them in production. These features provide early access to upcoming product features, enabling customers to test functionality and provide feedback during the development process.

Pour plus d'informations sur la portée de l'assistance des fonctionnalités de l'aperçu technologique de Red Hat, voir Portée de l'assistance des fonctionnalités de l'aperçu technologique.

5.3.1. Conditions préalables

5.3.2. Accès à l'internet pour OpenShift Container Platform

Dans OpenShift Container Platform 4.12, vous devez avoir accès à Internet pour installer votre cluster.

Vous devez disposer d'un accès à l'internet pour :

  • Accédez à OpenShift Cluster Manager Hybrid Cloud Console pour télécharger le programme d'installation et effectuer la gestion des abonnements. Si le cluster dispose d'un accès internet et que vous ne désactivez pas Telemetry, ce service donne automatiquement des droits à votre cluster.
  • Accédez à Quay.io pour obtenir les paquets nécessaires à l'installation de votre cluster.
  • Obtenir les paquets nécessaires pour effectuer les mises à jour de la grappe.
Important

Si votre cluster ne peut pas avoir d'accès direct à l'internet, vous pouvez effectuer une installation en réseau restreint sur certains types d'infrastructure que vous fournissez. Au cours de ce processus, vous téléchargez le contenu requis et l'utilisez pour remplir un registre miroir avec les paquets d'installation. Avec certains types d'installation, l'environnement dans lequel vous installez votre cluster ne nécessite pas d'accès à Internet. Avant de mettre à jour le cluster, vous mettez à jour le contenu du registre miroir.

5.3.3. Generating a key pair for cluster node SSH access

During an OpenShift Container Platform installation, you can provide an SSH public key to the installation program. The key is passed to the Red Hat Enterprise Linux CoreOS (RHCOS) nodes through their Ignition config files and is used to authenticate SSH access to the nodes. The key is added to the ~/.ssh/authorized_keys list for the core user on each node, which enables password-less authentication.

After the key is passed to the nodes, you can use the key pair to SSH in to the RHCOS nodes as the user core. To access the nodes through SSH, the private key identity must be managed by SSH for your local user.

If you want to SSH in to your cluster nodes to perform installation debugging or disaster recovery, you must provide the SSH public key during the installation process. The ./openshift-install gather command also requires the SSH public key to be in place on the cluster nodes.

Important

Do not skip this procedure in production environments, where disaster recovery and debugging is required.

Note

You must use a local key, not one that you configured with platform-specific approaches such as AWS key pairs.

Procédure

  1. If you do not have an existing SSH key pair on your local machine to use for authentication onto your cluster nodes, create one. For example, on a computer that uses a Linux operating system, run the following command:

    $ ssh-keygen -t ed25519 -N '' -f <path>/<file_name> 1
    1
    Specify the path and file name, such as ~/.ssh/id_ed25519, of the new SSH key. If you have an existing key pair, ensure your public key is in the your ~/.ssh directory.
    Note

    If you plan to install an OpenShift Container Platform cluster that uses FIPS Validated / Modules in Process cryptographic libraries on the x86_64 architecture, do not create a key that uses the ed25519 algorithm. Instead, create a key that uses the rsa or ecdsa algorithm.

  2. View the public SSH key:

    $ cat <path>/<file_name>.pub

    For example, run the following to view the ~/.ssh/id_ed25519.pub public key:

    $ cat ~/.ssh/id_ed25519.pub
  3. Add the SSH private key identity to the SSH agent for your local user, if it has not already been added. SSH agent management of the key is required for password-less SSH authentication onto your cluster nodes, or if you want to use the ./openshift-install gather command.

    Note

    On some distributions, default SSH private key identities such as ~/.ssh/id_rsa and ~/.ssh/id_dsa are managed automatically.

    1. If the ssh-agent process is not already running for your local user, start it as a background task:

      $ eval "$(ssh-agent -s)"

      Exemple de sortie

      Agent pid 31874

      Note

      If your cluster is in FIPS mode, only use FIPS-compliant algorithms to generate the SSH key. The key must be either RSA or ECDSA.

  4. Add your SSH private key to the ssh-agent:

    $ ssh-add <path>/<file_name> 1
    1
    Specify the path and file name for your SSH private key, such as ~/.ssh/id_ed25519

    Exemple de sortie

    Identity added: /home/<you>/<path>/<file_name> (<computer_name>)

Prochaines étapes

  • When you install OpenShift Container Platform, provide the SSH public key to the installation program.

5.3.4. Obtaining the installation program

Before you install OpenShift Container Platform, download the installation file on the host you are using for installation.

Conditions préalables

  • You have a computer that runs Linux or macOS, with 500 MB of local disk space.

Procédure

  1. Access the Infrastructure Provider page on the OpenShift Cluster Manager site. If you have a Red Hat account, log in with your credentials. If you do not, create an account.
  2. Select your infrastructure provider.
  3. Navigate to the page for your installation type, download the installation program that corresponds with your host operating system and architecture, and place the file in the directory where you will store the installation configuration files.

    Important

    The installation program creates several files on the computer that you use to install your cluster. You must keep the installation program and the files that the installation program creates after you finish installing the cluster. Both files are required to delete the cluster.

    Important

    Deleting the files created by the installation program does not remove your cluster, even if the cluster failed during installation. To remove your cluster, complete the OpenShift Container Platform uninstallation procedures for your specific cloud provider.

  4. Extract the installation program. For example, on a computer that uses a Linux operating system, run the following command:

    $ tar -xvf openshift-install-linux.tar.gz
  5. Download your installation pull secret from the Red Hat OpenShift Cluster Manager. This pull secret allows you to authenticate with the services that are provided by the included authorities, including Quay.io, which serves the container images for OpenShift Container Platform components.

5.3.5. Creating the installation configuration file

You can customize the OpenShift Container Platform cluster you install on Alibaba Cloud.

Conditions préalables

  • Obtain the OpenShift Container Platform installation program and the pull secret for your cluster.
  • Obtain service principal permissions at the subscription level.

Procédure

  1. Create the install-config.yaml file.

    1. Change to the directory that contains the installation program and run the following command:

      $ ./openshift-install create install-config --dir <installation_directory> 1
      1
      For <installation_directory>, specify the directory name to store the files that the installation program creates.

      When specifying the directory:

      • Verify that the directory has the execute permission. This permission is required to run Terraform binaries under the installation directory.
      • Use an empty directory. Some installation assets, such as bootstrap X.509 certificates, have short expiration intervals, therefore you must not reuse an installation directory. If you want to reuse individual files from another cluster installation, you can copy them into your directory. However, the file names for the installation assets might change between releases. Use caution when copying installation files from an earlier OpenShift Container Platform version.
    2. At the prompts, provide the configuration details for your cloud:

      1. Optional: Select an SSH key to use to access your cluster machines.

        Note

        For production OpenShift Container Platform clusters on which you want to perform installation debugging or disaster recovery, specify an SSH key that your ssh-agent process uses.

      2. Select alibabacloud as the platform to target.
      3. Select the region to deploy the cluster to.
      4. Select the base domain to deploy the cluster to. The base domain corresponds to the public DNS zone that you created for your cluster.
      5. Provide a descriptive name for your cluster.
      6. Paste the pull secret from the Red Hat OpenShift Cluster Manager.
  2. Installing the cluster into Alibaba Cloud requires that the Cloud Credential Operator (CCO) operate in manual mode. Modify the install-config.yaml file to set the credentialsMode parameter to Manual:

    Example install-config.yaml configuration file with credentialsMode set to Manual

    apiVersion: v1
    baseDomain: cluster1.example.com
    credentialsMode: Manual 1
    compute:
    - architecture: amd64
      hyperthreading: Enabled
     ...

    1
    Add this line to set the credentialsMode to Manual.
  3. Back up the install-config.yaml file so that you can use it to install multiple clusters.

    Important

    The install-config.yaml file is consumed during the installation process. If you want to reuse the file, you must back it up now.

5.3.6. Generating the required installation manifests

You must generate the Kubernetes manifest and Ignition config files that the cluster needs to configure the machines.

Procédure

  1. Generate the manifests by running the following command from the directory that contains the installation program:

    $ openshift-install create manifests --dir <installation_directory>

    où :

    <installation_directory>
    Specifies the directory in which the installation program creates files.

5.3.7. Creating credentials for OpenShift Container Platform components with the ccoctl tool

You can use the OpenShift Container Platform Cloud Credential Operator (CCO) utility to automate the creation of Alibaba Cloud RAM users and policies for each in-cluster component.

Note

Par défaut, ccoctl crée les objets dans le répertoire dans lequel les commandes sont exécutées. Pour créer les objets dans un autre répertoire, utilisez l'option --output-dir. Cette procédure utilise <path_to_ccoctl_output_dir> pour faire référence à ce répertoire.

Conditions préalables

Vous devez avoir :

  • Extraction et préparation du binaire ccoctl.
  • Created a RAM user with sufficient permission to create the OpenShift Container Platform cluster.
  • Added the AccessKeyID (access_key_id) and AccessKeySecret (access_key_secret) of that RAM user into the ~/.alibabacloud/credentials file on your local computer.

Procédure

  1. Set the $RELEASE_IMAGE variable by running the following command:

    $ RELEASE_IMAGE=$(./openshift-install version | awk '/release image/ {print $3}')
  2. Extrayez la liste des objets CredentialsRequest de l'image de la version d'OpenShift Container Platform en exécutant la commande suivante :

    $ oc adm release extract \
    --credentials-requests \
    --cloud=alibabacloud \
    --to=<path_to_directory_with_list_of_credentials_requests>/credrequests \ 1
    $RELEASE_IMAGE
    1
    credrequests est le répertoire dans lequel la liste des objets CredentialsRequest est stockée. Cette commande crée le répertoire s'il n'existe pas.
    Note

    L'exécution de cette commande peut prendre quelques instants.

  3. Si votre cluster utilise les capacités du cluster pour désactiver un ou plusieurs composants optionnels, supprimez les ressources personnalisées CredentialsRequest pour tous les composants désactivés.

    Example credrequests directory contents for OpenShift Container Platform 4.12 on Alibaba Cloud

    0000_30_machine-api-operator_00_credentials-request.yaml 1
    0000_50_cluster-image-registry-operator_01-registry-credentials-request-alibaba.yaml 2
    0000_50_cluster-ingress-operator_00-ingress-credentials-request.yaml 3
    0000_50_cluster-storage-operator_03_credentials_request_alibaba.yaml 4

    1
    Le certificat de conducteur de machine API est exigé.
    2
    Le certificat d'opérateur de registre d'images est requis.
    3
    Le CR de l'opérateur d'entrée est requis.
    4
    Le Storage Operator CR est un composant optionnel et peut être désactivé dans votre cluster.
  4. Utilisez l'outil ccoctl pour traiter tous les objets CredentialsRequest dans le répertoire credrequests:

    1. Run the following command to use the tool:

      $ ccoctl alibabacloud create-ram-users \
      --name <name> \
      --region=<alibaba_region> \
      --credentials-requests-dir=<path_to_directory_with_list_of_credentials_requests>/credrequests \
      --output-dir=<path_to_ccoctl_output_dir>

      où :

      • <name> est le nom utilisé pour étiqueter toutes les ressources du nuage créées pour le suivi.
      • <alibaba_region> is the Alibaba Cloud region in which cloud resources will be created.
      • <path_to_directory_with_list_of_credentials_requests>/credrequests is the directory containing the files for the component CredentialsRequest objects.
      • <path_to_ccoctl_output_dir> is the directory where the generated component credentials secrets will be placed.
      Note

      Si votre cluster utilise des fonctionnalités d'aperçu technologique activées par l'ensemble de fonctionnalités TechPreviewNoUpgrade, vous devez inclure le paramètre --enable-tech-preview.

      Exemple de sortie

      2022/02/11 16:18:26 Created RAM User: user1-alicloud-openshift-machine-api-alibabacloud-credentials
      2022/02/11 16:18:27 Ready for creating new ram policy user1-alicloud-openshift-machine-api-alibabacloud-credentials-policy-policy
      2022/02/11 16:18:27 RAM policy user1-alicloud-openshift-machine-api-alibabacloud-credentials-policy-policy has created
      2022/02/11 16:18:28 Policy user1-alicloud-openshift-machine-api-alibabacloud-credentials-policy-policy has attached on user user1-alicloud-openshift-machine-api-alibabacloud-credentials
      2022/02/11 16:18:29 Created access keys for RAM User: user1-alicloud-openshift-machine-api-alibabacloud-credentials
      2022/02/11 16:18:29 Saved credentials configuration to: user1-alicloud/manifests/openshift-machine-api-alibabacloud-credentials-credentials.yaml
      ...

      Note

      A RAM user can have up to two AccessKeys at the same time. If you run ccoctl alibabacloud create-ram-users more than twice, the previous generated manifests secret becomes stale and you must reapply the newly generated secrets.

    2. Verify that the OpenShift Container Platform secrets are created:

      $ ls <path_to_ccoctl_output_dir>/manifests

      Exemple de sortie :

      openshift-cluster-csi-drivers-alibaba-disk-credentials-credentials.yaml
      openshift-image-registry-installer-cloud-credentials-credentials.yaml
      openshift-ingress-operator-cloud-credentials-credentials.yaml
      openshift-machine-api-alibabacloud-credentials-credentials.yaml

      You can verify that the RAM users and policies are created by querying Alibaba Cloud. For more information, refer to Alibaba Cloud documentation on listing RAM users and policies.

  5. Copy the generated credential files to the target manifests directory:

    $ cp ./<path_to_ccoctl_output_dir>/manifests/*credentials.yaml ./<path_to_installation>dir>/manifests/

    où :

    <path_to_ccoctl_output_dir>
    Specifies the directory created by the ccoctl alibabacloud create-ram-users command.
    <path_to_installation_dir>
    Specifies the directory in which the installation program creates files.

5.3.8. Deploying the cluster

You can install OpenShift Container Platform on a compatible cloud platform.

Important

You can run the create cluster command of the installation program only once, during initial installation.

Conditions préalables

  • Configurez un compte auprès de la plateforme cloud qui héberge votre cluster.
  • Obtain the OpenShift Container Platform installation program and the pull secret for your cluster.

Procédure

  • Change to the directory that contains the installation program and initialize the cluster deployment:

    $ ./openshift-install create cluster --dir <installation_directory> \ 1
        --log-level=info 2
    1
    For <installation_directory>, specify the location of your customized ./install-config.yaml file.
    2
    To view different installation details, specify warn, debug, or error instead of info.
    Note

    If the cloud provider account that you configured on your host does not have sufficient permissions to deploy the cluster, the installation process stops, and the missing permissions are displayed.

Vérification

When the cluster deployment completes successfully:

  • The terminal displays directions for accessing your cluster, including a link to the web console and credentials for the kubeadmin user.
  • Credential information also outputs to <installation_directory>/.openshift_install.log.
Important

Do not delete the installation program or the files that the installation program creates. Both are required to delete the cluster.

Exemple de sortie

...
INFO Install complete!
INFO To access the cluster as the system:admin user when using 'oc', run 'export KUBECONFIG=/home/myuser/install_dir/auth/kubeconfig'
INFO Access the OpenShift web-console here: https://console-openshift-console.apps.mycluster.example.com
INFO Login to the console with user: "kubeadmin", and password: "4vYBz-Ee6gm-ymBZj-Wt5AL"
INFO Time elapsed: 36m22s

Important
  • Les fichiers de configuration d'Ignition générés par le programme d'installation contiennent des certificats qui expirent après 24 heures et qui sont renouvelés à ce moment-là. Si le cluster est arrêté avant le renouvellement des certificats et qu'il est redémarré après l'expiration des 24 heures, le cluster récupère automatiquement les certificats expirés. L'exception est que vous devez approuver manuellement les demandes de signature de certificat (CSR) de node-bootstrapper en attente pour récupérer les certificats de kubelet. Pour plus d'informations, consultez la documentation relative à Recovering from expired control plane certificates.
  • Il est recommandé d'utiliser les fichiers de configuration Ignition dans les 12 heures suivant leur génération, car le certificat de 24 heures tourne entre 16 et 22 heures après l'installation du cluster. En utilisant les fichiers de configuration Ignition dans les 12 heures, vous pouvez éviter l'échec de l'installation si la mise à jour du certificat s'exécute pendant l'installation.

5.3.9. Installer le CLI OpenShift en téléchargeant le binaire

Vous pouvez installer l'OpenShift CLI (oc) pour interagir avec OpenShift Container Platform à partir d'une interface de ligne de commande. Vous pouvez installer oc sur Linux, Windows ou macOS.

Important

Si vous avez installé une version antérieure de oc, vous ne pouvez pas l'utiliser pour exécuter toutes les commandes dans OpenShift Container Platform 4.12. Téléchargez et installez la nouvelle version de oc.

Installation de la CLI OpenShift sur Linux

Vous pouvez installer le binaire OpenShift CLI (oc) sur Linux en utilisant la procédure suivante.

Procédure

  1. Naviguez jusqu'à la page de téléchargements OpenShift Container Platform sur le portail client Red Hat.
  2. Sélectionnez l'architecture dans la liste déroulante Product Variant.
  3. Sélectionnez la version appropriée dans la liste déroulante Version.
  4. Cliquez sur Download Now à côté de l'entrée OpenShift v4.12 Linux Client et enregistrez le fichier.
  5. Décompressez l'archive :

    tar xvf <file>
  6. Placez le fichier binaire oc dans un répertoire situé sur votre site PATH.

    Pour vérifier votre PATH, exécutez la commande suivante :

    $ echo $PATH

Après l'installation de la CLI OpenShift, elle est disponible à l'aide de la commande oc:

oc <command>
Installation de la CLI OpenShift sur Windows

Vous pouvez installer le binaire OpenShift CLI (oc) sur Windows en utilisant la procédure suivante.

Procédure

  1. Naviguez jusqu'à la page de téléchargements OpenShift Container Platform sur le portail client Red Hat.
  2. Sélectionnez la version appropriée dans la liste déroulante Version.
  3. Cliquez sur Download Now à côté de l'entrée OpenShift v4.12 Windows Client et enregistrez le fichier.
  4. Décompressez l'archive à l'aide d'un programme ZIP.
  5. Déplacez le fichier binaire oc dans un répertoire situé sur votre site PATH.

    Pour vérifier votre PATH, ouvrez l'invite de commande et exécutez la commande suivante :

    C:\N> path

Après l'installation de la CLI OpenShift, elle est disponible à l'aide de la commande oc:

C:\N> oc <command>
Installation de la CLI OpenShift sur macOS

Vous pouvez installer le binaire OpenShift CLI (oc) sur macOS en utilisant la procédure suivante.

Procédure

  1. Naviguez jusqu'à la page de téléchargements OpenShift Container Platform sur le portail client Red Hat.
  2. Sélectionnez la version appropriée dans la liste déroulante Version.
  3. Cliquez sur Download Now à côté de l'entrée OpenShift v4.12 macOS Client et enregistrez le fichier.

    Note

    Pour macOS arm64, choisissez l'entrée OpenShift v4.12 macOS arm64 Client.

  4. Décompressez l'archive.
  5. Déplacez le binaire oc dans un répertoire de votre PATH.

    Pour vérifier votre PATH, ouvrez un terminal et exécutez la commande suivante :

    $ echo $PATH

Après l'installation de la CLI OpenShift, elle est disponible à l'aide de la commande oc:

oc <command>

5.3.10. Logging in to the cluster by using the CLI

You can log in to your cluster as a default system user by exporting the cluster kubeconfig file. The kubeconfig file contains information about the cluster that is used by the CLI to connect a client to the correct cluster and API server. The file is specific to a cluster and is created during OpenShift Container Platform installation.

Conditions préalables

  • You deployed an OpenShift Container Platform cluster.
  • Vous avez installé le CLI oc.

Procédure

  1. Export the kubeadmin credentials:

    $ export KUBECONFIG=<installation_directory>/auth/kubeconfig 1
    1
    For <installation_directory>, specify the path to the directory that you stored the installation files in.
  2. Verify you can run oc commands successfully using the exported configuration:

    $ oc whoami

    Exemple de sortie

    system:admin

5.3.11. Logging in to the cluster by using the web console

The kubeadmin user exists by default after an OpenShift Container Platform installation. You can log in to your cluster as the kubeadmin user by using the OpenShift Container Platform web console.

Conditions préalables

  • You have access to the installation host.
  • You completed a cluster installation and all cluster Operators are available.

Procédure

  1. Obtain the password for the kubeadmin user from the kubeadmin-password file on the installation host:

    $ cat <installation_directory>/auth/kubeadmin-password
    Note

    Alternatively, you can obtain the kubeadmin password from the <installation_directory>/.openshift_install.log log file on the installation host.

  2. List the OpenShift Container Platform web console route:

    $ oc get routes -n openshift-console | grep 'console-openshift'
    Note

    Alternatively, you can obtain the OpenShift Container Platform route from the <installation_directory>/.openshift_install.log log file on the installation host.

    Exemple de sortie

    console     console-openshift-console.apps.<cluster_name>.<base_domain>            console     https   reencrypt/Redirect   None

  3. Navigate to the route detailed in the output of the preceding command in a web browser and log in as the kubeadmin user.

5.3.12. Telemetry access for OpenShift Container Platform

In OpenShift Container Platform 4.12, the Telemetry service, which runs by default to provide metrics about cluster health and the success of updates, requires internet access. If your cluster is connected to the internet, Telemetry runs automatically, and your cluster is registered to OpenShift Cluster Manager Hybrid Cloud Console.

After you confirm that your OpenShift Cluster Manager Hybrid Cloud Console inventory is correct, either maintained automatically by Telemetry or manually by using OpenShift Cluster Manager, use subscription watch to track your OpenShift Container Platform subscriptions at the account or multi-cluster level.

Ressources complémentaires

5.3.13. Prochaines étapes

Red Hat logoGithubRedditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez leBlog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.