...
1# /slow_cooker/slow_cooker --http-> gateway --grpc-> t1
2# --grpc-> t2 always-error
3# --http-> t3
4# --http-> t4 tap-disabled
5#
6
7### t1 terminates gRPC requests
8---
9apiVersion: apps/v1
10kind: Deployment
11metadata:
12 name: t1
13spec:
14 replicas: 1
15 selector:
16 matchLabels:
17 app: t1
18 template:
19 metadata:
20 labels:
21 app: t1
22 spec:
23 containers:
24 - name: t1
25 image: buoyantio/bb:v0.0.6
26 args:
27 - terminus
28 - "--grpc-server-port=9090"
29 - "--response-text=t1"
30 ports:
31 - containerPort: 9090
32---
33apiVersion: v1
34kind: Service
35metadata:
36 name: t1-svc
37spec:
38 selector:
39 app: t1
40 ports:
41 - name: grpc
42 port: 9090
43 targetPort: 9090
44
45### t2 terminates gRPC requests and always fails
46---
47apiVersion: apps/v1
48kind: Deployment
49metadata:
50 name: t2
51spec:
52 replicas: 1
53 selector:
54 matchLabels:
55 app: t2
56 template:
57 metadata:
58 labels:
59 app: t2
60 spec:
61 containers:
62 - name: t2
63 image: buoyantio/bb:v0.0.6
64 args:
65 - terminus
66 - "--grpc-server-port=9090"
67 - "--response-text=t2"
68 - "--percent-failure=100"
69 ports:
70 - containerPort: 9090
71---
72apiVersion: v1
73kind: Service
74metadata:
75 name: t2-svc
76spec:
77 selector:
78 app: t2
79 ports:
80 - name: grpc
81 port: 9090
82 targetPort: 9090
83
84# t3 terminates HTTP/1.1 requests
85---
86apiVersion: apps/v1
87kind: Deployment
88metadata:
89 name: t3
90spec:
91 replicas: 1
92 selector:
93 matchLabels:
94 app: t3
95 template:
96 metadata:
97 labels:
98 app: t3
99 spec:
100 containers:
101 - name: t3
102 image: buoyantio/bb:v0.0.6
103 args:
104 - terminus
105 - "--h1-server-port=8080"
106 - "--response-text=t3"
107 ports:
108 - containerPort: 8080
109---
110apiVersion: v1
111kind: Service
112metadata:
113 name: t3-svc
114spec:
115 selector:
116 app: t3
117 ports:
118 - name: http
119 port: 8080
120 targetPort: 8080
121
122# t4 terminates HTTP/1.1 requests, but tap is disabled
123---
124apiVersion: apps/v1
125kind: Deployment
126metadata:
127 name: t4
128spec:
129 replicas: 1
130 selector:
131 matchLabels:
132 app: t4
133 template:
134 metadata:
135 annotations:
136 viz.linkerd.io/disable-tap: "true"
137 labels:
138 app: t4
139 spec:
140 containers:
141 - name: t4
142 image: buoyantio/bb:v0.0.6
143 args:
144 - terminus
145 - "--h1-server-port=8080"
146 - "--response-text=t4"
147 ports:
148 - containerPort: 8080
149
150---
151apiVersion: v1
152kind: Service
153metadata:
154 name: t4-svc
155spec:
156 selector:
157 app: t4
158 ports:
159 - name: http
160 port: 8080
161
162### gateway broadcasts requests to t1, t2, t3 and t4
163---
164apiVersion: apps/v1
165kind: Deployment
166metadata:
167 name: gateway
168spec:
169 replicas: 1
170 selector:
171 matchLabels:
172 app: gateway
173 template:
174 metadata:
175 labels:
176 app: gateway
177 spec:
178 containers:
179 - name: gateway
180 image: buoyantio/bb:v0.0.6
181 args:
182 - broadcast-channel
183 - "--h1-server-port=8080"
184 - "--grpc-downstream-server=t1-svc:9090"
185 - "--grpc-downstream-server=t2-svc:9090"
186 - "--h1-downstream-server=http://t3-svc:8080"
187 - "--h1-downstream-server=http://t4-svc:8080"
188 ports:
189 - containerPort: 8080
190---
191apiVersion: v1
192kind: Service
193metadata:
194 name: gateway-svc
195spec:
196 selector:
197 app: gateway
198 ports:
199 - name: http
200 port: 8080
201 targetPort: 8080
202
203### slow-cooker sends requests to the gateway
204---
205apiVersion: batch/v1
206kind: Job
207metadata:
208 name: slow-cooker
209spec:
210 template:
211 metadata:
212 labels:
213 app: slow-cooker
214 spec:
215 containers:
216 - name: slow-cooker
217 image: buoyantio/slow_cooker:1.3.0
218 command:
219 - "/bin/sh"
220 args:
221 - "-c"
222 - |
223 sleep 15 # wait for pods to start
224 /slow_cooker/slow_cooker -metric-addr 0.0.0.0:9999 http://gateway-svc:8080
225 ports:
226 - containerPort: 9999
227 restartPolicy: OnFailure
228---
229apiVersion: v1
230kind: Service
231metadata:
232 name: slow-cooker
233spec:
234 selector:
235 app: slow-cooker
236 ports:
237 - name: metrics
238 port: 9999
239 targetPort: 9999
View as plain text