Skip to content

Commit

Permalink
Merge pull request kubernetes-retired#1068 from mumoshu/toggle-metric…
Browse files Browse the repository at this point in the history
…s-server

Allow toggling Metrics Server installation
  • Loading branch information
mumoshu authored Dec 8, 2017
2 parents e2fb8d4 + d9fe738 commit 2267305
Show file tree
Hide file tree
Showing 5 changed files with 34 additions and 9 deletions.
27 changes: 18 additions & 9 deletions core/controlplane/config/templates/cloud-config-controller
Original file line number Diff line number Diff line change
Expand Up @@ -817,12 +817,24 @@ write_files:
fi

mfdir=/srv/kubernetes/manifests
rbac=/srv/kubernetes/rbac

{{ if .UseCalico }}
/bin/bash /opt/bin/populate-tls-calico-etcd
applyall "${mfdir}/calico.yaml"
{{ end }}

{{ if .Addons.MetricsServer.Enabled -}}
applyall \
"${mfdir}/metrics-server-sa.yaml" \
"${mfdir}/metrics-server-de.yaml" \
"${mfdir}/metrics-server-svc.yaml" \
"${rbac}/cluster-roles/metrics-server.yaml" \
"${rbac}/cluster-role-bindings/metrics-server.yaml" \
"${rbac}/role-bindings/metrics-server.yaml" \
"${mfdir}/metrics-server-apisvc.yaml"
{{- end }}

{{ if .Experimental.NodeDrainer.Enabled }}
applyall "${mfdir}"/{kube-node-drainer-ds,kube-node-drainer-asg-status-updater-de}".yaml"
{{ end }}
Expand All @@ -834,7 +846,7 @@ write_files:
applyall "${mfdir}"/{kube-dns,kube-proxy}"-cm.yaml"

# Service Accounts
applyall "${mfdir}"/{kube-dns,heapster,kube-proxy,kubernetes-dashboard,metrics-server}"-sa.yaml"
applyall "${mfdir}"/{kube-dns,heapster,kube-proxy,kubernetes-dashboard}"-sa.yaml"

# Install tiller by default
applyall "${mfdir}/tiller.yaml"
Expand All @@ -845,27 +857,24 @@ write_files:
{{ end }}

# Deployments
applyall "${mfdir}"/{kube-dns,kube-dns-autoscaler,kubernetes-dashboard,{{ if .Addons.ClusterAutoscaler.Enabled }}cluster-autoscaler,{{ end }}heapster{{ if .KubeResourcesAutosave.Enabled }},kube-resources-autosave{{ end }},metrics-server}"-de.yaml"
applyall "${mfdir}"/{kube-dns,kube-dns-autoscaler,kubernetes-dashboard,{{ if .Addons.ClusterAutoscaler.Enabled }}cluster-autoscaler,{{ end }}heapster{{ if .KubeResourcesAutosave.Enabled }},kube-resources-autosave{{ end }}}"-de.yaml"

# Daemonsets
applyall "${mfdir}"/kube-proxy"-ds.yaml"

# Services
applyall "${mfdir}"/{kube-dns,heapster,kubernetes-dashboard,metrics-server}"-svc.yaml"
applyall "${mfdir}"/{kube-dns,heapster,kubernetes-dashboard}"-svc.yaml"

{{- if .Addons.Rescheduler.Enabled }}
applyall "${mfdir}/kube-rescheduler-de.yaml"
{{- end }}

# API Services
applyall "${mfdir}/metrics-server-apisvc.yaml"

mfdir=/srv/kubernetes/rbac

# Cluster roles and bindings
applyall "${mfdir}/cluster-roles"/{node-extensions,metrics-server}".yaml"
applyall "${mfdir}/cluster-roles/node-extensions.yaml"

applyall "${mfdir}/cluster-role-bindings"/{kube-admin,system-worker,node,node-proxier,node-extensions,heapster,metrics-server}".yaml"
applyall "${mfdir}/cluster-role-bindings"/{kube-admin,system-worker,node,node-proxier,node-extensions,heapster}".yaml"

{{ if .KubernetesDashboard.AdminPrivileges }}
applyall "${mfdir}/cluster-role-bindings/kubernetes-dashboard-admin.yaml"
Expand All @@ -874,7 +883,7 @@ write_files:
# Roles and bindings
applyall "${mfdir}/roles"/{pod-nanny,kubernetes-dashboard}".yaml"

applyall "${mfdir}/role-bindings"/{heapster-nanny,kubernetes-dashboard,metrics-server}".yaml"
applyall "${mfdir}/role-bindings"/{heapster-nanny,kubernetes-dashboard}".yaml"

{{ if .Experimental.TLSBootstrap.Enabled }}
applyall "${mfdir}/cluster-roles"/{node-bootstrapper,kubelet-certificate-bootstrap}".yaml"
Expand Down
4 changes: 4 additions & 0 deletions core/controlplane/config/templates/cluster.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1194,6 +1194,10 @@ addons:
rescheduler:
enabled: false

# Metrics Server (https://github.com/kubernetes-incubator/metrics-server)
metricsServer:
enabled: false

# Experimental features will change in backward-incompatible ways
experimental:
# Enable admission controllers
Expand Down
1 change: 1 addition & 0 deletions core/root/config/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -144,6 +144,7 @@ func ConfigFromBytes(data []byte, plugins []*pluginmodel.Plugin) (*Config, error
{c.Addons, "addons"},
{c.Addons.Rescheduler, "addons.rescheduler"},
{c.Addons.ClusterAutoscaler, "addons.clusterAutoscaler"},
{c.Addons.MetricsServer, "addons.metricsServer"},
}

for i, np := range c.Worker.NodePools {
Expand Down
6 changes: 6 additions & 0 deletions model/addons.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ package model
type Addons struct {
Rescheduler Rescheduler `yaml:"rescheduler"`
ClusterAutoscaler ClusterAutoscalerSupport `yaml:"clusterAutoscaler,omitempty"`
MetricsServer MetricsServer `yaml:"metricsServer,omitempty"`
UnknownKeys `yaml:",inline"`
}

Expand All @@ -15,3 +16,8 @@ type Rescheduler struct {
Enabled bool `yaml:"enabled"`
UnknownKeys `yaml:",inline"`
}

type MetricsServer struct {
Enabled bool `yaml:"enabled"`
UnknownKeys `yaml:",inline"`
}
5 changes: 5 additions & 0 deletions test/integration/maincluster_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -405,6 +405,8 @@ addons:
enabled: true
clusterAutoscaler:
enabled: true
metricsServer:
enabled: true
worker:
nodePools:
- name: pool1
Expand All @@ -420,6 +422,9 @@ worker:
ClusterAutoscaler: model.ClusterAutoscalerSupport{
Enabled: true,
},
MetricsServer: model.MetricsServer{
Enabled: true,
},
}

actual := c.Addons
Expand Down

0 comments on commit 2267305

Please sign in to comment.