Stel de Automation Hub (Galaxy NG) in met Ansible

Ontdek hoe u de Ansible Automation Hub (Galaxy NG) kunt creëren met behulp van Ansible, in combinatie met de Pulp Operator. Deze handleiding laat ook zien hoe u de externe community repository met collecties configureert, waardoor uw automatiseringsmogelijkheden worden verbeterd.

Projecten: c2platform/ansible, c2platform.mw


Deze stapsgewijze handleiding laat zien hoe u een instance van Ansible Galaxy op de c2d-galaxy1 node kunt maken met behulp van de Pulp Operator  . Het Pulp  platform is een recent ontwikkelde open-source software die het beheer en de distributie van softwarepakketten vergemakkelijkt, vergelijkbaar met Sonatype Nexus Repository  . Een Galaxy NG-instance verwijst in wezen naar een Pulp-instance met de Galaxy NextGen  Pulp-plug-in geïnstalleerd.



Vereisten

Maak de omgekeerde en doorstuurproxy c2d-rproxy1.

c2
unset PLAY  # zorg ervoor dat alle plays worden uitgevoerd
vagrant up c2d-rproxy1

Voor meer informatie over de verschillende rollen die c2d-rproxy1 in dit project uitvoert:

Installeren

Om de Kubernetes-instance te maken en de Galaxy NG-instance te implementeren, voert u de volgende opdracht uit:

vagrant up c2d-galaxy1

Verifiëren

U kunt nu uw AWX-instance verifiëren met behulp van het Kubernetes Dashboard en de AWX-webinterface via de doorstuurproxy, zoals beschreven in Aan de slag.

Kubernetes Dashboard

Om toegang te krijgen tot het Kubernetes Dashboard, navigeert u naar https://dashboard-galaxy.c2platform.org/  en logt u in met een token. Verkrijg het token door de volgende opdracht binnen de c2d-galaxy1 node uit te voeren:

kubectl -n kube-system describe secret microk8s-dashboard-token

Met behulp van het dashboard kunt u naar de awx  -namespace navigeren. Daar zou u draaiende pods zonder fouten moeten zien, zoals galaxy-web en galaxy-content.

Voor meer informatie over de token- en dashboardconfiguratie, raadpleegt u Stel het Kubernetes Dashboard in.

Galaxy NG

Om toegang te krijgen tot de Galaxy NG-webinterface, gaat u naar https://galaxy.c2platform.org  . U kunt inloggen met het admin-account met het wachtwoord secret.

Dankzij de configuratie van Ansible van de externe community-repository met zijn afhankelijkheden, moet u deze kunnen synchroniseren. Volg hiervoor deze stappen:

  1. Navigeer naar CollectiesBeheer van RepositoriesExtern.
  2. Klik op de knop Sync om het synchronisatieproces te starten.

Nadat u de synchronisatie hebt gestart, gaat u naar de sectie Taakbeheer. U zult een taak zien die wordt uitgevoerd. Wees geduldig en wacht totdat deze is voltooid. Zodra het klaar is, navigeert u naar de sectie Namespaces. Hier vindt u verschillende namespaces met Ansible-collecties, waaronder de c2platform namespace.

Review

Voor een uitgebreide uitleg over het aanmaken van de Galaxy NG-instance met Ansible, raadpleegt u de volgende componenten binnen het Ansible playbookproject c2platform/ansible:

  1. Vagrantfile.yml: Dit bestand configureert de c2d_galaxy1 node met de mgmt/galaxy playbook.
  2. plays/mgmt/awx_galaxy.yml: Dit playbook stelt Ansible-rollen in voor de galaxy Ansible-groep.
  3. hosts-dev.ini: Het inventory-bestand wijst de c2d_galaxy1 node toe aan de galaxy Ansible-groep.
  4. group_vars/galaxy/main.yml: In dit bestand vindt u de primaire Kubernetes-configuratie, inclusief de activering van add-ons zoals dashboard en de metallb load balancer.
  5. group_vars/galaxy/kubernetes.yml: Dit bestand bevat configuraties voor het opzetten van het Kubernetes-cluster en de installatie van Galaxy. Het omvat drie cruciale instellingen: ansible_api_hostname, ansible_content_hostname, content_origin. Deze instellingen moeten correct zijn geconfigureerd om overeen te komen met de URL van de Galaxy NG-instance op https://galaxy.c2platform.org  , aangezien een onjuiste configuratie de correcte werking van Galaxy NG buiten het cluster kan belemmeren. Deze setup is cruciaal voor het succesvol uitvoeren van het ansible-galaxy collection install-commando, zoals gedemonstreerd in Gebruik van het Ansible Automation Platform (AAP) vanaf het Virtuele Desktop.
  6. group_vars/galaxy/hub.yml: Dit bestand bevat de configuratie die wordt gebruikt door de galaxy.galaxy  om de “vereisten” van de externe community-collectie te configureren. Het is belangrijk op te merken dat deze collectie momenteel actief wordt ontwikkeld en bekend is om een veelheid aan problemen.

Daarnaast kunt u binnen het Ansible collectieproject c2platform.mw verkennen:

  1. De c2platform.mw.microk8s Ansible rol.
  2. De c2platform.mw.kubernetes Ansible rol.

Om toegang te krijgen tot verschillende resources binnen de c2d omgeving via de doorstuurproxy, gebruikt u de volgende URL’s: