metal lb OK !

This commit is contained in:
Grégory Lebreton 2023-11-09 21:00:13 +01:00
parent a8de157052
commit 34154426a1
6 changed files with 1951 additions and 72 deletions

View File

@ -50,4 +50,17 @@ kubectl get svc
kubectl get all
```
### Load balancer
- Installation de metallb:
```bash
kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/v0.13.7/config/manifests/metallb-native.yaml
```
- Appliquer les derniers déploiments:
```bash
kubectl apply -f kubernetes/ipaddresspool.yml
kubectl apply -f kubernetes/l2advertisement.yml
```
>> http://localhost/devops

41
kubernetes/deployment.yml Normal file
View File

@ -0,0 +1,41 @@
---
apiVersion: apps/v1
kind: "Deployment"
metadata:
name: devops
namespace: default
labels:
app: devops
spec:
replicas: 3
selector:
matchLabels:
app: devops
template:
metadata:
labels:
app: devops
spec:
containers:
- name: devops
image: hashicorp/http-echo:0.2.3
args:
- "-text=Hello World! This is a Devops Kubernetes app"
---
apiVersion: v1
kind: Service
metadata:
labels:
app: devops
name: devops-lb
annotations:
service.beta.kubernetes.io/load-balancer-source-ip: "10.0.0.51"
spec:
ports:
- port: 80
protocol: TCP
targetPort: 5678
selector:
app: devops
type: LoadBalancer

View File

@ -1,72 +0,0 @@
---
apiVersion: apps/v1
kind: "Deployment"
metadata:
name: devops
namespace: default
labels:
app: devops
spec:
replicas: 3
selector:
matchLabels:
app: devops
template:
metadata:
labels:
app: devops
spec:
containers:
- name: devops
image: hashicorp/http-echo:0.2.3
args:
- "-text=Hello World! This is a Devops Kubernetes app"
---
kind: Service
apiVersion: v1
metadata:
name: devops-service
spec:
selector:
app: devops
ports:
- port: 5678
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: devops-ingress
# annotations:
# nginx.ingress.kubernetes.io/rewrite-target: /$1
spec:
rules:
# - host: k8s.exemple
- http:
paths:
- pathType: Prefix
path: /devops
backend:
service:
name: devops-service
port:
number: 5678
---
apiVersion: v1
kind: Service
metadata:
labels:
app: devops
name: nodeport
spec:
type: NodePort
selector:
app: devops
ports:
- port: 5678
protocol: TCP
targetPort: 5678

View File

@ -0,0 +1,8 @@
apiVersion: metallb.io/v1beta1
kind: IPAddressPool
metadata:
name: default-pool
namespace: metallb-system
spec:
addresses:
- 10.0.0.50-10.0.0.60

View File

@ -0,0 +1,8 @@
apiVersion: metallb.io/v1beta1
kind: L2Advertisement
metadata:
name: default
namespace: metallb-system
spec:
ipAddressPools:
- default-pool

1881
kubernetes/metal-lb.yml Normal file

File diff suppressed because it is too large Load Diff