sort of work but not app3
This commit is contained in:
parent
c9d7b397c2
commit
d5cbe8deb0
31
p2/Vagrantfile
vendored
31
p2/Vagrantfile
vendored
@ -1,5 +1,6 @@
|
|||||||
Vagrant.configure(2) do |config|
|
Vagrant.configure(2) do |config|
|
||||||
config.vm.box = "hashicorp/bionic64"
|
config.vm.box = "hashicorp/bionic64"
|
||||||
|
config.vm.network "forwarded_port", guest: 80, host: 80
|
||||||
config.vm.define "apommierS" do |control|
|
config.vm.define "apommierS" do |control|
|
||||||
control.vm.hostname = "apommierS"
|
control.vm.hostname = "apommierS"
|
||||||
control.vm.network "private_network", ip: "192.168.56.110"
|
control.vm.network "private_network", ip: "192.168.56.110"
|
||||||
@ -9,26 +10,18 @@ Vagrant.configure(2) do |config|
|
|||||||
v.cpus = 2
|
v.cpus = 2
|
||||||
end
|
end
|
||||||
control.vm.provision "shell", path: "./scripts/k3s-master.sh"
|
control.vm.provision "shell", path: "./scripts/k3s-master.sh"
|
||||||
end
|
# Deploy Kubernetes manifests
|
||||||
|
control.vm.provision "shell", inline: <<-SHELL
|
||||||
|
echo "Waiting for k3s to be ready..."
|
||||||
|
|
||||||
# config.vm.provision "shell", inline: ""
|
echo "Setting KUBECONFIG..."
|
||||||
# control.vm.provision "shell", path: REDACTED
|
export KUBECONFIG=/etc/rancher/k3s/k3s.yaml
|
||||||
# end
|
|
||||||
|
|
||||||
config.vm.define "apommierSW" do |control|
|
echo "Applying Kubernetes deployments..."
|
||||||
control.vm.hostname = "apommierSW"
|
kubectl apply -f /vagrant/confs/app1.yaml
|
||||||
control.vm.network "private_network", ip: "192.168.56.111"
|
kubectl apply -f /vagrant/confs/app2.yaml
|
||||||
control.vm.provider "virtualbox" do |v|
|
kubectl apply -f /vagrant/confs/app3.yaml
|
||||||
v.name = "apommierSW"
|
kubectl apply -f /vagrant/confs/ingress.yaml
|
||||||
v.memory = "2048"
|
SHELL
|
||||||
v.cpus = 2
|
|
||||||
end
|
end
|
||||||
control.vm.provision "shell", path: "./scripts/k3s-worker.sh"
|
|
||||||
end
|
|
||||||
|
|
||||||
# config.vm.provision "shell", inline: <<-SHELL
|
|
||||||
# [..]
|
|
||||||
# SHELL
|
|
||||||
# control.vm.provision "shell", path: REDACTED
|
|
||||||
# end
|
|
||||||
end
|
end
|
||||||
32
p2/confs/app1.yaml
Normal file
32
p2/confs/app1.yaml
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
# app1.yaml
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: app1
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: app1
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: app1
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: app1
|
||||||
|
image: containous/whoami
|
||||||
|
ports:
|
||||||
|
- containerPort: 80
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: app1
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
app: app1
|
||||||
|
ports:
|
||||||
|
- protocol: TCP
|
||||||
|
port: 80
|
||||||
|
targetPort: 80
|
||||||
32
p2/confs/app2.yaml
Normal file
32
p2/confs/app2.yaml
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
# app2.yaml
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: app2
|
||||||
|
spec:
|
||||||
|
replicas: 3
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: app2
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: app2
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: app2
|
||||||
|
image: containous/whoami
|
||||||
|
ports:
|
||||||
|
- containerPort: 80
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: app2
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
app: app2
|
||||||
|
ports:
|
||||||
|
- protocol: TCP
|
||||||
|
port: 80
|
||||||
|
targetPort: 80
|
||||||
32
p2/confs/app3.yaml
Normal file
32
p2/confs/app3.yaml
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
# app3.yaml
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: app3
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: app3
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: app3
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: app3
|
||||||
|
image: containous/whoami
|
||||||
|
ports:
|
||||||
|
- containerPort: 80
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: app3
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
app: app3
|
||||||
|
ports:
|
||||||
|
- protocol: TCP
|
||||||
|
port: 80
|
||||||
|
targetPort: 80
|
||||||
0
p2/confs/html/app_one.html
Normal file
0
p2/confs/html/app_one.html
Normal file
32
p2/confs/ingress.yaml
Normal file
32
p2/confs/ingress.yaml
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
# ingress.yaml
|
||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: app-ingress
|
||||||
|
spec:
|
||||||
|
defaultBackend:
|
||||||
|
service:
|
||||||
|
name: app3
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
|
rules:
|
||||||
|
- host: app1.com
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: app1
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
|
- host: app2.com
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: app2
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
0
p2/scripts/deploy.sh
Normal file
0
p2/scripts/deploy.sh
Normal file
11
p2/scripts/k3s-master.sh
Normal file
11
p2/scripts/k3s-master.sh
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
NODE_IP="192.168.56.110"
|
||||||
|
|
||||||
|
# Install K3s on the master node
|
||||||
|
curl -sfL https://get.k3s.io | sh -s - --node-ip=$NODE_IP
|
||||||
|
|
||||||
|
# Make sure kubectl is set up for the vagrant user
|
||||||
|
sudo mkdir -p /home/vagrant/.kube
|
||||||
|
sudo cp /etc/rancher/k3s/k3s.yaml /home/vagrant/.kube/config
|
||||||
|
sudo chown -R vagrant:vagrant /home/vagrant/.kube/config
|
||||||
Loading…
Reference in New Issue
Block a user