# Upgrade issues 0.23.0 -\> 0.30.0

**URL:** <https://forum.ansible.com/t/upgrade-issues-0-23-0-0-30-0/37179>\
**Category:** AWX Project\
**Tags:** ubuntu, awx, ee, kubernetes\
**Created:** [October 5, 2022, 10:53am UTC](https://forum.ansible.com/t/upgrade-issues-0-23-0-0-30-0/37179 "2022-10-05T10:53:25Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![andybourges](https://avatars.discourse-cdn.com/v4/letter/a/a3d4f5/32.png) [@andybourges](https://forum.ansible.com/u/andybourges)\
**Post date:** [October 5, 2022, 10:53am UTC](https://forum.ansible.com/t/upgrade-issues-0-23-0-0-30-0/37179/1 "2022-10-05T10:53:25Z")

</div>

Hi all,

…I’m trying to upgrade our installation from 0.23.0 to 0.30.0, but I just don’t get it done ☹ I set up awx-operator and awx according to:

[https://computingforgeeks.com/how-to-install-ansible-awx-on-ubuntu-linux/](https://computingforgeeks.com/how-to-install-ansible-awx-on-ubuntu-linux/)

They have a upgrade guide, too: [https://computingforgeeks.com/how-to-install-ansible-awx-on-ubuntu-linux/](https://computingforgeeks.com/how-to-install-ansible-awx-on-ubuntu-linux/)

I _can_ upgrade the operator and the new operator replaces the old postgres with opstgres-13-0, but the rest of the containers fail:

Every 1.0s: kubectl -n awx get pods awx-troubleshooting: Wed Oct 5 12:47:26 2022

NAME READY STATUS RESTARTS AGE  
awx-operator-controller-manager-fcf6db67c-zwd9c 2/2 Running 2 (19m ago) 28m  
awx-postgres-13-0 1/1 Running 0 6m7s  
awx-b7c7c79b8-4tnhj 0/4 Init:CrashLoopBackOff 5 (2m33s ago) 5m35s

I’m somehow a bit lost, since I don’t know where to look for an error. Any hints highly appreciated!

Thanks,

Andreas

a describe of the pod gives me:

$ kubectl describe pod awx-b7c7c79b8-4tnhj

awx-b7c7c79b8-4tnhj  
Name: awx-b7c7c79b8-4tnhj  
Namespace: awx  
Priority: 0  
Node: awx-troubleshooting/10.0.121.9  
Start Time: Wed, 05 Oct 2022 12:41:56 +0200  
Labels: [app.kubernetes.io/component=awx](http://app.kubernetes.io/component=awx)  
[app.kubernetes.io/managed-by=awx-operator](http://app.kubernetes.io/managed-by=awx-operator)  
[app.kubernetes.io/name=awx](http://app.kubernetes.io/name=awx)  
[app.kubernetes.io/operator-version=0.30.0](http://app.kubernetes.io/operator-version=0.30.0)  
[app.kubernetes.io/part-of=awx](http://app.kubernetes.io/part-of=awx)  
[app.kubernetes.io/version=21.7.0](http://app.kubernetes.io/version=21.7.0)  
pod-template-hash=b7c7c79b8  
Annotations:   
Status: Pending  
IP: 10.42.0.65  
IPs:  
IP: 10.42.0.65  
Controlled By: ReplicaSet/awx-b7c7c79b8  
Init Containers:  
init:  
Container ID: containerd://722025590f7f703a7fa437daa25d8aa38ef243ae6d99d2cd0cd0e0f98b11e9ff  
Image: [quay.io/ansible/awx-ee:latest](http://quay.io/ansible/awx-ee:latest)  
Image ID: [quay.io/ansible/awx-ee@sha256:1b9564e397a5059b53d304a697fcc48250fb805caf828a8006ef799d69a8dd21](http://quay.io/ansible/awx-ee@sha256:1b9564e397a5059b53d304a697fcc48250fb805caf828a8006ef799d69a8dd21)  
Port:   
Host Port:   
Command:  
/bin/sh  
-c  
hostname=$MY\_POD\_NAME  
receptor --cert-makereq bits=2048 commonname=$hostname dnsname=$hostname nodeid=$hostname outreq=/etc/receptor/tls/receptor.req outkey=/etc/receptor/tls/receptor.key  
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  
chmod 775 /var/lib/awx/projects  
chgrp 1000 /var/lib/awx/projects

State: Waiting  
Reason: CrashLoopBackOff  
Last State: Terminated  
Reason: Error  
Exit Code: 1  
Started: Wed, 05 Oct 2022 12:47:44 +0200  
Finished: Wed, 05 Oct 2022 12:47:44 +0200  
Ready: False  
Restart Count: 6  
Environment:  
MY\_POD\_NAME: awx-b7c7c79b8-4tnhj (v1:metadata.name)  
Mounts:  
/etc/receptor/tls/ from awx-receptor-tls (rw)  
/etc/receptor/tls/ca/receptor-ca.crt from awx-receptor-ca (ro,path=“tls.crt”)  
/etc/receptor/tls/ca/receptor-ca.key from awx-receptor-ca (ro,path=“tls.key”)  
/var/lib/awx/projects from awx-projects (rw)  
/var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-ln7t4 (ro)  
Containers:  
redis:  
Container ID:  
Image: [docker.io/redis:7](http://docker.io/redis:7)  
Image ID:  
Port:   
Host Port:   
Args:  
redis-server  
/etc/redis.conf  
State: Waiting  
Reason: PodInitializing  
Ready: False  
Restart Count: 0  
Requests:  
cpu: 50m  
memory: 64Mi  
Environment:   
Mounts:  
/data from awx-redis-data (rw)  
/etc/redis.conf from awx-redis-config (ro,path=“redis.conf”)  
/var/run/redis from awx-redis-socket (rw)  
/var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-ln7t4 (ro)  
awx-web:  
Container ID:  
Image: [quay.io/ansible/awx:21.7.0](http://quay.io/ansible/awx:21.7.0)  
Image ID:  
Port: 8052/TCP  
Host Port: 0/TCP  
Args:  
/usr/bin/launch\_awx.sh  
State: Waiting  
Reason: PodInitializing  
Ready: False  
Restart Count: 0  
Requests:  
cpu: 100m  
memory: 128Mi  
Environment:  
MY\_POD\_NAMESPACE: awx (v1:metadata.namespace)  
UWSGI\_MOUNT\_PATH: /  
Mounts:  
/etc/nginx/nginx.conf from awx-nginx-conf (ro,path=“nginx.conf”)  
/etc/receptor/signing/work-public-key.pem from awx-receptor-work-signing (ro,path=“work-public-key.pem”)  
/etc/receptor/tls/ca/receptor-ca.crt from awx-receptor-ca (ro,path=“tls.crt”)  
/etc/receptor/tls/ca/receptor-ca.key from awx-receptor-ca (ro,path=“tls.key”)  
/etc/tower/SECRET\_KEY from awx-secret-key (ro,path=“SECRET\_KEY”)  
/etc/tower/conf.d/credentials.py from awx-application-credentials (ro,path=“credentials.py”)  
/etc/tower/conf.d/execution\_environments.py from awx-application-credentials (ro,path=“execution\_environments.py”)  
/etc/tower/conf.d/ldap.py from awx-application-credentials (ro,path=“ldap.py”)  
/etc/tower/settings.py from awx-settings (ro,path=“settings.py”)  
/var/lib/awx/projects from awx-projects (rw)  
/var/lib/awx/rsyslog from rsyslog-dir (rw)  
/var/lib/projects from static-data (rw)  
/var/run/awx-rsyslog from rsyslog-socket (rw)  
/var/run/redis from awx-redis-socket (rw)  
/var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-ln7t4 (ro)  
/var/run/supervisor from supervisor-socket (rw)  
awx-task:  
Container ID:  
Image: [quay.io/ansible/awx:21.7.0](http://quay.io/ansible/awx:21.7.0)  
Image ID:  
Port:   
Host Port:   
Args:  
/usr/bin/launch\_awx\_task.sh  
State: Waiting  
Reason: PodInitializing  
Ready: False  
Restart Count: 0  
Requests:  
cpu: 100m  
memory: 128Mi  
Environment:  
SUPERVISOR\_WEB\_CONFIG\_PATH: /etc/supervisord.conf  
AWX\_SKIP\_MIGRATIONS: 1  
MY\_POD\_UID: (v1:metadata.uid)  
MY\_POD\_IP: (v1:status.podIP)  
MY\_POD\_NAMESPACE: awx (v1:metadata.namespace)  
Mounts:  
/etc/receptor/ from awx-receptor-config (rw)  
/etc/receptor/signing/work-private-key.pem from awx-receptor-work-signing (ro,path=“work-private-key.pem”)  
/etc/tower/SECRET\_KEY from awx-secret-key (ro,path=“SECRET\_KEY”)  
/etc/tower/conf.d/credentials.py from awx-application-credentials (ro,path=“credentials.py”)  
/etc/tower/conf.d/execution\_environments.py from awx-application-credentials (ro,path=“execution\_environments.py”)  
/etc/tower/conf.d/ldap.py from awx-application-credentials (ro,path=“ldap.py”)  
/etc/tower/settings.py from awx-settings (ro,path=“settings.py”)  
/var/lib/awx/projects from awx-projects (rw)  
/var/lib/awx/rsyslog from rsyslog-dir (rw)  
/var/run/awx-rsyslog from rsyslog-socket (rw)  
/var/run/receptor from receptor-socket (rw)  
/var/run/redis from awx-redis-socket (rw)  
/var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-ln7t4 (ro)  
/var/run/supervisor from supervisor-socket (rw)  
awx-ee:  
Container ID:  
Image: [quay.io/ansible/awx-ee:latest](http://quay.io/ansible/awx-ee:latest)  
Image ID:  
Port:   
Host Port:   
Args:  
/bin/sh  
-c  
if [! -f /etc/receptor/receptor.conf]; then  
cp /etc/receptor/receptor-default.conf /etc/receptor/receptor.conf  
sed -i “s/HOSTNAME/$HOSTNAME/g” /etc/receptor/receptor.conf  
fi  
exec receptor --config /etc/receptor/receptor.conf

State: Waiting  
Reason: PodInitializing  
Ready: False  
Restart Count: 0  
Requests:  
cpu: 100m  
memory: 64Mi  
Environment:   
Mounts:  
/etc/receptor/ from awx-receptor-config (rw)  
/etc/receptor/receptor-default.conf from awx-default-receptor-config (rw,path=“receptor.conf”)  
/etc/receptor/signing/work-private-key.pem from awx-receptor-work-signing (ro,path=“work-private-key.pem”)  
/etc/receptor/tls/ from awx-receptor-tls (rw)  
/etc/receptor/tls/ca/receptor-ca.crt from awx-receptor-ca (ro,path=“tls.crt”)  
/var/lib/awx/projects from awx-projects (rw)  
/var/run/receptor from receptor-socket (rw)  
/var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-ln7t4 (ro)  
Conditions:  
Type Status  
Initialized False  
Ready False  
ContainersReady False  
PodScheduled True  
Volumes:  
awx-application-credentials:  
Type: Secret (a volume populated by a Secret)  
SecretName: awx-app-credentials  
Optional: false  
awx-receptor-tls:  
Type: EmptyDir (a temporary directory that shares a pod’s lifetime)  
Medium:  
SizeLimit:   
awx-receptor-ca:  
Type: Secret (a volume populated by a Secret)  
SecretName: awx-receptor-ca  
Optional: false  
awx-receptor-work-signing:  
Type: Secret (a volume populated by a Secret)  
SecretName: awx-receptor-work-signing  
Optional: false  
awx-secret-key:  
Type: Secret (a volume populated by a Secret)  
SecretName: awx-secret-key  
Optional: false  
awx-settings:  
Type: ConfigMap (a volume populated by a ConfigMap)  
Name: awx-awx-configmap  
Optional: false  
awx-nginx-conf:  
Type: ConfigMap (a volume populated by a ConfigMap)  
Name: awx-awx-configmap  
Optional: false  
awx-redis-config:  
Type: ConfigMap (a volume populated by a ConfigMap)  
Name: awx-awx-configmap  
Optional: false  
awx-redis-socket:  
Type: EmptyDir (a temporary directory that shares a pod’s lifetime)  
Medium:  
SizeLimit:   
awx-redis-data:  
Type: EmptyDir (a temporary directory that shares a pod’s lifetime)  
Medium:  
SizeLimit:   
supervisor-socket:  
Type: EmptyDir (a temporary directory that shares a pod’s lifetime)  
Medium:  
SizeLimit:   
rsyslog-socket:  
Type: EmptyDir (a temporary directory that shares a pod’s lifetime)  
Medium:  
SizeLimit:   
receptor-socket:  
Type: EmptyDir (a temporary directory that shares a pod’s lifetime)  
Medium:  
SizeLimit:   
rsyslog-dir:  
Type: EmptyDir (a temporary directory that shares a pod’s lifetime)  
Medium:  
SizeLimit:   
awx-receptor-config:  
Type: EmptyDir (a temporary directory that shares a pod’s lifetime)  
Medium:  
SizeLimit:   
awx-default-receptor-config:  
Type: ConfigMap (a volume populated by a ConfigMap)  
Name: awx-awx-configmap  
Optional: false  
awx-projects:  
Type: PersistentVolumeClaim (a reference to a PersistentVolumeClaim in the same namespace)  
ClaimName: awx-projects-claim  
ReadOnly: false  
static-data:  
Type: PersistentVolumeClaim (a reference to a PersistentVolumeClaim in the same namespace)  
ClaimName: static-data-pvc  
ReadOnly: false  
kube-api-access-ln7t4:  
Type: Projected (a volume that contains injected data from multiple sources)  
TokenExpirationSeconds: 3607  
ConfigMapName: kube-root-ca.crt  
ConfigMapOptional:   
DownwardAPI: true  
QoS Class: Burstable  
Node-Selectors:   
Tolerations: [node.kubernetes.io/not-ready:NoExecute](http://node.kubernetes.io/not-ready:NoExecute) op=Exists for 300s  
[node.kubernetes.io/unreachable:NoExecute](http://node.kubernetes.io/unreachable:NoExecute) op=Exists for 300s  
Events:  
Type Reason Age From Message

* * *

Normal Scheduled 6m6s default-scheduler Successfully assigned awx/awx-b7c7c79b8-4tnhj to awx-troubleshooting  
Normal Pulled 4m33s (x5 over 6m5s) kubelet Container image “[quay.io/ansible/awx-ee:latest](http://quay.io/ansible/awx-ee:latest)” already present on machine  
Normal Created 4m33s (x5 over 6m5s) kubelet Created container init  
Normal Started 4m33s (x5 over 6m5s) kubelet Started container init  
Warning BackOff 54s (x26 over 6m4s) kubelet Back-off restarting failed container  
root@awx-troubleshooting:~/awx-operator#

---

<div class="post-metadata">

**Author:** ![m.nelson](https://avatars.discourse-cdn.com/v4/letter/m/c37758/32.png) [@m.nelson](https://forum.ansible.com/u/m.nelson)\
**Post date:** [October 5, 2022, 12:30pm UTC](https://forum.ansible.com/t/upgrade-issues-0-23-0-0-30-0/37179/2 "2022-10-05T12:30:44Z")

</div>

Hi,

You might be having this issue:

[https://github.com/ansible/awx-operator/issues/1055](https://github.com/ansible/awx-operator/issues/1055)

There is a workaround provided in the comments.

Hope that helps.

Regards,

Antuelle78

---

<div class="post-metadata">

**Author:** ![andybourges](https://avatars.discourse-cdn.com/v4/letter/a/a3d4f5/32.png) [@andybourges](https://forum.ansible.com/u/andybourges)\
**Post date:** [October 5, 2022, 12:41pm UTC](https://forum.ansible.com/t/upgrade-issues-0-23-0-0-30-0/37179/3 "2022-10-05T12:41:55Z")

</div>

HI,

…thanks a lot - will try it and report back!

Thanks,

Andreas

---

<div class="post-metadata">

**Author:** ![m.nelson](https://avatars.discourse-cdn.com/v4/letter/m/c37758/32.png) [@m.nelson](https://forum.ansible.com/u/m.nelson)\
**Post date:** [October 5, 2022, 12:50pm UTC](https://forum.ansible.com/t/upgrade-issues-0-23-0-0-30-0/37179/4 "2022-10-05T12:50:33Z")

</div>

Careful with the latest version though, there is this issue:

[https://github.com/ansible/awx/issues/13002](https://github.com/ansible/awx/issues/13002)

---

<div class="post-metadata">

**Author:** ![andybourges](https://avatars.discourse-cdn.com/v4/letter/a/a3d4f5/32.png) [@andybourges](https://forum.ansible.com/u/andybourges)\
**Post date:** [October 5, 2022, 12:50pm UTC](https://forum.ansible.com/t/upgrade-issues-0-23-0-0-30-0/37179/5 "2022-10-05T12:50:38Z")

</div>

Ha - it’s working ! Have been trying to solve this myself for hours… if not days:

Every 1.0s: kubectl -n awx get pods awx-troubleshooting: Wed Oct 5 14:49:36 2022

NAME READY STATUS RESTARTS AGE  
awx-operator-controller-manager-fcf6db67c-zwd9c 2/2 Running 2 (141m ago) 151m  
awx-postgres-13-0 1/1 Running 0 2m37s  
awx-b7c7c79b8-chnsp 4/4 Running 0 2m5s

Thanks so much!

---

<div class="post-metadata">

**Author:** ![andybourges](https://avatars.discourse-cdn.com/v4/letter/a/a3d4f5/32.png) [@andybourges](https://forum.ansible.com/u/andybourges)\
**Post date:** [October 5, 2022, 12:52pm UTC](https://forum.ansible.com/t/upgrade-issues-0-23-0-0-30-0/37179/6 "2022-10-05T12:52:58Z")

</div>

ah ok - thanks for the pointer… so better stick with operator 0.29.0 ?

---

<div class="post-metadata">

**Author:** ![m.nelson](https://avatars.discourse-cdn.com/v4/letter/m/c37758/32.png) [@m.nelson](https://forum.ansible.com/u/m.nelson)\
**Post date:** [October 5, 2022, 12:55pm UTC](https://forum.ansible.com/t/upgrade-issues-0-23-0-0-30-0/37179/7 "2022-10-05T12:55:24Z")

</div>

Yep, I would recommend operator 0.29.0 with awx 21.6.0.

I haven’t found any issues in my testing so far.
