Awx-operator: Operator AWX tidak dapat membuat pod setelah memutakhirkan dari k8s 1.21.3 ke 1.22.0

Dibuat pada 11 Agu 2021  ·  6Komentar  ·  Sumber: ansible/awx-operator

JENIS MASALAH
  • Laporan Bug
RINGKASAN

Operator AWX tidak dapat membuat awx-pod setelah memutakhirkan dari k8s 1.21.3 ke 1.22.0
Bekerja dengan baik sebelumnya.

LINGKUNGAN
  • Versi AWX: 19.2.2
  • Versi operator: 0.12.0
  • Versi Kubernetes: v1.22.0
  • Metode pemasangan AWX: di tempat dengan ubuntu 20.04 dan buruh pelabuhan
LANGKAH-LANGKAH REPRODUKSI

Dari 1.21.3 instal awx-operator dan atur awx. Ini bekerja dengan baik.
Tingkatkan ke 1.22.0
Bunuh dan buat ulang penerapan awx
pods awx postgres sudah habis
server pod awx tidak aktif

HASIL YANG DIHARAPKAN

AWX harus dalam keadaan berjalan

HASIL NYATA

Hanya awx postgres yang aktif

NAME                                     READY   STATUS    RESTARTS      AGE
awx-itd-postgres-0                       1/1     Running   0             8m29s
awx-operator-545497f7d5-k88wr            1/1     Running   1 (34m ago)   55m
nfs-client-provisioner-5c95d8f86-9tm6k   1/1     Running   5 (34m ago)   5d4h
INFORMASI TAMBAHAN

File Yaml yang saya gunakan untuk membuat pod:

---
apiVersion: awx.ansible.com/v1beta1
kind: AWX
metadata:
  name: awx-itd
spec:
  service_type: LoadBalancer
  loadbalancer_protocol: http
  loadbalancer_port: 80
  loadbalancer_annotations: |
    metallb.universe.tf/address-pool: bde-172-17
  hostname: awx.bde.lab
  replicas: 2
  projects_persistence: true
  projects_storage_class: managed-nfs-storage
  postgres_storage_class: managed-nfs-storage
  #adminUser: admin
LOG OPERATOR AWX
PLAY RECAP *********************************************************************
localhost                  : ok=29   changed=2    unreachable=0    failed=1    skipped=27   rescued=0    ignored=0


-------------------------------------------------------------------------------
{"level":"error","ts":1628693554.202394,"logger":"controller-runtime.controller","msg":"Reconciler error","controller":"awx-controller","request":"default/awx-itd","error":"event runner on failed","stacktrace":"github.com/go-logr/zapr.(*zapLogger).Error\n\tpkg/mod/github.com/go-logr/[email protected]/zapr.go:128\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\tpkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:258\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\tpkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:232\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).worker\n\tpkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:211\nk8s.io/apimachinery/pkg/util/wait.BackoffUntil.func1\n\tpkg/mod/k8s.io/[email protected]/pkg/util/wait/wait.go:155\nk8s.io/apimachinery/pkg/util/wait.BackoffUntil\n\tpkg/mod/k8s.io/[email protected]/pkg/util/wait/wait.go:156\nk8s.io/apimachinery/pkg/util/wait.JitterUntil\n\tpkg/mod/k8s.io/[email protected]/pkg/util/wait/wait.go:133\nk8s.io/apimachinery/pkg/util/wait.Until\n\tpkg/mod/k8s.io/[email protected]/pkg/util/wait/wait.go:90"}

Komentar yang paling membantu

Mengamati sama.

Setelah memperbarui microk8s ke 1.22 dan kemudian mencoba untuk menyebarkan operator 0.13, wadah operator ditingkatkan tetapi tampaknya mendapatkan kesalahan ketika mencoba untuk memutakhirkan awx pod

"job":"6175742077372812453","name":"awx","namespace":"default","error":"exit status 2","stacktrace":"github.com/go-logr/zapr.(*zapLogger).Error\n\tpkg/mod/github.com/go-logr/[email protected]/zapr.go:128\ngithub.com/operator-framework/operator-sdk/pkg/ansible/runner.(*runner).Run.func1\n\tsrc/github.com/operator-framework/operator-sdk/pkg/ansible/runner/runner.go:239"}
{"level":"error","ts":1629084951.678016,"logger":"controller-runtime.controller","msg":"Reconciler error","controller":"awx-controller","request":"default/awx","error":"event runner on failed","stacktrace":"github.com/go-logr/zapr.(*zapLogger).Error\n\tpkg/mod/github.com/go-logr/[email protected]/zapr.go:128\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\tpkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:258\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\tpkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:232\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).worker\n\tpkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:211\nk8s.io/apimachinery/pkg/util/wait.BackoffUntil.func1\n\tpkg/mod/k8s.io/[email protected]/pkg/util/wait/wait.go:155\nk8s.io/apimachinery/pkg/util/wait.BackoffUntil\n\tpkg/mod/k8s.io/[email protected]/pkg/util/wait/wait.go:156\nk8s.io/apimachinery/pkg/util/wait.JitterUntil\n\tpkg/mod/k8s.io/[email protected]/pkg/util/wait/wait.go:133\nk8s.io/apimachinery/pkg/util/wait.Until\n\tpkg/mod/k8s.io/[email protected]/pkg/util/wait/wait.go:90"}

awx yaml sangat mendasar:

---
apiVersion: awx.ansible.com/v1beta1
kind: AWX
metadata:
  name: awx
spec:
  task_privileged: true

Semua 6 komentar

Mengamati sama.

Setelah memperbarui microk8s ke 1.22 dan kemudian mencoba untuk menyebarkan operator 0.13, wadah operator ditingkatkan tetapi tampaknya mendapatkan kesalahan ketika mencoba untuk memutakhirkan awx pod

"job":"6175742077372812453","name":"awx","namespace":"default","error":"exit status 2","stacktrace":"github.com/go-logr/zapr.(*zapLogger).Error\n\tpkg/mod/github.com/go-logr/[email protected]/zapr.go:128\ngithub.com/operator-framework/operator-sdk/pkg/ansible/runner.(*runner).Run.func1\n\tsrc/github.com/operator-framework/operator-sdk/pkg/ansible/runner/runner.go:239"}
{"level":"error","ts":1629084951.678016,"logger":"controller-runtime.controller","msg":"Reconciler error","controller":"awx-controller","request":"default/awx","error":"event runner on failed","stacktrace":"github.com/go-logr/zapr.(*zapLogger).Error\n\tpkg/mod/github.com/go-logr/[email protected]/zapr.go:128\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler\n\tpkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:258\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem\n\tpkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:232\nsigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).worker\n\tpkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:211\nk8s.io/apimachinery/pkg/util/wait.BackoffUntil.func1\n\tpkg/mod/k8s.io/[email protected]/pkg/util/wait/wait.go:155\nk8s.io/apimachinery/pkg/util/wait.BackoffUntil\n\tpkg/mod/k8s.io/[email protected]/pkg/util/wait/wait.go:156\nk8s.io/apimachinery/pkg/util/wait.JitterUntil\n\tpkg/mod/k8s.io/[email protected]/pkg/util/wait/wait.go:133\nk8s.io/apimachinery/pkg/util/wait.Until\n\tpkg/mod/k8s.io/[email protected]/pkg/util/wait/wait.go:90"}

awx yaml sangat mendasar:

---
apiVersion: awx.ansible.com/v1beta1
kind: AWX
metadata:
  name: awx
spec:
  task_privileged: true

Mengobrol dengan beberapa orang dari tim operator-sdk.

Sepertinya ini mungkin disebabkan oleh fakta bahwa operator kami dibangun di atas SDK versi 0.19.

cc @Spredzy @rooftopcellist

Dikonfirmasi dengan tim operator-sdk bahwa operator yang dibangun di atas 0.x tidak akan bekerja pada versi kubernet yang lebih baru. Kami telah memprioritaskan menabrak ini di beberapa titik dalam waktu dekat. Setiap pembaruan akan diposting di sini.

Saya dapat mengonfirmasi bahwa masalah ini ada pada versi 1.22.1.
Kembali ke versi 1.21.3 menyelesaikan masalah

Dengan penambahan PR ini - https://github.com/ansible/awx-operator/pull/508 , saya dapat menggunakan aplikasi awx-operator dan awx ke cluster Openshift 4.9 (k8s v1.22.0).

$ oc version
Client Version: 4.6.8
Server Version: 4.9.0-0.nightly-2021-08-23-224104
Kubernetes Version: v1.22.0-rc.0+5c2f7cd

Semua kontainer sedang berjalan dan saya bisa masuk dan menjalankan pekerjaan dari UI.

image

Untuk menggunakan perbaikan ini, Anda perlu membangun gambar awx-operator dari devel saat ini karena rilis dengan perbaikan ini belum dipotong.

Saya juga dapat menerapkan 0.19.3 dengan mengedit https://raw.githubusercontent.com/ansible/awx-operator/devel/deploy/awx-operator.yaml ke:

...
      containers:
        - name: awx-operator
          image: 'quay.io/ansible/awx-operator:devel'
          env:
            - name: WATCH_NAMESPACE
            - name: POD_NAME
              valueFrom:
                fieldRef:
                  apiVersion: v1
                  fieldPath: metadata.name
            - name: OPERATOR_NAME
              value: awx-operator
            - name: ANSIBLE_GATHERING
              value: explicit
            - name: OPERATOR_VERSION
              value: devel
            - name: ANSIBLE_DEBUG_LOGS
              value: 'false'
...

perhatikan perubahan pada tag image dan OPERATOR_VERSION menjadi devel dan menerapkannya

Terima kasih!

Apakah halaman ini membantu?
0 / 5 - 0 peringkat