diff --git a/README.md b/README.md index df5144b..ffe68cd 100644 --- a/README.md +++ b/README.md @@ -27,9 +27,9 @@ An example implementation of AWX on single node K3s using AWX Operator, with eas - Tested on: - CentOS Stream 8 (Minimal) - - K3s v1.22.6+k3s1 + - K3s v1.22.7+k3s1 - Products that will be deployed: - - AWX Operator 0.18.0 + - AWX Operator 0.19.0 - AWX 20.0.1 - PostgreSQL 12 @@ -37,7 +37,7 @@ An example implementation of AWX on single node K3s using AWX Operator, with eas - [K3s - Lightweight Kubernetes](https://rancher.com/docs/k3s/latest/en/) - [INSTALL.md on ansible/awx](https://github.com/ansible/awx/blob/20.0.1/INSTALL.md) @20.0.1 -- [README.md on ansible/awx-operator](https://github.com/ansible/awx-operator/blob/0.18.0/README.md) @0.18.0 +- [README.md on ansible/awx-operator](https://github.com/ansible/awx-operator/blob/0.19.0/README.md) @0.19.0 ## Requirements @@ -83,7 +83,7 @@ Install specified version of AWX Operator. Note that this procedure is applicabl cd ~ git clone https://github.com/ansible/awx-operator.git cd awx-operator -git checkout 0.18.0 +git checkout 0.19.0 ``` Export the name of the namespace where you want to deploy AWX Operator as the environment variable `NAMESPACE` and run `make deploy`. The default namespace is `awx`. @@ -139,7 +139,7 @@ spec: ... ``` -Modify two `password`s in `base/kustomization.yaml`. Note that some special charactors like `&`, `$`, etc. in `password` under `awx-postgres-configuration` might cause the deployment issue. Not tested all charactors, but `!` is safe to use at least. +Modify two `password`s in `base/kustomization.yaml`. Note that the `password` under `awx-postgres-configuration` should not contain single or double quotes (`'`, `"`) or backslashes (`\`) to avoid any issues during deployment, backup or restoration. ```yaml ... @@ -190,8 +190,7 @@ $ kubectl -n awx logs -f deployments/awx-operator-controller-manager -c awx-mana ... ----- Ansible Task Status Event StdOut (awx.ansible.com/v1beta1, Kind=AWX, awx/awx) ----- PLAY RECAP ********************************************************************* -localhost : ok=65 changed=0 unreachable=0 failed=0 skipped=43 rescued=0 ignored=0 ----------- +localhost : ok=66 changed=0 unreachable=0 failed=0 skipped=43 rescued=0 ignored=0 ``` Required objects has been deployed next to AWX Operator in `awx` namespace. diff --git a/acme/README.md b/acme/README.md index 4c1cacb..e888f89 100644 --- a/acme/README.md +++ b/acme/README.md @@ -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.7.1/cert-manager.yaml +kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v1.7.2/cert-manager.yaml ``` Ensure the pods in `cert-manager` namespace are running. diff --git a/backup/README.md b/backup/README.md index 6eb3ece..d85a900 100644 --- a/backup/README.md +++ b/backup/README.md @@ -64,7 +64,6 @@ $ kubectl -n awx logs -f deployments/awx-operator-controller-manager -c awx-mana ----- Ansible Task Status Event StdOut (awx.ansible.com/v1beta1, Kind=AWXBackup, awxbackup-2021-06-06/awx) ----- PLAY RECAP ********************************************************************* localhost : ok=3 changed=0 unreachable=0 failed=0 skipped=7 rescued=0 ignored=0 ----------- ``` This will create AWXBackup object in the namespace and also create backup files in the Persistent Volume. In this example those files are available at `/data/backup`. diff --git a/backup/ansible/README.md b/backup/ansible/README.md index 7c0bbf3..8b47b9d 100644 --- a/backup/ansible/README.md +++ b/backup/ansible/README.md @@ -30,7 +30,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/0.18.0/roles/backup) for acceptable fields. | `{'deployment_name':'awx','backup_pvc':'awx-backup-claim'}` | +| `awxbackup_spec` | The `spec` of the `AWXBackup` resource. Refer [official documentation](https://github.com/ansible/awx-operator/tree/0.19.0/roles/backup) for acceptable fields. | `{'deployment_name':'awx','backup_pvc':'awx-backup-claim'}` | | `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. **Note that the actual backup data will remain in the PVC after the `AWXBackup` resource is deleted.** | `30` | diff --git a/base/awx.yaml b/base/awx.yaml index cd72a6a..ab1fa4d 100644 --- a/base/awx.yaml +++ b/base/awx.yaml @@ -5,8 +5,8 @@ metadata: name: awx spec: # These parameters are designed for use with: - # - AWX Operator: 0.18.0 - # https://github.com/ansible/awx-operator/blob/0.18.0/README.md + # - AWX Operator: 0.19.0 + # https://github.com/ansible/awx-operator/blob/0.19.0/README.md # - AWX: 20.0.1 # https://github.com/ansible/awx/blob/20.0.1/INSTALL.md diff --git a/builder/README.md b/builder/README.md index 48ff6b9..aa916ba 100644 --- a/builder/README.md +++ b/builder/README.md @@ -10,6 +10,7 @@ This repository includes ready-to-use files as an example to use Ansible Builder - CentOS Stream 8 (Minimal) - Python 3.9 - Docker 20.10.12 +- Ansible Builder 1.0.1 ## Install diff --git a/galaxy/README.md b/galaxy/README.md index 3967fc4..6d24c39 100644 --- a/galaxy/README.md +++ b/galaxy/README.md @@ -180,7 +180,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 still under active development and there is no support, however, at least the code to create a new instance seems to be implemented. In this procedure, we use [Pulp Operator 0.7.1](https://github.com/pulp/pulp-operator/tree/0.7.1) +This project is still under active development and there is no support, however, at least the code to create a new instance seems to be implemented. In this procedure, we use [Pulp Operator 0.8.0](https://github.com/pulp/pulp-operator/tree/0.8.0) ### Patch K3s @@ -208,7 +208,7 @@ Install specified version of Pulp Operator. cd ~ git clone https://github.com/pulp/pulp-operator.git cd pulp-operator -git checkout 0.7.1 +git checkout 0.8.0 ``` 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`. diff --git a/galaxy/pulp/galaxy.yaml b/galaxy/pulp/galaxy.yaml index 2238c82..d03b492 100644 --- a/galaxy/pulp/galaxy.yaml +++ b/galaxy/pulp/galaxy.yaml @@ -4,15 +4,15 @@ metadata: name: galaxy spec: # These parameters are designed for use with: - # - Pulp Operator: 0.7.1 - # https://github.com/pulp/pulp-operator/blob/0.7.1/README.md - # - Galaxy NG: 4.4.1 - # https://github.com/ansible/galaxy_ng/tree/4.4.1 + # - Pulp Operator: 0.8.0 + # https://github.com/pulp/pulp-operator/blob/0.8.0/README.md + # - Galaxy NG: 4.4.2 + # https://github.com/ansible/galaxy_ng/tree/4.4.2 image: quay.io/pulp/galaxy - image_version: 4.4.1 + image_version: 4.4.2 image_web: quay.io/pulp/galaxy-web - image_web_version: 4.4.1 + image_web_version: 4.4.2 admin_password_secret: galaxy-admin-password diff --git a/git/README.md b/git/README.md index 81db56b..fd4d589 100644 --- a/git/README.md +++ b/git/README.md @@ -53,18 +53,21 @@ kubectl apply -k git Required resources has been deployed in `git` namespace. ```bash -$ kubectl -n git get all -NAME READY STATUS RESTARTS AGE -pod/git-576868dc5b-z7z55 1/1 Running 0 31s +$ kubectl -n git get all,ingress +NAME READY STATUS RESTARTS AGE +pod/git-dc5d76bdb-xpl62 1/1 Running 0 11s NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE -service/git-service ClusterIP 10.43.192.81 3000/TCP,22/TCP 31s +service/git-service ClusterIP 10.43.64.160 3000/TCP,22/TCP 11s NAME READY UP-TO-DATE AVAILABLE AGE -deployment.apps/git 1/1 1 1 31s +deployment.apps/git 1/1 1 1 11s -NAME DESIRED CURRENT READY AGE -replicaset.apps/git-576868dc5b 1 1 1 31s +NAME DESIRED CURRENT READY AGE +replicaset.apps/git-dc5d76bdb 1 1 1 11s + +NAME CLASS HOSTS ADDRESS PORTS AGE +ingress.networking.k8s.io/git-ingress git.example.com 192.168.0.100 80, 443 11s ``` Now your Git repository is accesible through `https://git.example.com/` or the hostname you specified. Visit the URL and follow the installation wizard. diff --git a/registry/README.md b/registry/README.md index 98b13dd..89d1cf3 100644 --- a/registry/README.md +++ b/registry/README.md @@ -73,18 +73,21 @@ kubectl apply -k registry Required resources has been deployed in `registry` namespace. ```bash -$ kubectl -n registry get all -NAME READY STATUS RESTARTS AGE -pod/registry-5b4f874b77-9gb64 1/1 Running 0 27s +$ kubectl -n registry get all,ingress +NAME READY STATUS RESTARTS AGE +pod/registry-756d57bfd-khln6 1/1 Running 0 9s -NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE -service/registry-service ClusterIP 10.43.50.156 5000/TCP 28s +NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE +service/registry-service ClusterIP 10.43.183.177 5000/TCP 9s NAME READY UP-TO-DATE AVAILABLE AGE -deployment.apps/registry 1/1 1 1 27s +deployment.apps/registry 1/1 1 1 9s -NAME DESIRED CURRENT READY AGE -replicaset.apps/registry-5b4f874b77 1 1 1 27s +NAME DESIRED CURRENT READY AGE +replicaset.apps/registry-756d57bfd 1 1 1 9s + +NAME CLASS HOSTS ADDRESS PORTS AGE +ingress.networking.k8s.io/registry-ingress registry.example.com 192.168.0.100 80, 443 9s ``` Now your container registry can be used through `registry.example.com` or the hostname you specified. diff --git a/registry/deployment.yaml b/registry/deployment.yaml index 02f380e..1b4200f 100644 --- a/registry/deployment.yaml +++ b/registry/deployment.yaml @@ -17,7 +17,7 @@ spec: spec: containers: - name: registry - image: registry:2.7 + image: registry:2.8 ports: - containerPort: 5000 protocol: TCP diff --git a/restore/README.md b/restore/README.md index 23604d0..fc7397e 100644 --- a/restore/README.md +++ b/restore/README.md @@ -92,8 +92,7 @@ $ kubectl -n awx logs -f deployments/awx-operator-controller-manager -c awx-mana ... ----- Ansible Task Status Event StdOut (awx.ansible.com/v1beta1, Kind=AWX, awx/awx) ----- PLAY RECAP ********************************************************************* -localhost : ok=67 changed=0 unreachable=0 failed=0 skipped=41 rescued=0 ignored=0 ----------- +localhost : ok=68 changed=0 unreachable=0 failed=0 skipped=41 rescued=0 ignored=0 ``` This will create AWXRestore object in the namespace, and now your AWX is restored. diff --git a/runner/README.md b/runner/README.md index a32599e..5d4ac04 100644 --- a/runner/README.md +++ b/runner/README.md @@ -10,6 +10,7 @@ This repository includes ready-to-use files as an example to run Ansible Runner. - CentOS Stream 8 (Minimal) - Python 3.9 - Docker 20.10.12 +- Ansible Runner 2.1.3 ## Install diff --git a/tips/https-redirection.md b/tips/https-redirection.md index 92923f5..3ca49fb 100644 --- a/tips/https-redirection.md +++ b/tips/https-redirection.md @@ -88,7 +88,6 @@ $ kubectl -n awx logs -f deployments/awx-operator-controller-manager -c awx-mana ----- Ansible Task Status Event StdOut (awx.ansible.com/v1beta1, Kind=AWX, awx/awx) ----- PLAY RECAP ********************************************************************* localhost : ok=54 changed=0 unreachable=0 failed=0 skipped=37 rescued=0 ignored=0 ----------- ``` You can confirm that the annotations will be added to the Ingress resource. @@ -120,7 +119,6 @@ $ kubectl -n awx logs -f deployments/awx-operator-controller-manager -c awx-mana ----- Ansible Task Status Event StdOut (awx.ansible.com/v1beta1, Kind=AWX, awx/awx) ----- PLAY RECAP ********************************************************************* localhost : ok=54 changed=0 unreachable=0 failed=0 skipped=37 rescued=0 ignored=0 ----------- ``` You can confirm that the annotations will be added to the Ingress resource. diff --git a/tips/troubleshooting.md b/tips/troubleshooting.md index f92f900..0f33844 100644 --- a/tips/troubleshooting.md +++ b/tips/troubleshooting.md @@ -153,7 +153,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/0.18.0/README.md#containers-resource-requirements) for details. + - You can specify more specific value for each containers. Refer [official documentation](https://github.com/ansible/awx-operator/blob/0.19.0/README.md#containers-resource-requirements) 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 @@ -222,16 +222,20 @@ kubectl -n awx logs -f deployment/awx -c awx-web [wait-for-migrations] Attempt 4 of 30 [wait-for-migrations] Waiting 4 seconds before next attempt ... +[wait-for-migrations] Attempt 28 of 30 +[wait-for-migrations] Waiting 30 seconds before next attempt +[wait-for-migrations] Attempt 29 of 30 +[wait-for-migrations] Waiting 30 seconds before next attempt +... ``` This problem occurs when the AWX pod and the PostgreSQL pod cannot communicate properly. In most cases, the cause of this is the network on your K3s. To solve this, check or try the following: -- Ensure your PostgreSQL (typically the Pod named `awx-postgres-0`)is in `Running` state. +- Ensure your PostgreSQL (typically the Pod named `awx-postgres-0`) is in `Running` state. - Ensure your `firewalld`, `ufw` or any kind of firewall has been disabled on your K3s host. - Ensure your `awx-postgres-configuration` has correct values, especially if you're using external PostgreSQL. -- Ensure your `password` in `awx-postgres-configuration` does not contain any special charactors like '&', '$', etc.. - Uninstall K3s and install it again. ### The Pod for PostgreSQL is in `CrashLoopBackOff` state and shows "Permission denied" log diff --git a/tips/upgrade-operator.md b/tips/upgrade-operator.md index bf84581..e04f82c 100644 --- a/tips/upgrade-operator.md +++ b/tips/upgrade-operator.md @@ -11,6 +11,7 @@ Note that once you upgrade AWX Operator, your AWX will also be upgraded automati | AWX Operator | AWX | | - | - | +| 0.19.0 | 20.0.1 | | 0.18.0 | 20.0.1 | | 0.17.0 | 20.0.0 | | 0.16.1 | 19.5.1 | @@ -75,7 +76,6 @@ $ kubectl -n awx logs -f deployments/awx-operator-controller-manager -c awx-mana ----- Ansible Task Status Event StdOut (awx.ansible.com/v1beta1, Kind=AWX, awx/awx) ----- PLAY RECAP ********************************************************************* localhost : ok=56 changed=0 unreachable=0 failed=0 skipped=35 rescued=0 ignored=0 ----------- ``` ## 📝 Upgrade from `0.13.0` (e.g. from `0.13.0` to `0.14.0`) @@ -132,7 +132,6 @@ $ kubectl -n awx logs -f deployments/awx-operator-controller-manager -c awx-mana ----- Ansible Task Status Event StdOut (awx.ansible.com/v1beta1, Kind=AWX, awx/awx) ----- PLAY RECAP ********************************************************************* localhost : ok=56 changed=0 unreachable=0 failed=0 skipped=35 rescued=0 ignored=0 ----------- ``` ## 📝 Upgrade from `0.12.0` or earlier (e.g. from `0.12.0` to `0.13.0`)