New playbooks for k8s service and examples
- kubedns moved to playbooks dir - new ansible playbooks added for kubedash and kube-dashboard - examples for k8s deployments and services added
This commit is contained in:
parent
9c5c0f2697
commit
39dd4c1aaa
9 changed files with 77 additions and 3 deletions
2
Vagrantfile
vendored
2
Vagrantfile
vendored
|
@ -92,7 +92,7 @@ Vagrant.configure("2") do |config|
|
|||
if master
|
||||
config.vm.provision "deploy-k8s", type: "file", source: "deploy-k8s.kargo.sh", destination: "~/deploy-k8s.kargo.sh"
|
||||
config.vm.provision "custom.yaml", type: "file", source: "custom.yaml", destination: "~/custom.yaml"
|
||||
config.vm.provision "kubedns.yaml", type: "file", source: "kubedns.yaml", destination: "~/kubedns.yaml"
|
||||
config.vm.provision "playbooks", type: "file", source: "playbooks", destination: "~/playbooks"
|
||||
config.vm.provision "nodes", type: "file", source: "nodes", destination: "~/nodes"
|
||||
config.vm.provision "bootstrap", type: "shell", path: "bootstrap-master.sh"
|
||||
else
|
||||
|
|
|
@ -16,7 +16,7 @@ sudo sh -c 'cd /root/kargo-cli && python setup.py install'
|
|||
# k8s deploy script and configs
|
||||
sudo sh -c 'cp -a ~vagrant/deploy-k8s.kargo.sh /root/ && chmod 755 /root/deploy-k8s.kargo.sh'
|
||||
sudo cp -a ~vagrant/custom.yaml /root/custom.yaml
|
||||
sudo cp -a ~vagrant/kubedns.yaml /root/kubedns.yaml
|
||||
sudo cp -a ~vagrant/playbooks /root/playbooks
|
||||
|
||||
# SSH keys and config
|
||||
sudo rm -rf /root/.ssh
|
||||
|
|
|
@ -22,5 +22,5 @@ deploy_res=$?
|
|||
|
||||
if [ "$deploy_res" -eq "0" ]; then
|
||||
echo "Setting up kubedns..."
|
||||
ansible-playbook -i $INVENTORY kubedns.yaml
|
||||
ansible-playbook -i $INVENTORY playbooks/kubedns.yaml
|
||||
fi
|
||||
|
|
18
examples/kubernetes/external-nginx/README.md
Normal file
18
examples/kubernetes/external-nginx/README.md
Normal file
|
@ -0,0 +1,18 @@
|
|||
Nginx example with external IPs
|
||||
===============================
|
||||
|
||||
* Edit `nginx-frontend.yaml` and update `externalIPs` to the list of external IPs of your k8s minions
|
||||
|
||||
* Deploy:
|
||||
|
||||
```bash
|
||||
kubectl create -f nginx-backends.yaml
|
||||
kubectl create -f nginx-frontend.yaml
|
||||
```
|
||||
|
||||
* Check:
|
||||
|
||||
```bash
|
||||
curl $ANY_MINION_EXTERNAL_IP
|
||||
```
|
||||
|
24
examples/kubernetes/external-nginx/nginx-backends.yaml
Normal file
24
examples/kubernetes/external-nginx/nginx-backends.yaml
Normal file
|
@ -0,0 +1,24 @@
|
|||
apiVersion: extensions/v1beta1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: nginx-backend
|
||||
spec:
|
||||
replicas: 3
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: nginx-backend
|
||||
tier: backend
|
||||
spec:
|
||||
containers:
|
||||
- name: nginx
|
||||
image: nginx
|
||||
resources:
|
||||
requests:
|
||||
cpu: 100m
|
||||
memory: 100Mi
|
||||
env:
|
||||
- name: GET_HOSTS_FROM
|
||||
value: dns
|
||||
ports:
|
||||
- containerPort: 80
|
22
examples/kubernetes/external-nginx/nginx-frontend.yaml
Normal file
22
examples/kubernetes/external-nginx/nginx-frontend.yaml
Normal file
|
@ -0,0 +1,22 @@
|
|||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: nginx-frontend
|
||||
labels:
|
||||
app: nginx-frontend
|
||||
tier: frontend
|
||||
spec:
|
||||
externalIPs:
|
||||
- 10.210.0.12
|
||||
- 10.210.0.13
|
||||
- 10.210.0.14
|
||||
- 10.210.0.15
|
||||
- 10.210.0.16
|
||||
- 10.210.0.17
|
||||
ports:
|
||||
- name: http
|
||||
port: 80
|
||||
protocol: TCP
|
||||
targetPort: 80
|
||||
selector:
|
||||
app: nginx-backend
|
5
playbooks/kubedash.yaml
Normal file
5
playbooks/kubedash.yaml
Normal file
|
@ -0,0 +1,5 @@
|
|||
- hosts: kube-master
|
||||
tasks:
|
||||
- name: setup-kubedns
|
||||
shell: kpm deploy kube-system/kubedash --namespace=kube-system
|
||||
run_once: true
|
5
playbooks/kubedashboard.yaml
Normal file
5
playbooks/kubedashboard.yaml
Normal file
|
@ -0,0 +1,5 @@
|
|||
- hosts: kube-master
|
||||
tasks:
|
||||
- name: setup-kubedns
|
||||
shell: kpm deploy kube-system/kubernetes-dashboard --namespace=kube-system
|
||||
run_once: true
|
Loading…
Reference in a new issue