File tree Expand file tree Collapse file tree 3 files changed +140
-0
lines changed Expand file tree Collapse file tree 3 files changed +140
-0
lines changed Original file line number Diff line number Diff line change
1
+ apiVersion : v1
2
+ kind : Service
3
+ metadata :
4
+ name : ver1
5
+ spec :
6
+ selector :
7
+ app : ver1
8
+ ports :
9
+ - protocol : TCP
10
+ port : 80
11
+ targetPort : 80
12
+ selector :
13
+ app : ver1
14
+ ---
15
+ apiVersion : v1
16
+ kind : Service
17
+ metadata :
18
+ name : ver2
19
+ spec :
20
+ selector :
21
+ app : ver2
22
+ ports :
23
+ - protocol : TCP
24
+ port : 80
25
+ targetPort : 80
26
+ selector :
27
+ app : ver2
28
+ ---
29
+ apiVersion : apps/v1
30
+ kind : Deployment
31
+ metadata :
32
+ name : ver1
33
+ spec :
34
+ selector :
35
+ matchLabels :
36
+ app : ver1
37
+ template :
38
+ metadata :
39
+ labels :
40
+ app : ver1
41
+ spec :
42
+ containers :
43
+ - name : ver1
44
+ image : vuevska/homework8-image:1.0
45
+ ports :
46
+ - containerPort : 80
47
+ ---
48
+ apiVersion : apps/v1
49
+ kind : Deployment
50
+ metadata :
51
+ name : ver2
52
+ spec :
53
+ selector :
54
+ matchLabels :
55
+ app : ver2
56
+ template :
57
+ metadata :
58
+ labels :
59
+ app : ver2
60
+ spec :
61
+ containers :
62
+ - name : ver2
63
+ image : vuevska/homework8-image:2.0
64
+ ports :
65
+ - containerPort : 80
Original file line number Diff line number Diff line change
1
+ # create a cluster
2
+ k3d cluster create kube4 -p " 80:80@loadbalancer" -a 1 -s 1
3
+
4
+ # add 127.26.0.2 ver1.203007.com & 127.26.0.4 ver2.203007.com
5
+ # into the hosts file in /etc
6
+
7
+ # deploy 2 pods, and 2 services for the 2 versions of the images
8
+ kubectl apply -f app.yml
9
+
10
+ # deploy the ingress manifest
11
+ kubectl apply -f k3ing-complex.yml
12
+
13
+ # delete the cluster
14
+ k3d cluster delete kube4
Original file line number Diff line number Diff line change
1
+ apiVersion : traefik.containo.us/v1alpha1
2
+ kind : Middleware
3
+ metadata :
4
+ name : mcu-all
5
+ spec :
6
+ stripPrefix :
7
+ forceSlash : false
8
+ prefixes :
9
+ - /ver1
10
+ - /ver2
11
+ ---
12
+ apiVersion : networking.k8s.io/v1
13
+ kind : Ingress
14
+ metadata :
15
+ name : ingress
16
+ annotations :
17
+ ingress.kubernetes.io/ssl-redirect : ' false'
18
+ traefik.ingress.kubernetes.io/router.middlewares : default-mcu-all@kubernetescrd
19
+ spec :
20
+ rules :
21
+ - host : localhost
22
+ http :
23
+ paths :
24
+ - path : /ver1
25
+ pathType : Prefix
26
+ backend :
27
+ service :
28
+ name : ver1
29
+ port :
30
+ number : 80
31
+ - host : localhost
32
+ http :
33
+ paths :
34
+ - path : /ver2
35
+ pathType : Prefix
36
+ backend :
37
+ service :
38
+ name : ver2
39
+ port :
40
+ number : 80
41
+ - host : ver1.203007.com
42
+ http :
43
+ paths :
44
+ - path : /
45
+ pathType : Prefix
46
+ backend :
47
+ service :
48
+ name : ver1
49
+ port :
50
+ number : 80
51
+ - host : ver2.203007.com
52
+ http :
53
+ paths :
54
+ - path : /
55
+ pathType : Prefix
56
+ backend :
57
+ service :
58
+ name : ver2
59
+ port :
60
+ number : 80
61
+
You can’t perform that action at this time.
0 commit comments