2017-10-03 17:24:25 +00:00
|
|
|
{
|
|
|
|
"kind": "Pod",
|
|
|
|
"apiVersion": "v1",
|
|
|
|
"metadata": {
|
|
|
|
"name": "cluster-autoscaler",
|
|
|
|
"namespace": "kubemark",
|
|
|
|
"labels": {
|
|
|
|
"tier": "cluster-management",
|
|
|
|
"component": "cluster-autoscaler"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"spec": {
|
|
|
|
"hostNetwork": true,
|
|
|
|
"containers": [
|
|
|
|
{
|
|
|
|
"name": "cluster-autoscaler",
|
Switch to k8s.gcr.io vanity domain
This is the 2nd attempt. The previous was reverted while we figured out
the regional mirrors (oops).
New plan: k8s.gcr.io is a read-only facade that auto-detects your source
region (us, eu, or asia for now) and pulls from the closest. To publish
an image, push k8s-staging.gcr.io and it will be synced to the regionals
automatically (similar to today). For now the staging is an alias to
gcr.io/google_containers (the legacy URL).
When we move off of google-owned projects (working on it), then we just
do a one-time sync, and change the google-internal config, and nobody
outside should notice.
We can, in parallel, change the auto-sync into a manual sync - send a PR
to "promote" something from staging, and a bot activates it. Nice and
visible, easy to keep track of.
2018-01-17 19:36:53 +00:00
|
|
|
"image": "k8s.gcr.io/cluster-autoscaler:v1.0.0",
|
2017-10-03 17:24:25 +00:00
|
|
|
"command": [
|
|
|
|
"./run.sh",
|
|
|
|
"--kubernetes=https://{{master_ip}}:443?inClusterConfig=0&useServiceAccount=0&auth=/kubeconfig/cluster_autoscaler.kubeconfig",
|
|
|
|
"--v=4",
|
|
|
|
"--logtostderr=true",
|
|
|
|
"--write-status-configmap=true",
|
|
|
|
"--cloud-provider=kubemark",
|
|
|
|
"--nodes={{kubemark_autoscaler_min_nodes}}:{{kubemark_autoscaler_max_nodes}}:{{kubemark_autoscaler_mig_name}}"
|
|
|
|
],
|
|
|
|
"env": [
|
|
|
|
{
|
|
|
|
"name": "LOG_OUTPUT",
|
|
|
|
"value": "/var/log/cluster-autoscaler.log"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"resources": {
|
|
|
|
"requests": {
|
|
|
|
"cpu": "10m",
|
|
|
|
"memory": "300Mi"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"volumeMounts": [
|
|
|
|
{"name": "cloudconfigmount","mountPath": "/etc/gce.conf", "readOnly": true},
|
|
|
|
{
|
|
|
|
"name": "ssl-certs",
|
|
|
|
"readOnly": true,
|
|
|
|
"mountPath": "/etc/ssl/certs"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"name": "usrsharecacerts",
|
|
|
|
"readOnly": true,
|
|
|
|
"mountPath": "/usr/share/ca-certificates"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"name": "logdir",
|
|
|
|
"mountPath": "/var/log",
|
|
|
|
"readOnly": false
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"name": "kubeconfig-volume",
|
|
|
|
"mountPath": "/kubeconfig"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"terminationMessagePath": "/dev/termination-log",
|
|
|
|
"imagePullPolicy": "Always"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"volumes": [
|
|
|
|
{"name": "cloudconfigmount","hostPath": {"path": "/etc/gce.conf"}},
|
|
|
|
{
|
|
|
|
"name": "ssl-certs",
|
|
|
|
"hostPath": {
|
|
|
|
"path": "/etc/ssl/certs"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"name": "usrsharecacerts",
|
|
|
|
"hostPath": {
|
|
|
|
"path": "/usr/share/ca-certificates"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"name": "logdir",
|
|
|
|
"hostPath": {
|
|
|
|
"path": "/var/log"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"name": "kubeconfig-volume",
|
|
|
|
"secret": {
|
|
|
|
"secretName": "kubeconfig"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"restartPolicy": "Always"
|
|
|
|
}
|
|
|
|
}
|