Skip to content

Commit 75b2a87

Browse files
author
Ole Markus With
committed
Add metrics-server addon
1 parent 31c9a59 commit 75b2a87

File tree

13 files changed

+876
-0
lines changed

13 files changed

+876
-0
lines changed

addons/metrics-server/README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# Kubernetes Metrics Server
22

3+
**This addon is deprecated. Set `spec.metricsServer.enabled: true` instead**
4+
35
## User guide
46

57
You can find the user guide in

k8s/crds/kops.k8s.io_clusters.yaml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2088,6 +2088,16 @@ spec:
20882088
masterPublicName:
20892089
description: MasterPublicName is the external DNS name for the master nodes
20902090
type: string
2091+
metricsServer:
2092+
description: MetricsServerConfig determines the metrics server configuration.
2093+
properties:
2094+
enabled:
2095+
description: 'Enabled enables the metrics server. Default: false'
2096+
type: boolean
2097+
image:
2098+
description: 'Image is the docker container used. Default: the latest supported image for the specified kubernetes version.'
2099+
type: string
2100+
type: object
20912101
networkCIDR:
20922102
description: NetworkCIDR is the CIDR used for the AWS VPC / GCE Network, or otherwise allocated to k8s This is a real CIDR, not the internal k8s network On AWS, it maps to the VPC CIDR. It is not required on GCE.
20932103
type: string

pkg/apis/kops/cluster.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,8 @@ type ClusterSpec struct {
160160

161161
// NodeTerminationHandlerConfig determines the cluster autoscaler configuration.
162162
NodeTerminationHandler *NodeTerminationHandlerConfig `json:"nodeTerminationHandler,omitempty"`
163+
// MetricsServerConfig determines the metrics server configuration.
164+
MetricsServer *MetricsServerConfig `json:"metricsServer,omitempty"`
163165

164166
// Networking configuration
165167
Networking *NetworkingSpec `json:"networking,omitempty"`

pkg/apis/kops/componentconfig.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -803,6 +803,16 @@ type ClusterAutoscalerConfig struct {
803803
Image *string `json:"image,omitempty"`
804804
}
805805

806+
// MetricsServerConfig determines the metrics server configuration.
807+
type MetricsServerConfig struct {
808+
// Enabled enables the metrics server.
809+
// Default: false
810+
Enabled *bool `json:"enabled,omitempty"`
811+
// Image is the docker container used.
812+
// Default: the latest supported image for the specified kubernetes version.
813+
Image *string `json:"image,omitempty"`
814+
}
815+
806816
// HasAdmissionController checks if a specific admission controller is enabled
807817
func (c *KubeAPIServerConfig) HasAdmissionController(name string) bool {
808818
for _, x := range c.AdmissionControl {

pkg/apis/kops/v1alpha2/cluster.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,8 @@ type ClusterSpec struct {
159159

160160
// NodeTerminationHandlerConfig determines the cluster autoscaler configuration.
161161
NodeTerminationHandler *NodeTerminationHandlerConfig `json:"nodeTerminationHandler,omitempty"`
162+
// MetricsServerConfig determines the metrics server configuration.
163+
MetricsServer *MetricsServerConfig `json:"metricsServer,omitempty"`
162164

163165
// Networking configuration
164166
Networking *NetworkingSpec `json:"networking,omitempty"`

pkg/apis/kops/v1alpha2/componentconfig.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -804,6 +804,16 @@ type ClusterAutoscalerConfig struct {
804804
Image *string `json:"image,omitempty"`
805805
}
806806

807+
// MetricsServerConfig determines the metrics server configuration.
808+
type MetricsServerConfig struct {
809+
// Enabled enables the metrics server.
810+
// Default: false
811+
Enabled *bool `json:"enabled,omitempty"`
812+
// Image is the docker container used.
813+
// Default: the latest supported image for the specified kubernetes version.
814+
Image *string `json:"image,omitempty"`
815+
}
816+
807817
// HasAdmissionController checks if a specific admission controller is enabled
808818
func (c *KubeAPIServerConfig) HasAdmissionController(name string) bool {
809819
for _, x := range c.AdmissionControl {

pkg/apis/kops/v1alpha2/zz_generated.conversion.go

Lines changed: 50 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/apis/kops/v1alpha2/zz_generated.deepcopy.go

Lines changed: 31 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pkg/apis/kops/zz_generated.deepcopy.go

Lines changed: 31 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)