Outils pour utilisateurs

Outils du site


tech:awx_-_build_to_run

Ceci est une ancienne révision du document !


AWX - build to run

AWX Resource Requirements

Prérequis logiciels

  • have configured an NTP client on all nodes

Architecture

Choix :

  • Base de données sur le hôte ou sur K8S ?
    • Idéalement Postgres dans un conteneur : plus de souplesse avec la gestion des versions

Conf système hôte

  • Réactiver SELinux
  • Après avoir redéfini ipv6_disabled, si OK désactiver l'IPv6 sur le hôte et tester

Changer dans Job settings - Container Run Options

[
  "--network",
  "slirp4netns:enable_ipv6=true"
]

Conf Podman

Tester le démarrage automatique native Podman

podman update --restart-policy=always kind-control-plane

A la place de ~/.config/systemd/user/container-kind-control-plane.service

Conf AWX

Voir :

kubectl get AWX -o json | jq '.items[0].spec'
  • auto_upgrade
  • hostname
  • ipv6_disabled

Sauvegarde

De tous les objets AWX :

awx -f yaml export > all.yaml

FIXME: prévoir l'export / import de la base

PoC Stockage

Voir :

cluster-config.yml

kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
nodes:
- role: control-plane2
  extraPortMappings:
    - containerPort: 30000
      hostPort: 30000
      protocol: TCP
  extraMounts:
    - containerPath: /data/files
      hostPath: /data/files

ansible-files-pv.yml

---
apiVersion: v1
kind: PersistentVolume
metadata:
  name: awx-ansible-files-volume
spec:
  accessModes:
    - ReadWriteOnce
  persistentVolumeReclaimPolicy: Retain
  capacity:
    storage: 2Gi
  storageClassName: local-path
  hostPath:
    path: /data/ansible-files

ansible-files-pvc.yml

---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: awx-ansible-files-claim
spec:
  accessModes:
    - ReadWriteOnce
  volumeMode: Filesystem
  resources:
    requests:
      storage: 2Gi
  storageClassName: local-path

cluster-config.yml

---

kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
nodes:
  - role: control-plane
    extraPortMappings:
      - containerPort: 30000
        hostPort: 30000
        protocol: TCP
    extraMounts:
      - containerPath: /data/ansible-files
        hostPath: /data/ansible-files
      - containerPath: /data/projects
        hostPath: /data/projects
      - containerPath: /data/postgres-13
        hostPath: /data/postgres-13
kind create cluster --config=cluster-config.yml --name=kind2
 
# kubectl create deployment nginx --image=nginx --port=80
# kubectl create service nodeport nginx --tcp=80:80 --node-port=30000
 
kubectl create service nodeport awx-service --tcp=80:80 --node-port=30000

Dans jobs settings changer :

Paths to expose to isolated jobs

[
  "/etc/pki/ca-trust:/etc/pki/ca-trust:O",
  "/usr/share/pki:/usr/share/pki:O"
]
tech/awx_-_build_to_run.1764672223.txt.gz · Dernière modification : de Jean-Baptiste

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki