HostAlias ​​se ignora en los POD del operador AWX

HostAlias ​​se ignora en los POD del operador AWX

Recientemente tuve que mover mi clúster K3 con el operador AWX. Las direcciones IP de mis nodos tuvieron que cambiar de 10.0.3.51, 10.0.3.52, 10.0.3.53 a 10.6.3.44, 10.6.3.45, 10.6.3.71. Actualicé hostAlias ​​en mi implementación de demostración de awx:

271       dnsPolicy: ClusterFirst
272       hostAliases:
273       - hostnames:
274         - awx.example.com
275         ip: 10.6.3.44
276       initContainers:
277       - command:
278         - /bin/sh
279         - -c
280         - |
281           hostname=$MY_POD_NAME
282           receptor --cert-makereq bits=2048 commonname=$hostname dnsname=$hostname nodeid=$hostname outreq=/etc/receptor/tls/receptor.req outkey=/etc/receptor/tls/receptor.key
283           receptor --cert-signreq req=/etc/receptor/tls/receptor.req cacert=/etc/receptor/tls/ca/receptor-ca.crt cakey=/etc/receptor/tls/ca/receptor-ca.key outcert=/etc/receptor/tls/    receptor.crt verify=yes

Pero aún en mis pods de trabajos de automatización, el archivo /etc/hosts tiene la dirección IP anterior. ¿Qué puedo hacer para corregir el archivo /etc/hosts cuando se crean mis pods de trabajos de automatización?

Puedo acceder al pod de automatización así y mostrar el archivo /etc/hosts

$ kubectl -n awx exec -it automation-job-19120-2npln -- bash
bash-4.4$ cat /etc/hosts
# Kubernetes-managed hosts file.
127.0.0.1   localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
fe00::0 ip6-mcastprefix
fe00::1 ip6-allnodes
fe00::2 ip6-allrouters
10.42.1.31  automation-job-19120-2npln

# Entries added by HostAliases.
10.0.3.51   awx.example.com
bash-4.4$

Si edito el pod veo esto...

apiVersion: v1
kind: Pod
metadata:
  ... omitted ...
spec:
  automountServiceAccountToken: false
  containers:
  - args:
    - ansible-runner
    - worker
    - --private-data-dir=/runner
    image: quay.io/ansible/awx-ee:latest
    imagePullPolicy: Always
    name: worker
    resources:
      requests:
        cpu: 250m
        memory: 100Mi
    stdin: true
    stdinOnce: true
    terminationMessagePath: /dev/termination-log
    terminationMessagePolicy: File
  dnsPolicy: ClusterFirst
  enableServiceLinks: true
  hostAliases:
  - hostnames:
    - awx.example.com
    ip: 10.0.3.51
  nodeName: rocky-k3-3
  ... omitted ...

¿De dónde diablos viene ese 10.0.3.51?

Respuesta1

Alguien en la lista de correo de AWX me recordó que necesito usar la consola de interfaz de usuario web de AWX para actualizar la Estación de administración >> Instancia de grupo >> 'predeterminada' y actualizar lo hostAliasesdefinido allí. De los documentos:https://docs.ansible.com/automation-controller/latest/html/administration/containers_instance_groups.html#customize-the-pod-spec

información relacionada