v0.0.9
This commit is contained in:
@@ -1,104 +1,15 @@
|
||||
---
|
||||
# tasks file for ericomeehan.cluster-gateway
|
||||
- name: Create persistent volume for gateway
|
||||
k8s:
|
||||
state: present
|
||||
definition:
|
||||
apiVersion: v1
|
||||
kind: PersistentVolume
|
||||
metadata:
|
||||
name: gateway-pv
|
||||
spec:
|
||||
capacity:
|
||||
storage: {{ gateway_storage }}
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
persistentVolumeReclaimPolicy: Retain
|
||||
storageClassName: standard
|
||||
hostPath:
|
||||
path: /mnt/data/pv.gateway.eom.dev
|
||||
nodeAffinity:
|
||||
required:
|
||||
nodeSelectorTerms:
|
||||
- matchExpressions:
|
||||
- key: kubernetes.io/hostname
|
||||
operator: In
|
||||
values:
|
||||
- alpha-worker-0
|
||||
- name: Download latest Debian netinstall ISO
|
||||
get_url:
|
||||
url: {{ debian_image_url }}
|
||||
dest: /data/debian-netinst.iso
|
||||
|
||||
- name: Create persistent volume claim for gateway
|
||||
k8s:
|
||||
state: present
|
||||
definition:
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: pv-claim.gateway.eom.dev
|
||||
namespace: {{ namespace }}
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: {{ gateway_storage }}
|
||||
storageClassName: standard
|
||||
volumeName: pv.gateway.eom.dev
|
||||
- name: Create virtual machine disk image
|
||||
command: qemu-img create -f qcow2 /data/store-0/cluster-gateway.qcow2 4G
|
||||
|
||||
- name: Create a deployment
|
||||
k8s:
|
||||
definition:
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: deployment.gateway.eom.dev
|
||||
namespace: {{ namespace }}
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: eom.dev
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: eom.dev
|
||||
spec:
|
||||
containers:
|
||||
- name: gateway
|
||||
image: gateway
|
||||
volumeMounts:
|
||||
- name: pv.gateway.eom.dev
|
||||
mountPath: /usr/src/gateway/files
|
||||
ports:
|
||||
- containerPort: 3000
|
||||
env:
|
||||
- name: REDMINE_DB_MYSQL
|
||||
value: "mariadb"
|
||||
- name: REDMINE_DB_PORT
|
||||
value: "8086"
|
||||
- name: REDMINE_DB_DATABASE
|
||||
value: "gateway"
|
||||
- name: REDMINE_DB_USERNAME
|
||||
value: "gateway"
|
||||
- name: REDMINE_DB_PASSWORD
|
||||
value: "{{ gateway_db_password }}"
|
||||
volumes:
|
||||
- name: pv.gateway.eom.dev
|
||||
persistentVolumeClaim:
|
||||
claimName: pv-claim.gateway.eom.dev
|
||||
- name: Install Debian on the VM
|
||||
command: virt-install --name cluster-gateway --ram 1024 --vcpus 1 --os-type linux --os-variant debian12 --disk /data/store-0/cluster-gateway.qcow2 --network bridge:virbr0 --graphics none --console pty,target_type=serial --extra-args 'console=ttyS0,115200n8 serial' --cdrom /data/debian-netinst.iso
|
||||
|
||||
- name: Expose deployment as a service
|
||||
k8s:
|
||||
definition:
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: service.gateway.eom.dev
|
||||
namespace: {{ namespace }}
|
||||
spec:
|
||||
selector:
|
||||
app: eom.dev
|
||||
ports:
|
||||
- port: 3000
|
||||
protocol: TCP
|
||||
name: gateway-port-3000
|
||||
type: ClusterIP
|
||||
- name: Start the cluster gateway
|
||||
command: virsh autostart cluster-gateway
|
||||
|
||||
Reference in New Issue
Block a user