mirror of https://github.com/k3s-io/k3s
Put initContainers to PodSpec for some statefulset examples.
parent
a481a5bca9
commit
49c8ed802a
|
@ -77,7 +77,7 @@ spec:
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
app: cockroachdb
|
app: cockroachdb
|
||||||
annotations:
|
spec:
|
||||||
# Init containers are run only once in the lifetime of a pod, before
|
# Init containers are run only once in the lifetime of a pod, before
|
||||||
# it's started up for the first time. It has to exit successfully
|
# it's started up for the first time. It has to exit successfully
|
||||||
# before the pod's main containers are allowed to start.
|
# before the pod's main containers are allowed to start.
|
||||||
|
@ -88,35 +88,22 @@ spec:
|
||||||
# has to decide what command-line flags to use when starting CockroachDB.
|
# has to decide what command-line flags to use when starting CockroachDB.
|
||||||
# This only matters when a pod's persistent volume is empty - if it has
|
# This only matters when a pod's persistent volume is empty - if it has
|
||||||
# data from a previous execution, that data will always be used.
|
# data from a previous execution, that data will always be used.
|
||||||
pod.alpha.kubernetes.io/init-containers: '[
|
initContainers:
|
||||||
{
|
- name: bootstrap
|
||||||
"name": "bootstrap",
|
image: cockroachdb/cockroach-k8s-init:0.1
|
||||||
"image": "cockroachdb/cockroach-k8s-init:0.1",
|
imagePullPolicy: IfNotPresent
|
||||||
"imagePullPolicy": "IfNotPresent",
|
args:
|
||||||
"args": [
|
- "-on-start=/on-start.sh"
|
||||||
"-on-start=/on-start.sh",
|
- "-service=cockroachdb"
|
||||||
"-service=cockroachdb"
|
env:
|
||||||
],
|
- name: POD_NAMESPACE
|
||||||
"env": [
|
valueFrom:
|
||||||
{
|
fieldRef:
|
||||||
"name": "POD_NAMESPACE",
|
apiVersion: v1
|
||||||
"valueFrom": {
|
fieldPath: metadata.namespace
|
||||||
"fieldRef": {
|
volumeMounts:
|
||||||
"apiVersion": "v1",
|
- name: datadir
|
||||||
"fieldPath": "metadata.namespace"
|
mountPath: "/cockroach/cockroach-data"
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"volumeMounts": [
|
|
||||||
{
|
|
||||||
"name": "datadir",
|
|
||||||
"mountPath": "/cockroach/cockroach-data"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]'
|
|
||||||
spec:
|
|
||||||
affinity:
|
affinity:
|
||||||
podAntiAffinity:
|
podAntiAffinity:
|
||||||
preferredDuringSchedulingIgnoredDuringExecution:
|
preferredDuringSchedulingIgnoredDuringExecution:
|
||||||
|
|
|
@ -9,7 +9,7 @@ spec:
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
app: cockroachdb
|
app: cockroachdb
|
||||||
annotations:
|
spec:
|
||||||
# Init containers are run only once in the lifetime of a pod, before
|
# Init containers are run only once in the lifetime of a pod, before
|
||||||
# it's started up for the first time. It has to exit successfully
|
# it's started up for the first time. It has to exit successfully
|
||||||
# before the pod's main containers are allowed to start.
|
# before the pod's main containers are allowed to start.
|
||||||
|
@ -20,34 +20,21 @@ spec:
|
||||||
# has to decide what command-line flags to use when starting CockroachDB.
|
# has to decide what command-line flags to use when starting CockroachDB.
|
||||||
# This only matters when a pod's persistent volume is empty - if it has
|
# This only matters when a pod's persistent volume is empty - if it has
|
||||||
# data from a previous execution, that data will always be used.
|
# data from a previous execution, that data will always be used.
|
||||||
pod.alpha.kubernetes.io/init-containers: '[
|
initContainers:
|
||||||
{
|
- name: bootstrap
|
||||||
"name": "bootstrap",
|
image: cockroachdb/cockroach-k8s-init:0.1
|
||||||
"image": "cockroachdb/cockroach-k8s-init:0.1",
|
args:
|
||||||
"args": [
|
- "-on-start=/on-start.sh"
|
||||||
"-on-start=/on-start.sh",
|
- "-service=cockroachdb"
|
||||||
"-service=cockroachdb"
|
env:
|
||||||
],
|
- name: POD_NAMESPACE
|
||||||
"env": [
|
valueFrom:
|
||||||
{
|
fieldRef:
|
||||||
"name": "POD_NAMESPACE",
|
apiVersion: v1
|
||||||
"valueFrom": {
|
fieldPath: metadata.namespace
|
||||||
"fieldRef": {
|
volumeMounts:
|
||||||
"apiVersion": "v1",
|
- name: datadir
|
||||||
"fieldPath": "metadata.namespace"
|
mountPath: "/cockroach/cockroach-data"
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"volumeMounts": [
|
|
||||||
{
|
|
||||||
"name": "datadir",
|
|
||||||
"mountPath": "/cockroach/cockroach-data"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]'
|
|
||||||
spec:
|
|
||||||
containers:
|
containers:
|
||||||
- name: cockroachdb
|
- name: cockroachdb
|
||||||
# Runs the master branch. Not recommended for production, but since
|
# Runs the master branch. Not recommended for production, but since
|
||||||
|
|
|
@ -9,53 +9,36 @@ spec:
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
app: mysql
|
app: mysql
|
||||||
annotations:
|
|
||||||
pod.alpha.kubernetes.io/init-containers: '[
|
|
||||||
{
|
|
||||||
"name": "install",
|
|
||||||
"image": "gcr.io/google_containers/galera-install:0.1",
|
|
||||||
"imagePullPolicy": "Always",
|
|
||||||
"args": ["--work-dir=/work-dir"],
|
|
||||||
"volumeMounts": [
|
|
||||||
{
|
|
||||||
"name": "workdir",
|
|
||||||
"mountPath": "/work-dir"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "config",
|
|
||||||
"mountPath": "/etc/mysql"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "bootstrap",
|
|
||||||
"image": "debian:jessie",
|
|
||||||
"command": ["/work-dir/peer-finder"],
|
|
||||||
"args": ["-on-start=\"/work-dir/on-start.sh\"", "-service=galera"],
|
|
||||||
"env": [
|
|
||||||
{
|
|
||||||
"name": "POD_NAMESPACE",
|
|
||||||
"valueFrom": {
|
|
||||||
"fieldRef": {
|
|
||||||
"apiVersion": "v1",
|
|
||||||
"fieldPath": "metadata.namespace"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"volumeMounts": [
|
|
||||||
{
|
|
||||||
"name": "workdir",
|
|
||||||
"mountPath": "/work-dir"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "config",
|
|
||||||
"mountPath": "/etc/mysql"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]'
|
|
||||||
spec:
|
spec:
|
||||||
|
initContainers:
|
||||||
|
- name: install
|
||||||
|
image: gcr.io/google_containers/galera-install:0.1
|
||||||
|
imagePullPolicy: Always
|
||||||
|
args:
|
||||||
|
- "--work-dir=/work-dir"
|
||||||
|
volumeMounts:
|
||||||
|
- name: workdir
|
||||||
|
mountPath: "/work-dir"
|
||||||
|
- name: config
|
||||||
|
mountPath: "/etc/mysql"
|
||||||
|
- name: bootstrap
|
||||||
|
image: debian:jessie
|
||||||
|
command:
|
||||||
|
- "/work-dir/peer-finder"
|
||||||
|
args:
|
||||||
|
- -on-start="/work-dir/on-start.sh"
|
||||||
|
- "-service=galera"
|
||||||
|
env:
|
||||||
|
- name: POD_NAMESPACE
|
||||||
|
valueFrom:
|
||||||
|
fieldRef:
|
||||||
|
apiVersion: v1
|
||||||
|
fieldPath: metadata.namespace
|
||||||
|
volumeMounts:
|
||||||
|
- name: workdir
|
||||||
|
mountPath: "/work-dir"
|
||||||
|
- name: config
|
||||||
|
mountPath: "/etc/mysql"
|
||||||
containers:
|
containers:
|
||||||
- name: mysql
|
- name: mysql
|
||||||
image: gcr.io/google_containers/mysql-galera:e2e
|
image: gcr.io/google_containers/mysql-galera:e2e
|
||||||
|
|
|
@ -9,53 +9,37 @@ spec:
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
app: redis
|
app: redis
|
||||||
annotations:
|
|
||||||
pod.alpha.kubernetes.io/init-containers: '[
|
|
||||||
{
|
|
||||||
"name": "install",
|
|
||||||
"image": "gcr.io/google_containers/redis-install-3.2.0:e2e",
|
|
||||||
"imagePullPolicy": "Always",
|
|
||||||
"args": ["--install-into=/opt", "--work-dir=/work-dir"],
|
|
||||||
"volumeMounts": [
|
|
||||||
{
|
|
||||||
"name": "opt",
|
|
||||||
"mountPath": "/opt"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "workdir",
|
|
||||||
"mountPath": "/work-dir"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "bootstrap",
|
|
||||||
"image": "debian:jessie",
|
|
||||||
"command": ["/work-dir/peer-finder"],
|
|
||||||
"args": ["-on-start=\"/work-dir/on-start.sh\"", "-service=redis"],
|
|
||||||
"env": [
|
|
||||||
{
|
|
||||||
"name": "POD_NAMESPACE",
|
|
||||||
"valueFrom": {
|
|
||||||
"fieldRef": {
|
|
||||||
"apiVersion": "v1",
|
|
||||||
"fieldPath": "metadata.namespace"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"volumeMounts": [
|
|
||||||
{
|
|
||||||
"name": "opt",
|
|
||||||
"mountPath": "/opt"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "workdir",
|
|
||||||
"mountPath": "/work-dir"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]'
|
|
||||||
spec:
|
spec:
|
||||||
|
initContainers:
|
||||||
|
- name: install
|
||||||
|
image: gcr.io/google_containers/redis-install-3.2.0:e2e
|
||||||
|
imagePullPolicy: Always
|
||||||
|
args:
|
||||||
|
- "--install-into=/opt"
|
||||||
|
- "--work-dir=/work-dir"
|
||||||
|
volumeMounts:
|
||||||
|
- name: opt
|
||||||
|
mountPath: "/opt"
|
||||||
|
- name: workdir
|
||||||
|
mountPath: "/work-dir"
|
||||||
|
- name: bootstrap
|
||||||
|
image: debian:jessie
|
||||||
|
command:
|
||||||
|
- "/work-dir/peer-finder"
|
||||||
|
args:
|
||||||
|
- -on-start="/work-dir/on-start.sh"
|
||||||
|
- "-service=redis"
|
||||||
|
env:
|
||||||
|
- name: POD_NAMESPACE
|
||||||
|
valueFrom:
|
||||||
|
fieldRef:
|
||||||
|
apiVersion: v1
|
||||||
|
fieldPath: metadata.namespace
|
||||||
|
volumeMounts:
|
||||||
|
- name: opt
|
||||||
|
mountPath: "/opt"
|
||||||
|
- name: workdir
|
||||||
|
mountPath: "/work-dir"
|
||||||
containers:
|
containers:
|
||||||
- name: redis
|
- name: redis
|
||||||
image: debian:jessie
|
image: debian:jessie
|
||||||
|
|
|
@ -9,57 +9,39 @@ spec:
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
app: zk
|
app: zk
|
||||||
annotations:
|
|
||||||
pod.alpha.kubernetes.io/init-containers: '[
|
|
||||||
{
|
|
||||||
"name": "install",
|
|
||||||
"image": "gcr.io/google_containers/zookeeper-install-3.5.0-alpha:e2e",
|
|
||||||
"imagePullPolicy": "Always",
|
|
||||||
"args": ["--install-into=/opt", "--work-dir=/work-dir"],
|
|
||||||
"volumeMounts": [
|
|
||||||
{
|
|
||||||
"name": "opt",
|
|
||||||
"mountPath": "/opt/"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "workdir",
|
|
||||||
"mountPath": "/work-dir"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "bootstrap",
|
|
||||||
"image": "java:openjdk-8-jre",
|
|
||||||
"command": ["/work-dir/peer-finder"],
|
|
||||||
"args": ["-on-start=\"/work-dir/on-start.sh\"", "-service=zk"],
|
|
||||||
"env": [
|
|
||||||
{
|
|
||||||
"name": "POD_NAMESPACE",
|
|
||||||
"valueFrom": {
|
|
||||||
"fieldRef": {
|
|
||||||
"apiVersion": "v1",
|
|
||||||
"fieldPath": "metadata.namespace"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"volumeMounts": [
|
|
||||||
{
|
|
||||||
"name": "opt",
|
|
||||||
"mountPath": "/opt"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "workdir",
|
|
||||||
"mountPath": "/work-dir"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "datadir",
|
|
||||||
"mountPath": "/tmp/zookeeper"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]'
|
|
||||||
spec:
|
spec:
|
||||||
|
initContainers:
|
||||||
|
- name: install
|
||||||
|
image: gcr.io/google_containers/zookeeper-install-3.5.0-alpha:e2e
|
||||||
|
imagePullPolicy: Always
|
||||||
|
args:
|
||||||
|
- "--install-into=/opt"
|
||||||
|
- "--work-dir=/work-dir"
|
||||||
|
volumeMounts:
|
||||||
|
- name: opt
|
||||||
|
mountPath: "/opt/"
|
||||||
|
- name: workdir
|
||||||
|
mountPath: "/work-dir"
|
||||||
|
- name: bootstrap
|
||||||
|
image: java:openjdk-8-jre
|
||||||
|
command:
|
||||||
|
- "/work-dir/peer-finder"
|
||||||
|
args:
|
||||||
|
- -on-start="/work-dir/on-start.sh"
|
||||||
|
- "-service=zk"
|
||||||
|
env:
|
||||||
|
- name: POD_NAMESPACE
|
||||||
|
valueFrom:
|
||||||
|
fieldRef:
|
||||||
|
apiVersion: v1
|
||||||
|
fieldPath: metadata.namespace
|
||||||
|
volumeMounts:
|
||||||
|
- name: opt
|
||||||
|
mountPath: "/opt"
|
||||||
|
- name: workdir
|
||||||
|
mountPath: "/work-dir"
|
||||||
|
- name: datadir
|
||||||
|
mountPath: "/tmp/zookeeper"
|
||||||
containers:
|
containers:
|
||||||
- name: zk
|
- name: zk
|
||||||
image: java:openjdk-8-jre
|
image: java:openjdk-8-jre
|
||||||
|
|
Loading…
Reference in New Issue