From 857e933a37e96736b8b9e03a3def00a37c2b2bb1 Mon Sep 17 00:00:00 2001 From: Lennert Claeys Date: Tue, 3 Mar 2020 10:35:37 +0100 Subject: [PATCH] [newrelic-infra] Bump chart to latest version (#21187) Signed-off-by: Lennert Claeys --- stable/newrelic-infrastructure/Chart.yaml | 4 +- stable/newrelic-infrastructure/README.md | 62 ++++++++++--------- .../templates/daemonset.yaml | 26 +++++++- stable/newrelic-infrastructure/values.yaml | 2 +- 4 files changed, 62 insertions(+), 32 deletions(-) diff --git a/stable/newrelic-infrastructure/Chart.yaml b/stable/newrelic-infrastructure/Chart.yaml index 551d263037..5826bcfc5b 100644 --- a/stable/newrelic-infrastructure/Chart.yaml +++ b/stable/newrelic-infrastructure/Chart.yaml @@ -1,8 +1,8 @@ apiVersion: v1 description: A Helm chart to deploy the New Relic Infrastructure Agent as a DaemonSet name: newrelic-infrastructure -version: 0.13.24 -appVersion: 1.13.2 +version: 0.13.25 +appVersion: 1.15.0 home: https://hub.docker.com/r/newrelic/infrastructure-k8s/ source: - https://github.com/kubernetes/kubernetes/tree/master/examples/newrelic-infrastructure diff --git a/stable/newrelic-infrastructure/README.md b/stable/newrelic-infrastructure/README.md index 6c954c3f56..801543b388 100644 --- a/stable/newrelic-infrastructure/README.md +++ b/stable/newrelic-infrastructure/README.md @@ -6,34 +6,40 @@ This chart will deploy the New Relic Infrastructure agent as a Daemonset. ## Configuration -| Parameter | Description | Default | -| -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------- | -| `cluster` | The cluster name for the Kubernetes cluster. | | -| `licenseKey` | The [license key](https://docs.newrelic.com/docs/accounts/install-new-relic/account-setup/license-key) for your New Relic Account. This will be preferred configuration option if both `licenseKey` and `customSecret` are specified. | | -| `customSecretName` | Name of the Secret object where the license key is stored | | -| `customSecretLicenseKey` | Key in the Secret object where the license key is stored. | | -| `config` | A `newrelic.yml` file if you wish to provide. | | -| `integrations_config` | List of Integrations configuration to monitor services running on Kubernetes. More information on can be found [here](https://docs.newrelic.com/docs/integrations/kubernetes-integration/link-apps-services/monitor-services-running-kubernetes). | | -| `kubeStateMetricsUrl` | If provided, the discovery process for kube-state-metrics endpoint won't be triggered. Example: http://172.17.0.3:8080 | | -| `kubeStateMetricsPodLabel` | If provided, the kube-state-metrics pod will be discovered using this label. (should be `true` on target pod) | | -| `kubeStateMetricsTimeout` | Timeout for accessing kube-state-metrics in milliseconds. If not set the newrelic default is 5000 | | -| `rbac.create` | Enable Role-based authentication | `true` | -| `rbac.pspEnabled` | Enable pod security policy support | `false` | -| `privileged` | Enable privileged mode. | `true` | -| `image.repository` | The container to pull. | `newrelic/infrastructure` | -| `image.pullPolicy` | The pull policy. | `IfNotPresent` | -| `image.tag` | The version of the container to pull. | `1.13.2` | -| `resources` | Any resources you wish to assign to the pod. | See Resources below | -| `verboseLog` | Should the agent log verbosely. (Boolean) | `false` | -| `priorityClassName` | Scheduling priority of the pod | `nil` | -| `nodeSelector` | Node label to use for scheduling | `nil` | -| `tolerations` | List of node taints to tolerate (requires Kubernetes >= 1.6) | See Tolerarions below | -| `updateStrategy` | Strategy for DaemonSet updates (requires Kubernetes >= 1.6) | `RollingUpdate` | -| `serviveAccount.create` | If true, a service account would be created and assigned to the deployment | true | -| `serviveAccount.name` | The service account to assign to the deployment. If `serviveAccount.create` is true then this name will be used when creating the service account | | -| `etcdTlsSecretName` | Name of the secret containing the cacert, cert and key used for setting the mTLS config for retrieving metrics from ETCD. | | -| `etcdTlsSecretNamespace` | Namespace where the secret specified in `etcdTlsSecretName` was created. | `default` | -| `apiServerSecurePort` | Set to query the API Server over a secure port. | | +| Parameter | Description | Default | +| ------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------- | +| `cluster` | The cluster name for the Kubernetes cluster. | | +| `licenseKey` | The [license key](https://docs.newrelic.com/docs/accounts/install-new-relic/account-setup/license-key) for your New Relic Account. This will be preferred configuration option if both `licenseKey` and `customSecret` are specified. | | +| `customSecretName` | Name of the Secret object where the license key is stored | | +| `customSecretLicenseKey` | Key in the Secret object where the license key is stored. | | +| `config` | A `newrelic.yml` file if you wish to provide. | | +| `integrations_config` | List of Integrations configuration to monitor services running on Kubernetes. More information on can be found [here](https://docs.newrelic.com/docs/integrations/kubernetes-integration/link-apps-services/monitor-services-running-kubernetes). | | +| `kubeStateMetricsUrl` | If provided, the discovery process for kube-state-metrics endpoint won't be triggered. Example: http://172.17.0.3:8080 | | +| `kubeStateMetricsPodLabel` | If provided, the kube-state-metrics pod will be discovered using this label. (should be `true` on target pod) | | +| `kubeStateMetricsTimeout` | Timeout for accessing kube-state-metrics in milliseconds. If not set the newrelic default is 5000 | | +| `kubeStateMetricsScheme` | If `kubeStateMetricsPodLabel` is present, it changes the scheme used to send to request to the pod. | `http` | +| `kubeStateMetricsPort` | If `kubeStateMetricsPodLabel` is present, it changes the port queried in the pod. | 8080 | +| `rbac.create` | Enable Role-based authentication | `true` | +| `rbac.pspEnabled` | Enable pod security policy support | `false` | +| `privileged` | Enable privileged mode. | `true` | +| `image.repository` | The container to pull. | `newrelic/infrastructure` | +| `image.pullPolicy` | The pull policy. | `IfNotPresent` | +| `image.tag` | The version of the container to pull. | `1.15.0` | +| `resources` | Any resources you wish to assign to the pod. | See Resources below | +| `verboseLog` | Should the agent log verbosely. (Boolean) | `false` | +| `priorityClassName` | Scheduling priority of the pod | `nil` | +| `nodeSelector` | Node label to use for scheduling | `nil` | +| `tolerations` | List of node taints to tolerate (requires Kubernetes >= 1.6) | See Tolerarions below | +| `updateStrategy` | Strategy for DaemonSet updates (requires Kubernetes >= 1.6) | `RollingUpdate` | +| `serviveAccount.create` | If true, a service account would be created and assigned to the deployment | true | +| `serviveAccount.name` | The service account to assign to the deployment. If `serviveAccount.create` is true then this name will be used when creating the service account | | +| `etcdTlsSecretName` | Name of the secret containing the cacert, cert and key used for setting the mTLS config for retrieving metrics from ETCD. | | +| `etcdTlsSecretNamespace` | Namespace where the secret specified in `etcdTlsSecretName` was created. | `default` | +| `etcdEndpointUrl` | Explicitly sets the etcd component url. | | +| `apiServerSecurePort` | Set to query the API Server over a secure port. | | +| `apiServerEndpointUrl` | Explicitly sets the api server componenturl. | | +| `schedulerEndpointUrl` | Explicitly sets the scheduler component url. | | +| `controllerManagerEndpointUrl` | Explicitly sets the controller manager component url. | | ## Example diff --git a/stable/newrelic-infrastructure/templates/daemonset.yaml b/stable/newrelic-infrastructure/templates/daemonset.yaml index 3a84aa0031..3b292030cb 100644 --- a/stable/newrelic-infrastructure/templates/daemonset.yaml +++ b/stable/newrelic-infrastructure/templates/daemonset.yaml @@ -67,6 +67,14 @@ spec: - name: TIMEOUT value: {{ .Values.kubeStateMetricsTimeout | quote }} {{- end }} + {{- if .Values.kubeStateMetricsScheme }} + - name: "KUBE_STATE_METRICS_SCHEME" + value: {{ .Values.kubeStateMetricsScheme | quote }} + {{- end }} + {{- if .Values.kubeStateMetricsPort }} + - name: "KUBE_STATE_METRICS_PORT" + value: {{ .Values.kubeStateMetricsPort | quote }} + {{- end }} {{- if .Values.etcdTlsSecretName }} - name: ETCD_TLS_SECRET_NAME value: {{ .Values.etcdTlsSecretName | quote }} @@ -75,10 +83,26 @@ spec: - name: ETCD_TLS_SECRET_NAMESPACE value: {{ .Values.etcdTlsSecretNamespace | quote }} {{- end }} + {{- if .Values.etcdEndpointUrl }} + - name: "ETCD_ENDPOINT_URL" + value: {{ .Values.etcdEndpointUrl | quote }} + {{- end }} {{- if .Values.apiServerSecurePort }} - name: "API_SERVER_SECURE_PORT" value: {{ .Values.apiServerSecurePort | quote }} {{- end }} + {{- if .Values.apiServerEndpointUrl }} + - name: "API_SERVER_ENDPOINT_URL" + value: {{ .Values.apiServerEndpointUrl | quote }} + {{- end }} + {{- if .Values.schedulerEndpointUrl }} + - name: "SCHEDULER_ENDPOINT_URL" + value: {{ .Values.schedulerEndpointUrl | quote }} + {{- end }} + {{- if .Values.controllerManagerEndpointUrl }} + - name: "CONTROLLER_MANAGER_ENDPOINT_URL" + value: {{ .Values.controllerManagerEndpointUrl | quote }} + {{- end }} - name: "NRIA_DISPLAY_NAME" valueFrom: fieldRef: @@ -92,7 +116,7 @@ spec: - name: "NRIA_CUSTOM_ATTRIBUTES" value: {{ .Values.customAttribues }} - name: "NRIA_PASSTHROUGH_ENVIRONMENT" - value: "KUBERNETES_SERVICE_HOST,KUBERNETES_SERVICE_PORT,CLUSTER_NAME,CADVISOR_PORT,NRK8S_NODE_NAME,KUBE_STATE_METRICS_URL,KUBE_STATE_METRICS_POD_LABEL,TIMEOUT,ETCD_TLS_SECRET_NAME,ETCD_TLS_SECRET_NAMESPACE,API_SERVER_SECURE_PORT" + value: "KUBERNETES_SERVICE_HOST,KUBERNETES_SERVICE_PORT,CLUSTER_NAME,CADVISOR_PORT,NRK8S_NODE_NAME,KUBE_STATE_METRICS_URL,KUBE_STATE_METRICS_POD_LABEL,TIMEOUT,ETCD_TLS_SECRET_NAME,ETCD_TLS_SECRET_NAMESPACE,API_SERVER_SECURE_PORT,KUBE_STATE_METRICS_SCHEME,KUBE_STATE_METRICS_PORT,SCHEDULER_ENDPOINT_URL,ETCD_ENDPOINT_URL,CONTROLLER_MANAGER_ENDPOINT_URL,API_SERVER_ENDPOINT_URL" {{- if .Values.verboseLog }} - name: NRIA_VERBOSE value: "1" diff --git a/stable/newrelic-infrastructure/values.yaml b/stable/newrelic-infrastructure/values.yaml index cffe62adf2..f9c92d3384 100644 --- a/stable/newrelic-infrastructure/values.yaml +++ b/stable/newrelic-infrastructure/values.yaml @@ -29,7 +29,7 @@ verboseLog: false image: repository: newrelic/infrastructure-k8s - tag: 1.13.2 + tag: 1.15.0 pullPolicy: IfNotPresent resources: