Skip to content

Commit 37a57a7

Browse files
committed
cluster up support for N-1 clusters
1 parent d48b07a commit 37a57a7

File tree

5 files changed

+506
-75
lines changed

5 files changed

+506
-75
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
apiVersion: template.openshift.io/v1
2+
kind: Template
3+
metadata:
4+
name: template-service-broker-apiserver
5+
parameters:
6+
- name: IMAGE
7+
value: openshift/origin:latest
8+
- name: NAMESPACE
9+
value: openshift-template-service-broker
10+
- name: LOGLEVEL
11+
value: "0"
12+
- name: API_SERVER_CONFIG
13+
value: |
14+
kind: TemplateServiceBrokerConfig
15+
apiVersion: config.templateservicebroker.openshift.io/v1
16+
templateNamespaces:
17+
- openshift
18+
- name: NODE_SELECTOR
19+
value: "{}"
20+
objects:
21+
22+
# to create the tsb server
23+
- apiVersion: extensions/v1beta1
24+
kind: DaemonSet
25+
metadata:
26+
namespace: ${NAMESPACE}
27+
name: apiserver
28+
labels:
29+
apiserver: "true"
30+
spec:
31+
template:
32+
metadata:
33+
name: apiserver
34+
labels:
35+
apiserver: "true"
36+
spec:
37+
serviceAccountName: apiserver
38+
containers:
39+
- name: c
40+
image: ${IMAGE}
41+
imagePullPolicy: IfNotPresent
42+
command:
43+
- "/usr/bin/openshift"
44+
- "start"
45+
- "template-service-broker"
46+
- "--secure-port=8443"
47+
- "--audit-log-path=-"
48+
- "--tls-cert-file=/var/serving-cert/tls.crt"
49+
- "--tls-private-key-file=/var/serving-cert/tls.key"
50+
- "--loglevel=${LOGLEVEL}"
51+
- "--config=/var/apiserver-config/apiserver-config.yaml"
52+
ports:
53+
- containerPort: 8443
54+
volumeMounts:
55+
- mountPath: /var/serving-cert
56+
name: serving-cert
57+
- mountPath: /var/apiserver-config
58+
name: apiserver-config
59+
readinessProbe:
60+
httpGet:
61+
path: /healthz
62+
port: 8443
63+
scheme: HTTPS
64+
nodeSelector: "${{NODE_SELECTOR}}"
65+
volumes:
66+
- name: serving-cert
67+
secret:
68+
defaultMode: 420
69+
secretName: apiserver-serving-cert
70+
- name: apiserver-config
71+
configMap:
72+
defaultMode: 420
73+
name: apiserver-config
74+
75+
# to create the config for the TSB
76+
- apiVersion: v1
77+
kind: ConfigMap
78+
metadata:
79+
namespace: ${NAMESPACE}
80+
name: apiserver-config
81+
data:
82+
apiserver-config.yaml: ${API_SERVER_CONFIG}
83+
84+
# to be able to assign powers to the process
85+
- apiVersion: v1
86+
kind: ServiceAccount
87+
metadata:
88+
namespace: ${NAMESPACE}
89+
name: apiserver
90+
91+
# to be able to expose TSB inside the cluster
92+
- apiVersion: v1
93+
kind: Service
94+
metadata:
95+
namespace: ${NAMESPACE}
96+
name: apiserver
97+
annotations:
98+
service.alpha.openshift.io/serving-cert-secret-name: apiserver-serving-cert
99+
spec:
100+
selector:
101+
apiserver: "true"
102+
ports:
103+
- name: https
104+
port: 443
105+
targetPort: 8443
106+
107+
# This service account will be granted permission to call the TSB.
108+
# The token for this SA will be provided to the service catalog for
109+
# use when calling the TSB.
110+
- apiVersion: v1
111+
kind: ServiceAccount
112+
metadata:
113+
namespace: ${NAMESPACE}
114+
name: templateservicebroker-client
115+
116+
# This secret will be populated with a copy of the templateservicebroker-client SA's
117+
# auth token. Since this secret has a static name, it can be referenced more
118+
# easily than the auto-generated secret for the service account.
119+
- apiVersion: v1
120+
kind: Secret
121+
metadata:
122+
namespace: ${NAMESPACE}
123+
name: templateservicebroker-client
124+
annotations:
125+
kubernetes.io/service-account.name: templateservicebroker-client
126+
type: kubernetes.io/service-account-token

Diff for: pkg/oc/bootstrap/bindata.go

+148
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)