Thank you for your comments.
However, I have followed the official docs you mentioned already.
following topology is what I want to have. (eventually the dotted line has to be solid line)
in the mesh-ingress-1 of ingress object, the backends of the external_hostname :27199 configured. where could I find external_hostname:443 what my remote EE node wants to reach. (all the firewalls or 443 is opened, by the way)
following is the output of the command you asked.
apiVersion: v1
items:
- apiVersion: awx.ansible.com/v1beta1
kind: AWX
metadata:
annotations:
kubectl.kubernetes.io/last-applied-configuration: |
{"apiVersion":"awx.ansible.com/v1beta1","kind":"AWX","metadata":{"annotations":{},"name":"awx","namespace":"awx"},"spec":{"auto_upgrade":false,"control_plane_ee_image":"local-repo/ansible/awx-ee:24.1.0","ee_images":[{"image":"local-repo/ansible/awx-ee:24.1.0","name":"octa-custom-awx-ee"}],"extra_volumes":"- name: static-data\n persistentVolumeClaim:\n claimName: static-data-pvc\n readOnly: false\n","image":"local-repo/ansible/awx","image_version":"24.1.0","init_container_image":"local-repo/ansible/awx-ee","init_container_image_version":"24.1.0","init_projects_container_image":"local-repo/centos/centos:stream9","postgres_configuration_secret":"awx-postgres-configuration","postgres_data_path":"/var/lib/pgsql/data/userdata","postgres_image":"local-repo/sclorg/postgresql-15-c9s","postgres_image_version":"latest","postgres_storage_class":"datapostgress","postgres_storage_requirements":{"requests":{"storage":"20Gi"}},"projects_persistence":true,"projects_storage_access_mode":"ReadWriteMany","redis_image":"local-repo/redis","redis_image_version":"7","secret_key_secret":"awx-secret-key","service_type":"nodeport","web_extra_volume_mounts":"- name: static-data\n mountPath: /var/lib/projects\n"}}
creationTimestamp: "2024-03-27T10:36:40Z"
generation: 1
labels:
app.kubernetes.io/component: awx
app.kubernetes.io/managed-by: awx-operator
app.kubernetes.io/operator-version: 2.14.0
app.kubernetes.io/part-of: awx
name: awx
namespace: awx
ownerReferences:
- apiVersion: awx.ansible.com/v1beta1
blockOwnerDeletion: true
controller: true
kind: AWX
name: awx
uid: 75ef1d4c-61c0-45d1-ac07-e65de9559f60
resourceVersion: "22488999"
uid: 75ef1d4c-61c0-45d1-ac07-e65de9559f60
spec:
admin_user: admin
auto_upgrade: false
control_plane_ee_image: local-repo/ansible/awx-ee:24.1.0
create_preload_data: true
ee_images:
- image: local-repo/ansible/awx-ee:24.1.0
name: octa-custom-awx-ee
extra_volumes: |
- name: static-data
persistentVolumeClaim:
claimName: static-data-pvc
readOnly: false
garbage_collect_secrets: false
image: local-repo/ansible/awx
image_pull_policy: IfNotPresent
image_version: 24.1.0
init_container_image: local-repo/ansible/awx-ee
init_container_image_version: 24.1.0
init_projects_container_image: local-repo/centos/centos:stream9
ipv6_disabled: false
loadbalancer_class: ""
loadbalancer_ip: ""
loadbalancer_port: 80
loadbalancer_protocol: http
metrics_utility_cronjob_gather_schedule: '@hourly'
metrics_utility_cronjob_report_schedule: '@monthly'
metrics_utility_enabled: false
metrics_utility_pvc_claim_size: 5Gi
no_log: true
postgres_configuration_secret: awx-postgres-configuration
postgres_data_path: /var/lib/pgsql/data/userdata
postgres_image: local-repo/sclorg/postgresql-15-c9s
postgres_image_version: latest
postgres_keepalives: true
postgres_keepalives_count: 5
postgres_keepalives_idle: 5
postgres_keepalives_interval: 5
postgres_storage_class: datapostgress
postgres_storage_requirements:
requests:
storage: 20Gi
projects_persistence: true
projects_storage_access_mode: ReadWriteMany
projects_storage_size: 8Gi
redis_image: local-repo/redis
redis_image_version: "7"
replicas: 1
route_tls_termination_mechanism: Edge
secret_key_secret: awx-secret-key
service_type: nodeport
set_self_labels: true
task_liveness_failure_threshold: 3
task_liveness_initial_delay: 5
task_liveness_period: 0
task_liveness_timeout: 1
task_privileged: false
task_readiness_failure_threshold: 3
task_readiness_initial_delay: 20
task_readiness_period: 0
task_readiness_timeout: 1
web_extra_volume_mounts: |
- name: static-data
mountPath: /var/lib/projects
web_liveness_failure_threshold: 3
web_liveness_initial_delay: 5
web_liveness_period: 0
web_liveness_timeout: 1
web_readiness_failure_threshold: 3
web_readiness_initial_delay: 20
web_readiness_period: 0
web_readiness_timeout: 1
status:
adminPasswordSecret: awx-admin-password
adminUser: admin
broadcastWebsocketSecret: awx-broadcast-websocket
conditions:
- lastTransitionTime: "2024-03-27T10:37:40Z"
reason: ""
status: "False"
type: Failure
- lastTransitionTime: "2024-03-27T10:37:36Z"
reason: Successful
status: "True"
type: Running
- lastTransitionTime: "2024-04-14T15:40:34Z"
reason: Successful
status: "True"
type: Successful
image: local-repo/ansible/awx:24.1.0
postgresConfigurationSecret: awx-postgres-configuration
secretKeySecret: awx-secret-key
version: 24.1.0
- apiVersion: awx.ansible.com/v1alpha1
kind: AWXMeshIngress
metadata:
annotations:
kubectl.kubernetes.io/last-applied-configuration: |
{"apiVersion":"awx.ansible.com/v1alpha1","kind":"AWXMeshIngress","metadata":{"annotations":{},"name":"mesh-ingress-1","namespace":"awx"},"spec":{"deployment_name":"awx","external_hostname":"mesh-ingress-1.ansible.internal","ingress_class_name":"nginx","ingress_controller":"nginx","ingress_type":"Ingress"}}
creationTimestamp: "2024-04-16T06:28:49Z"
finalizers:
- awx.ansible.com/awx-mesh-ingress-finalizer
generation: 1
name: mesh-ingress-1
namespace: awx
resourceVersion: "23044177"
uid: 7d80e166-4a03-41da-8c6e-1705d42a8860
spec:
deployment_name: awx
external_hostname: mesh-ingress-1.ansible.internal
ingress_class_name: nginx
ingress_controller: nginx
ingress_type: Ingress
status:
conditions:
- lastTransitionTime: "2024-04-16T06:29:14Z"
message: ""
reason: ""
status: "False"
type: Failure
- ansibleResult:
changed: 3
completion: 2024-04-16T06:29:32.198552
failures: 0
ok: 20
skipped: 4
lastTransitionTime: "2024-04-16T06:28:49Z"
message: Awaiting next reconciliation
reason: Successful
status: "True"
type: Running
- lastTransitionTime: "2024-04-16T06:29:32Z"
message: Last reconciliation succeeded
reason: Successful
status: "True"
type: Successful
- apiVersion: v1
kind: Service
metadata:
annotations:
kubectl.kubernetes.io/last-applied-configuration: |
{"apiVersion":"v1","kind":"Service","metadata":{"annotations":{},"labels":{"control-plane":"controller-manager"},"name":"controller-manager-metrics-service","namespace":"awx"},"spec":{"ports":[{"name":"https","port":8443,"protocol":"TCP","targetPort":"https"}],"selector":{"control-plane":"controller-manager"}}}
creationTimestamp: "2024-03-27T10:36:40Z"
labels:
control-plane: controller-manager
name: controller-manager-metrics-service
namespace: awx
resourceVersion: "16272602"
uid: 2fd0ac75-d420-4915-bd53-0837c6d8bf15
spec:
clusterIP: 10.x.x.x
clusterIPs:
- 10.x.x.x
internalTrafficPolicy: Cluster
ipFamilies:
- IPv4
ipFamilyPolicy: SingleStack
ports:
- name: https
port: 8443
protocol: TCP
targetPort: https
selector:
control-plane: controller-manager
sessionAffinity: None
type: ClusterIP
status:
loadBalancer: {}
- apiVersion: v1
kind: Service
metadata:
annotations:
kubectl.kubernetes.io/last-applied-configuration: '{"apiVersion":"v1","kind":"Service","metadata":{"name":"mesh-ingress-1","namespace":"awx"},"spec":{"ports":[{"name":"ws","port":27199,"targetPort":27199}],"selector":{"app.kubernetes.io/name":"mesh-ingress-1"},"type":"ClusterIP"}}'
creationTimestamp: "2024-04-16T06:28:57Z"
name: mesh-ingress-1
namespace: awx
ownerReferences:
- apiVersion: awx.ansible.com/v1alpha1
kind: AWXMeshIngress
name: mesh-ingress-1
uid: 7d80e166-4a03-41da-8c6e-1705d42a8860
resourceVersion: "23044006"
uid: fc4fbde0-9727-41d9-96a8-b9a48676c1c9
spec:
clusterIP: 10.x.x.x
clusterIPs:
- 10.x.x.x
internalTrafficPolicy: Cluster
ipFamilies:
- IPv4
ipFamilyPolicy: SingleStack
ports:
- name: ws
port: 27199
protocol: TCP
targetPort: 27199
selector:
app.kubernetes.io/name: mesh-ingress-1
sessionAffinity: None
type: ClusterIP
status:
loadBalancer: {}
- apiVersion: v1
kind: Service
metadata:
annotations:
kubectl.kubernetes.io/last-applied-configuration: '{"apiVersion":"v1","kind":"Service","metadata":{"labels":{"app.kubernetes.io/component":"database","app.kubernetes.io/instance":"postgres-15-awx","app.kubernetes.io/managed-by":"awx-operator","app.kubernetes.io/name":"postgres-15","app.kubernetes.io/operator-version":"2.14.0","app.kubernetes.io/part-of":"awx"},"name":"awx-postgres-15","namespace":"awx"},"spec":{"clusterIP":"None","ports":[{"port":5432}],"selector":{"app.kubernetes.io/component":"database","app.kubernetes.io/instance":"postgres-15-awx","app.kubernetes.io/managed-by":"awx-operator","app.kubernetes.io/name":"postgres-15","app.kubernetes.io/part-of":"awx"}}}'
creationTimestamp: "2024-03-27T10:37:07Z"
labels:
app.kubernetes.io/component: database
app.kubernetes.io/instance: postgres-15-awx
app.kubernetes.io/managed-by: awx-operator
app.kubernetes.io/name: postgres-15
app.kubernetes.io/operator-version: 2.14.0
app.kubernetes.io/part-of: awx
name: awx-postgres-15
namespace: awx
ownerReferences:
- apiVersion: awx.ansible.com/v1beta1
kind: AWX
name: awx
uid: 75ef1d4c-61c0-45d1-ac07-e65de9559f60
resourceVersion: "16272777"
uid: 43d0cd15-5ad6-4e33-b2ac-db7de0e1f9a8
spec:
clusterIP: None
clusterIPs:
- None
internalTrafficPolicy: Cluster
ipFamilies:
- IPv4
ipFamilyPolicy: SingleStack
ports:
- port: 5432
protocol: TCP
targetPort: 5432
selector:
app.kubernetes.io/component: database
app.kubernetes.io/instance: postgres-15-awx
app.kubernetes.io/managed-by: awx-operator
app.kubernetes.io/name: postgres-15
app.kubernetes.io/part-of: awx
sessionAffinity: None
type: ClusterIP
status:
loadBalancer: {}
- apiVersion: v1
kind: Service
metadata:
annotations:
kubectl.kubernetes.io/last-applied-configuration: '{"apiVersion":"v1","kind":"Service","metadata":{"labels":{"app.kubernetes.io/component":"awx","app.kubernetes.io/managed-by":"awx-operator","app.kubernetes.io/operator-version":"2.14.0","app.kubernetes.io/part-of":"awx"},"name":"awx-service","namespace":"awx"},"spec":{"ports":[{"name":"http","port":80,"protocol":"TCP","targetPort":8052}],"selector":{"app.kubernetes.io/component":"awx","app.kubernetes.io/managed-by":"awx-operator","app.kubernetes.io/name":"awx-web"},"type":"NodePort"}}'
creationTimestamp: "2024-03-27T10:37:30Z"
labels:
app.kubernetes.io/component: awx
app.kubernetes.io/managed-by: awx-operator
app.kubernetes.io/operator-version: 2.14.0
app.kubernetes.io/part-of: awx
name: awx-service
namespace: awx
ownerReferences:
- apiVersion: awx.ansible.com/v1beta1
kind: AWX
name: awx
uid: 75ef1d4c-61c0-45d1-ac07-e65de9559f60
resourceVersion: "16274386"
uid: c175153b-b6b2-4fc2-ac6f-6bed8e0cdb53
spec:
clusterIP: 10.x.x.x
clusterIPs:
- 10.x.x.x
externalTrafficPolicy: Cluster
internalTrafficPolicy: Cluster
ipFamilies:
- IPv4
ipFamilyPolicy: SingleStack
ports:
- name: http
nodePort: 32363
port: 80
protocol: TCP
targetPort: 8052
selector:
app.kubernetes.io/component: awx
app.kubernetes.io/managed-by: awx-operator
app.kubernetes.io/name: awx-web
sessionAffinity: None
type: NodePort
status:
loadBalancer: {}
- apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
kubectl.kubernetes.io/last-applied-configuration: '{"apiVersion":"networking.k8s.io/v1","kind":"Ingress","metadata":{"annotations":{"nginx.ingress.kubernetes.io/ssl-passthrough":"true"},"name":"mesh-ingress-1","namespace":"awx"},"spec":{"ingressClassName":"nginx","rules":[{"host":"mesh-ingress-1.ansible.internal","http":{"paths":[{"backend":{"service":{"name":"mesh-ingress-1","port":{"number":27199}}},"path":"/","pathType":"Prefix"}]}}]}}'
nginx.ingress.kubernetes.io/ssl-passthrough: "true"
creationTimestamp: "2024-04-16T06:28:53Z"
generation: 1
name: mesh-ingress-1
namespace: awx
ownerReferences:
- apiVersion: awx.ansible.com/v1alpha1
kind: AWXMeshIngress
name: mesh-ingress-1
uid: 7d80e166-4a03-41da-8c6e-1705d42a8860
resourceVersion: "23043986"
uid: 8276ccfa-babb-40e3-b14f-9beed553f83c
spec:
ingressClassName: nginx
rules:
- host: mesh-ingress-1.ansible.internal
http:
paths:
- backend:
service:
name: mesh-ingress-1
port:
number: 27199
path: /
pathType: Prefix
status:
loadBalancer: {}
kind: List
metadata:
resourceVersion: ""