-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdeployment.yaml
144 lines (144 loc) · 4.11 KB
/
deployment.yaml
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
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
name: kafkatopics.kafkaopscontroller.mattfanto.github.com
spec:
group: kafkaopscontroller.mattfanto.github.com
versions:
- name: v1alpha1
served: true
storage: true
schema:
# schema used for validation
openAPIV3Schema:
type: object
properties:
spec:
type: object
properties:
topicName:
type: string
replicas:
type: integer
minimum: 1
partitions:
type: integer
minimum: 1
status:
type: object
properties:
statusCode:
type: string
replicas:
type: integer
partitions:
type: integer
conditions:
description: List of status conditions to indicate the status of a
kafka topic compared to the specification above.
items:
description: All status condition information
properties:
lastTransitionTime:
description: LastTransitionTime is the timestamp corresponding
to the last status change of this condition.
format: date-time
type: string
message:
description: Message is a human readable description of the
details of the last transition, complementing reason.
type: string
reason:
description: Reason is a brief machine readable explanation
for the condition's last transition.
type: string
status:
description: Status of the condition, one of (`True`, `False`,
`Unknown`).
enum:
- "True"
- "False"
- Unknown
type: string
type:
description: Type of the condition, known values are (`Ready`,
`InvalidRequest`).
type: string
required:
- status
- type
type: object
type: array
names:
kind: KafkaTopic
plural: kafkatopics
scope: Namespaced
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: kafkaops-controller-manager-rolebinding
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: kafkaops-controller-manager-role
subjects:
- kind: ServiceAccount
name: default
namespace: kafkaops
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: kafkaops-controller-manager-role
rules:
- apiGroups:
- ""
resources:
- events
verbs:
- create
- patch
- apiGroups:
- kafkaopscontroller.mattfanto.github.com
resources:
- kafkatopics
verbs:
- create
- delete
- get
- list
- patch
- update
- watch
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: kafkaops-controller
spec:
replicas: 1
selector:
matchLabels:
control-plane: controller-manager
template:
metadata:
labels:
control-plane: controller-manager
spec:
containers:
- image: controller:latest
imagePullPolicy: IfNotPresent
name: kafkaops-controller
args:
- -bootstrap-servers=kafka-0.kafka-headless.kafkaops.svc.cluster.local:9092
command:
- /kafkaops-controller
resources:
limits:
cpu: 100m
memory: 30Mi
requests:
cpu: 100m
memory: 20Mi
terminationGracePeriodSeconds: 10