mirror of
https://github.com/ansible/awx.git
synced 2026-01-16 04:10:44 -03:30
Add scalable cluster kubernetes support
This commit is contained in:
parent
6e9930a45f
commit
6a85fc38dd
@ -96,6 +96,12 @@
|
||||
path: "{{ kubernetes_base_path }}"
|
||||
state: directory
|
||||
|
||||
- name: Template Kubernetes AWX etcd2
|
||||
template:
|
||||
src: etcd.yml.j2
|
||||
dest: "{{ kubernetes_base_path }}/etcd.yml"
|
||||
mode: '0600'
|
||||
|
||||
- name: Template Kubernetes AWX Config
|
||||
template:
|
||||
src: configmap.yml.j2
|
||||
@ -108,6 +114,9 @@
|
||||
dest: "{{ kubernetes_base_path }}/deployment.yml"
|
||||
mode: '0600'
|
||||
|
||||
- name: Apply etcd deployment
|
||||
shell: "kubectl apply -f {{ kubernetes_base_path }}/etcd.yml"
|
||||
|
||||
- name: Apply Configmap
|
||||
shell: "kubectl apply -f {{ kubernetes_base_path }}/configmap.yml"
|
||||
|
||||
|
||||
@ -13,6 +13,8 @@ data:
|
||||
# Container environments don't like chroots
|
||||
AWX_PROOT_ENABLED = False
|
||||
|
||||
AWX_AUTO_DEPROVISION_INSTANCES = True
|
||||
|
||||
#Autoprovisioning should replace this
|
||||
CLUSTER_HOST_ID = socket.gethostname()
|
||||
SYSTEM_UUID = '00000000-0000-0000-0000-000000000000'
|
||||
|
||||
@ -41,18 +41,42 @@ spec:
|
||||
- name: AWX_ADMIN_PASSWORD
|
||||
value: {{ default_admin_password|default('password') }}
|
||||
- name: awx-rabbit
|
||||
image: rabbitmq:3
|
||||
image: ansible/awx_rabbitmq:latest
|
||||
imagePullPolicy: Always
|
||||
env:
|
||||
# For consupmption by rabbitmq-env.conf
|
||||
- name: MY_POD_IP
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: status.podIP
|
||||
- name: RABBITMQ_USE_LONGNAME
|
||||
value: "true"
|
||||
- name: ERLANG_COOKIE
|
||||
value: "test"
|
||||
- name: RABBITMQ_ERLANG_COOKIE
|
||||
value: secretb
|
||||
value: "secretb"
|
||||
- name: RABBITMQ_NODENAME
|
||||
value: rabbitmq
|
||||
value: "rabbit@$(MY_POD_IP)"
|
||||
- name: AUTOCLUSTER_TYPE
|
||||
value: "etcd"
|
||||
- name: AUTOCLUSTER_DELAY
|
||||
value: "60"
|
||||
- name: ETCD_HOST
|
||||
value: "etcd"
|
||||
- name: AUTOCLUSTER_CLEANUP
|
||||
value: "true"
|
||||
- name: CLEANUP_WARN_ONLY
|
||||
value: "false"
|
||||
- name: CLEANUP_INTERVAL
|
||||
value: "30"
|
||||
- name: RABBITMQ_DEFAULT_USER
|
||||
value: awx
|
||||
- name: RABBITMQ_DEFAULT_PASS
|
||||
value: abcdefg
|
||||
- name: RABBITMQ_DEFAULT_VHOST
|
||||
value: awx
|
||||
- name: RABBITMQ_CONFIG_FILE
|
||||
value: /etc/rabbitmq/rabbitmq
|
||||
- name: awx-memcached
|
||||
image: memcached
|
||||
volumes:
|
||||
|
||||
44
installer/kubernetes/templates/etcd.yml.j2
Normal file
44
installer/kubernetes/templates/etcd.yml.j2
Normal file
@ -0,0 +1,44 @@
|
||||
---
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: etcd
|
||||
namespace: {{ awx_kubernetes_project }}
|
||||
spec:
|
||||
replicas: 1
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
name: awx-etcd2
|
||||
service: etcd
|
||||
spec:
|
||||
containers:
|
||||
- name: etcd
|
||||
image: elcolio/etcd:latest
|
||||
ports:
|
||||
- containerPort: 4001
|
||||
volumeMounts:
|
||||
- mountPath: /data
|
||||
name: datadir
|
||||
volumes:
|
||||
- name: datadir
|
||||
emptyDir: {}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
annotations:
|
||||
labels:
|
||||
name: awx-etcd
|
||||
name: etcd
|
||||
namespace: {{ awx_kubernetes_project }}
|
||||
spec:
|
||||
ports:
|
||||
- name: etcd
|
||||
port: 4001
|
||||
protocol: TCP
|
||||
targetPort: 4001
|
||||
selector:
|
||||
name: awx-etcd2
|
||||
sessionAffinity: None
|
||||
type: ClusterIP
|
||||
Loading…
x
Reference in New Issue
Block a user