Merge pull request #260 from kurokobo/awx-2.5.3

feat: bump operator version to 2.5.3
This commit is contained in:
kurokobo 2023-09-14 11:09:17 +09:00 committed by GitHub
commit 01f0b8d0fb
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 63 additions and 56 deletions

View file

@ -29,17 +29,17 @@ An example implementation of AWX on single node K3s using AWX Operator, with eas
- Tested on:
- CentOS Stream 8 (Minimal)
- K3s v1.27.4+k3s1
- K3s v1.27.5+k3s1
- Products that will be deployed:
- AWX Operator 2.5.2
- AWX 23.0.0
- AWX Operator 2.5.3
- AWX 23.1.0
- PostgreSQL 13
## References
- [K3s - Lightweight Kubernetes](https://docs.k3s.io/)
- [INSTALL.md on ansible/awx](https://github.com/ansible/awx/blob/23.0.0/INSTALL.md) @23.0.0
- [README.md on ansible/awx-operator](https://github.com/ansible/awx-operator/blob/2.5.2/README.md) @2.5.2
- [INSTALL.md on ansible/awx](https://github.com/ansible/awx/blob/23.1.0/INSTALL.md) @23.1.0
- [README.md on ansible/awx-operator](https://github.com/ansible/awx-operator/blob/2.5.3/README.md) @2.5.3
## Requirements
@ -92,7 +92,7 @@ If you want to use files suitable for the specific version of AWX Operator, [ref
cd ~
git clone https://github.com/kurokobo/awx-on-k3s.git
cd awx-on-k3s
git checkout 2.5.2
git checkout 2.5.3
```
Then invoke `kubectl apply -k operator` to deploy AWX Operator.

View file

@ -42,7 +42,7 @@ This guide does not provide any information how to configure Azure, other DNS se
Deploy cert-manager first.
```bash
kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.12.3/cert-manager.yaml
kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.13.0/cert-manager.yaml
```
Ensure the pods in `cert-manager` namespace are running.

View file

@ -32,7 +32,7 @@ An example simple playbook for Ansible is also provided in this repository. This
| - | - | - |
| `awxbackup_namespace` | The name of the NameSpace where the `AWXBackup` resource will be created. | `awx` |
| `awxbackup_name` | The name of the `AWXBackup` resource. Dynamically generated using execution time by default. | `awxbackup-{{ lookup('pipe', 'date +%Y-%m-%d-%H-%M-%S') }}` |
| `awxbackup_spec` | The `spec` of the `AWXBackup` resource. Refer [official documentation](https://github.com/ansible/awx-operator/tree/2.5.2/roles/backup) for acceptable fields. | `deployment_name: awx`<br>`backup_pvc: awx-backup-claim`<br>`clean_backup_on_delete: true` |
| `awxbackup_spec` | The `spec` of the `AWXBackup` resource. Refer [official documentation](https://github.com/ansible/awx-operator/tree/2.5.3/roles/backup) for acceptable fields. | `deployment_name: awx`<br>`backup_pvc: awx-backup-claim`<br>`clean_backup_on_delete: true` |
| `awxbackup_timeout` | Time to wait for backup to complete, in seconds. If exceeded, the playbook will fail. | `600` |
| `awxbackup_keep_days` | Number of days to keep `AWXBackup` resources. `AWXBackup` resources older than this value will be deleted by this playbook. Set `0` to keep forever. | `30` |

View file

@ -189,7 +189,7 @@ There is a Kubernetes Operator for Pulp 3 named Pulp Operator.
- [pulp/pulp-operator: Kubernetes Operator for Pulp 3](https://github.com/pulp/pulp-operator)
This project is in alpha stage and under active development. In this guide, we use [Pulp Operator 1.0.0-alpha.9](https://github.com/pulp/pulp-operator/tree/1.0.0-alpha.9).
This project is in alpha stage and under active development. In this guide, we use [Pulp Operator 1.0.0-beta.1](https://github.com/pulp/pulp-operator/tree/1.0.0-beta.1).
### Install Pulp Operator
@ -199,7 +199,7 @@ Install specified version of Pulp Operator.
cd ~
git clone https://github.com/pulp/pulp-operator.git
cd pulp-operator
git checkout 1.0.0-alpha.9
git checkout 1.0.0-beta.1
```
Export the name of the namespace where you want to deploy Pulp Operator as the environment variable `NAMESPACE` and run `make deploy`. The default namespace is `pulp-operator-system`. Note that `make deploy` requires `go` binary by default but you can remove this dependency by small `sed` patch.
@ -309,7 +309,7 @@ When the deployment completes successfully, the logs end with:
$ kubectl -n galaxy logs -f deployments/pulp-operator-controller-manager
...
2006-01-02T15:04:05Z INFO repo_manager/status.go:149 galaxy operator finished execution ...
2006-01-02T15:04:05Z INFO repo_manager/controller.go:233 Operator tasks synced
2006-01-02T15:04:05Z INFO repo_manager/controller.go:236 Operator tasks synced
```
Required objects has been deployed next to Pulp Operator in `galaxy` namespace.
@ -317,55 +317,61 @@ Required objects has been deployed next to Pulp Operator in `galaxy` namespace.
```bash
$ kubectl -n galaxy get pulp,all,ingress,secrets
NAME AGE
pulp.repo-manager.pulpproject.org/galaxy 3m22s
pulp.repo-manager.pulpproject.org/galaxy 3m15s
NAME READY STATUS RESTARTS AGE
pod/pulp-operator-controller-manager-66445f9d88-w6qjv 2/2 Running 0 5m34s
pod/galaxy-redis-84c95d97f8-86hkk 1/1 Running 0 3m22s
pod/galaxy-database-0 1/1 Running 0 3m22s
pod/galaxy-worker-588c5f4df4-k255c 1/1 Running 0 3m16s
pod/galaxy-api-6b86d65586-7rx79 1/1 Running 0 3m17s
pod/galaxy-content-7cf7cf49f6-tqqbl 1/1 Running 0 3m17s
pod/galaxy-web-546fbf459-cmn9v 1/1 Running 0 2m44s
NAME READY STATUS RESTARTS AGE
pod/pulp-operator-controller-manager-74f74c5846-kcnvx 2/2 Running 0 3m29s
pod/galaxy-redis-56445fcbbb-hxdq9 1/1 Running 0 3m15s
pod/galaxy-database-0 1/1 Running 0 3m15s
pod/galaxy-pulpcore-migration-dcmhw-tjnxq 0/1 Completed 0 3m4s
pod/galaxy-reset-admin-password-pb5mv-s2nm6 0/1 Completed 0 3m4s
pod/galaxy-api-5bbf4c58cd-kzdgg 1/1 Running 0 3m4s
pod/galaxy-content-59bbb99578-d87zz 1/1 Running 0 3m4s
pod/galaxy-worker-66dd884cfb-v7r9z 1/1 Running 0 3m4s
pod/galaxy-web-5bfcd9c5f9-xfgcv 1/1 Running 0 2m24s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/pulp-operator-controller-manager-metrics-service ClusterIP 10.43.22.172 <none> 8443/TCP 5m34s
service/galaxy-database-svc ClusterIP None <none> 5432/TCP 3m22s
service/galaxy-redis-svc ClusterIP 10.43.196.8 <none> 6379/TCP 3m22s
service/galaxy-api-svc ClusterIP 10.43.65.203 <none> 24817/TCP 3m17s
service/galaxy-content-svc ClusterIP 10.43.226.206 <none> 24816/TCP 3m16s
service/galaxy-web-svc ClusterIP 10.43.7.188 <none> 24880/TCP 2m43s
service/pulp-operator-controller-manager-metrics-service ClusterIP 10.43.168.53 <none> 8443/TCP 3m29s
service/galaxy-database-svc ClusterIP None <none> 5432/TCP 3m15s
service/galaxy-redis-svc ClusterIP 10.43.192.108 <none> 6379/TCP 3m15s
service/galaxy-api-svc ClusterIP 10.43.90.155 <none> 24817/TCP 3m4s
service/galaxy-content-svc ClusterIP 10.43.240.255 <none> 24816/TCP 3m4s
service/galaxy-web-svc ClusterIP 10.43.60.255 <none> 24880/TCP 2m23s
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/pulp-operator-controller-manager 1/1 1 1 5m34s
deployment.apps/galaxy-redis 1/1 1 1 3m22s
deployment.apps/galaxy-worker 1/1 1 1 3m16s
deployment.apps/galaxy-api 1/1 1 1 3m17s
deployment.apps/galaxy-content 1/1 1 1 3m17s
deployment.apps/galaxy-web 1/1 1 1 2m44s
deployment.apps/pulp-operator-controller-manager 1/1 1 1 3m29s
deployment.apps/galaxy-redis 1/1 1 1 3m15s
deployment.apps/galaxy-content 1/1 1 1 3m4s
deployment.apps/galaxy-api 1/1 1 1 3m4s
deployment.apps/galaxy-worker 1/1 1 1 3m4s
deployment.apps/galaxy-web 1/1 1 1 2m24s
NAME DESIRED CURRENT READY AGE
replicaset.apps/pulp-operator-controller-manager-66445f9d88 1 1 1 5m34s
replicaset.apps/galaxy-redis-84c95d97f8 1 1 1 3m22s
replicaset.apps/galaxy-worker-588c5f4df4 1 1 1 3m16s
replicaset.apps/galaxy-api-6b86d65586 1 1 1 3m17s
replicaset.apps/galaxy-content-7cf7cf49f6 1 1 1 3m17s
replicaset.apps/galaxy-web-546fbf459 1 1 1 2m44s
replicaset.apps/pulp-operator-controller-manager-74f74c5846 1 1 1 3m29s
replicaset.apps/galaxy-redis-56445fcbbb 1 1 1 3m15s
replicaset.apps/galaxy-api-5bbf4c58cd 1 1 1 3m4s
replicaset.apps/galaxy-content-59bbb99578 1 1 1 3m4s
replicaset.apps/galaxy-worker-66dd884cfb 1 1 1 3m4s
replicaset.apps/galaxy-web-5bfcd9c5f9 1 1 1 2m24s
NAME READY AGE
statefulset.apps/galaxy-database 1/1 3m22s
statefulset.apps/galaxy-database 1/1 3m15s
NAME COMPLETIONS DURATION AGE
job.batch/galaxy-pulpcore-migration-dcmhw 1/1 31s 3m4s
job.batch/galaxy-reset-admin-password-pb5mv 1/1 35s 3m4s
NAME CLASS HOSTS ADDRESS PORTS AGE
ingress.networking.k8s.io/galaxy traefik galaxy.example.com 192.168.0.219 80, 443 2m45s
ingress.networking.k8s.io/galaxy traefik galaxy.example.com 192.168.0.219 80, 443 2m20s
NAME TYPE DATA AGE
secret/galaxy-admin-password Opaque 1 3m22s
secret/galaxy-postgres-configuration Opaque 7 3m22s
secret/galaxy-secret-tls kubernetes.io/tls 2 3m22s
secret/redhat-operators-pull-secret Opaque 1 3m22s
secret/galaxy-server Opaque 1 3m22s
secret/galaxy-db-fields-encryption Opaque 1 3m22s
secret/galaxy-container-auth Opaque 2 3m22s
secret/galaxy-postgres-configuration Opaque 7 3m15s
secret/galaxy-secret-tls kubernetes.io/tls 2 3m15s
secret/galaxy-secret-key Opaque 1 3m15s
secret/galaxy-server Opaque 1 3m15s
secret/galaxy-db-fields-encryption Opaque 1 3m15s
secret/galaxy-container-auth Opaque 2 3m15s
secret/galaxy-admin-password Opaque 1 3m15s
```
Now your AWX is available at `https://galaxy.example.com/` or the hostname you specified. You can log in to the GUI by user `admin` with password you specified in `pulp/kustomization.yaml`.

View file

@ -1,11 +1,11 @@
apiVersion: repo-manager.pulpproject.org/v1alpha1
apiVersion: repo-manager.pulpproject.org/v1beta2
kind: Pulp
metadata:
name: galaxy
spec:
# These parameters are designed for use with:
# - Pulp Operator: 1.0.0-alpha.9
# https://github.com/pulp/pulp-operator/blob/1.0.0-alpha.9/README.md
# - Pulp Operator: 1.0.0-beta.1
# https://github.com/pulp/pulp-operator/blob/1.0.0-beta.1/README.md
# - Galaxy NG: 4.7.1
# https://github.com/ansible/galaxy_ng/tree/4.7.1
@ -23,7 +23,6 @@ spec:
ingress_tls_secret: galaxy-secret-tls
ingress_host: galaxy.example.com
storage_type: file
file_storage_storage_class: galaxy-file-volume
file_storage_access_mode: ReadWriteOnce
file_storage_size: 8Gi

View file

@ -12,8 +12,8 @@ secretGenerator:
- operator=awx
resources:
- github.com/ansible/awx-operator/config/default?ref=2.5.2
- github.com/ansible/awx-operator/config/default?ref=2.5.3
images:
- name: quay.io/ansible/awx-operator
newTag: 2.5.2
newTag: 2.5.3

View file

@ -8,7 +8,7 @@ Traefik, the default Ingress controller for K3s, listens for access over both HT
- [Procedure](#procedure)
- [Prepare Traefik](#prepare-traefik)
- [Restoring using Redirect HTTP to HTTPS](#restoring-using-redirect-http-to-https)
- [Restoring using Redirect HTTP to HTTPS](#restoring-using-redirect-http-to-https)
- [Patch your AWX to enable HTTPS redirection](#patch-your-awx-to-enable-https-redirection)
- [Patch your AWX using Kustomize](#patch-your-awx-using-kustomize)
- [Patch your AWX manually](#patch-your-awx-manually)
@ -41,6 +41,7 @@ kubectl -n default get middleware
```
#### Restoring using Redirect HTTP to HTTPS
When deploying the middleware, it will not be part of the [restore instructions in the restore guide](../restore/README.md). Traefik will assume the middleware is present when the restore is complete, but you will have to reapply the scheme in the `default` namespace if it is not already present, e.g. after restoring to a fresh node.
### Patch your AWX to enable HTTPS redirection

View file

@ -186,7 +186,7 @@ Typical solutions are one of the following:
ee_resource_requirements: {} 👈👈👈
```
- You can specify more specific value for each containers. Refer [official documentation](https://github.com/ansible/awx-operator/blob/2.5.2/docs/user-guide/advanced-configuration/containers-resource-requirements.md) for details.
- You can specify more specific value for each containers. Refer [official documentation](https://github.com/ansible/awx-operator/blob/2.5.3/docs/user-guide/advanced-configuration/containers-resource-requirements.md) for details.
- In this way you can run AWX with fewer resources, but you may encounter performance issues.
### The Pod is `Pending` with "1 pod has unbound immediate PersistentVolumeClaims." event

View file

@ -118,7 +118,7 @@ sudo rm -rf /data/postgres
## 📝 Upgrade from `0.13.0` (e.g. from `0.13.0` to `0.14.0`)
If you are using AWX Operator `0.13.0` and want to upgrade to newer version, you should consider the big changes in AWX Operator in `0.14.0`. [As described in the documentation](https://github.com/ansible/awx-operator/blob/2.5.2/docs/upgrade/upgrading.md#v0140), in `0.14.0`, AWX Operator changed from cluster scope to namespace scope. Also, the Operator SDK `1.x` is used.
If you are using AWX Operator `0.13.0` and want to upgrade to newer version, you should consider the big changes in AWX Operator in `0.14.0`. [As described in the documentation](https://github.com/ansible/awx-operator/blob/2.5.3/docs/upgrade/upgrading.md#v0140), in `0.14.0`, AWX Operator changed from cluster scope to namespace scope. Also, the Operator SDK `1.x` is used.
This means that upgrading from `0.13.0` to `0.14.0` or later requires a bit of finesse, such as cleaning the old AWX Operator. **If you are using `0.12.0` or earlier and want to upgrade to `0.14.0` or later, I recommend you to [upgrade to `0.13.0` first](#-upgrade-from-0120-or-earlier-eg-from-0120-to-0130) and then come back to here to avoid unintended issue.**

View file

@ -10,6 +10,7 @@ The table below maps the AWX Operator versions and bundled AWX versions.
| AWX Operator | AWX |
| - | - |
| 2.5.3 | 23.1.0 |
| 2.5.2 | 23.0.0 |
| 2.5.1 | 22.7.0 |
| 2.5.0 | 22.6.0 |