GNU/Linux >> Tutoriels Linux >  >> Linux

Enregistrez Red Hat Enterprise Linux et attachez un abonnement avec Ansible

[Vous voulez essayer Red Hat Enterprise Linux ? Téléchargez-le maintenant gratuitement.]

Une première étape de notre processus de déploiement pour les systèmes Red Hat Enterprise Linux (RHEL) consiste à enregistrer le système et à attacher un abonnement approprié. Pour automatiser ces deux étapes, j'utilise un rôle Ansible, que j'aimerais partager avec vous.

Mon environnement

Dans mon environnement, RHEL s'exécute principalement au sein de différents clusters de virtualisation, et occasionnellement sur des serveurs dédiés (bare metal). Nous utilisons les abonnements suivants pour le développement et la production :

  • Abonnement Développeur Red Hat
  • Red Hat Enterprise Linux Server, Standard (nœuds physiques ou virtuels)
  • Red Hat Enterprise Linux pour les centres de données virtuels, Standard

Le register-rhel-subscription rôle

Mon rôle est minimaliste et a la structure suivante :

# tree roles/register-rhel-subscription
roles/register-rhel-subscription
|-- defaults
| `-- main.yml
|-- tasks
| `-- main.yml

tasks/main.yml

Le module Ansible redhat_subscription gère l'enregistrement et l'abonnement d'un système avec le subscription-manager commande. Commencez par créer votre clé d'activation dans le portail client. Cette clé permet l'enregistrement sans qu'il soit nécessaire de saisir le nom d'utilisateur et le mot de passe.

Affectez cette clé au paramètre activationkey , comme ceci :

activationkey: "{{ org_activationkey }}"

Dans le code ci-dessus, le contenu de la variable org_activationkey est passé au paramètre. Comment et où cette variable est définie sera expliqué dans la section suivante.

Vous devez également ajouter l'ID de votre organisation dans org_id . Vous pouvez trouver ces informations avec les éléments suivants :

sudo subscription-manager identity

Ensuite, déclare l'état cible souhaité via :

state: present

Dans ce cas, le système doit être enregistré et un abonnement attaché. Si vous changez ce paramètre en state: absent , le système sera désenregistré en conséquence.

Voici à quoi ressemble le code une fois tout assemblé :

---
# tasks file for register-rhel-subscription
# Register System and add Subcription
- name: Register system and add subscription
  redhat_subscription:
    activationkey: "{{ org_activationkey }}"
    org_id: 1234567
    state: present

defaults/main.yml

Dans ce fichier, nous définissons la valeur par défaut pour la variable org_activationkey :

---
# defaults file for register-rhel-subscription
org_activationkey: "my-datacenter-sub"

La valeur spécifiée dans ce fichier peut être remplacée, par exemple, dans host_vars et group_vars (voir Utilisation des variables). Vous pouvez utiliser les appartenances aux groupes dans l'inventaire Ansible pour contrôler quel abonnement est attribué à un hôte ou à un groupe d'hôtes.

Exemple de manuel de jeu

Une fois les étapes ci-dessus terminées, vous pouvez maintenant ajouter le register-rhel-subscription rôle dans votre playbook :

---
- hosts: all
  tasks:
  - name: Group by OS
    group_by:
      key=os_{{ ansible_distribution }}
      changed_when: False

  - hosts: os_RedHat
    roles: - register-rhel-subscription

Conclusion

Jusqu'à présent, cette solution fait bonne impression et la rédaction de ce texte a pris beaucoup plus de temps que la tâche proprement dite. Ceci est un petit exemple simple de la façon dont Ansible pourrait rendre votre journée d'administrateur système un peu plus facile.


Linux
  1. Configuration d'une adresse IPv6 dans Red Hat Enterprise Linux 7 et 8

  2. Optimisation d'une image ISO d'installation de Red Hat Enterprise Linux

  3. Utilisation d'Ansible pour déployer Microsoft SQL Server 2019 sur Red Hat Enterprise Linux 8

  4. Comment obtenir Red Hat Enterprise Linux gratuitement ?

  5. Top 20 des meilleures certifications et cours Red Hat Linux

Comment installer Red Hat Enterprise Linux 8 (RHEL 8)

Installer et configurer Ansible sous Linux

Configuration automatisée d'Ansible Lab avec Vagrant et Virtualbox sous Linux

Travailler avec le noyau en temps réel pour Red Hat Enterprise Linux

Automatisation de ServiceNow avec Red Hat Ansible Automation Platform

Configuration d'un serveur OpenVPN avec Red Hat Linux et Viscosity