-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathloadbalancer.yml
167 lines (165 loc) · 2.5 KB
/
loadbalancer.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
# Changed the webui service to replace NodePort with LoadBalancer
# Using this requires the following command:
# minikube service webui -n coins
# This illustrates the LoadBalancer is itself outside of kubernetes
apiVersion: v1
kind: Namespace
metadata:
name: coins
labels:
name: coins
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: rng
labels:
name: rng
namespace: coins
spec:
replicas: 1
template:
metadata:
labels:
name: rng
spec:
containers:
- name: rng
image: nabrahams/rng:1.0
---
apiVersion: v1
kind: Service
metadata:
labels:
name: rng
name: rng
namespace: coins
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
name: rng
type: ClusterIP
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: hasher
labels:
name: hasher
namespace: coins
spec:
replicas: 1
template:
metadata:
labels:
name: hasher
spec:
containers:
- name: hasher
image: nabrahams/hasher:1.0
---
apiVersion: v1
kind: Service
metadata:
labels:
name: hasher
name: hasher
namespace: coins
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
name: hasher
type: ClusterIP
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: webui
labels:
name: webui
namespace: coins
spec:
replicas: 1
template:
metadata:
labels:
name: webui
spec:
containers:
- name: webui
image: nabrahams/webui:1.0
---
apiVersion: v1
kind: Service
metadata:
labels:
name: webui
name: webui
namespace: coins
spec:
ports:
- port: 80
protocol: TCP
targetPort: 80
selector:
name: webui
type: LoadBalancer
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: redis
labels:
name: redis
namespace: coins
spec:
replicas: 1
template:
metadata:
labels:
name: redis
spec:
containers:
- name: redis
image: redis
---
apiVersion: v1
kind: Service
metadata:
labels:
name: redis
name: redis
namespace: coins
spec:
ports:
- port: 6379
protocol: TCP
targetPort: 6379
selector:
name: redis
type: ClusterIP
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: worker
labels:
name: worker
namespace: coins
spec:
replicas: 1
template:
metadata:
labels:
name: worker
spec:
containers:
- name: worker
image: nabrahams/worker:1.0
---