diff --git a/stable/weave-scope/Chart.yaml b/stable/weave-scope/Chart.yaml index 4de3ba8593..dfc768990d 100644 --- a/stable/weave-scope/Chart.yaml +++ b/stable/weave-scope/Chart.yaml @@ -1,7 +1,7 @@ apiVersion: v1 name: weave-scope -version: 1.1.4 -appVersion: 1.11.3 +version: 1.1.5 +appVersion: 1.11.5 description: A Helm chart for the Weave Scope cluster visualizer. keywords: - containers diff --git a/stable/weave-scope/README.md b/stable/weave-scope/README.md index 3614758f10..6e7101d5a9 100644 --- a/stable/weave-scope/README.md +++ b/stable/weave-scope/README.md @@ -70,6 +70,11 @@ The **weave-scope-frontend** section controls how the Scope frontend is installe | **resources.requests.memory** | memory request in MiB (Mi) | | | **resources.limits.cpu** | CPU limit in MHz (m) | | | **resources.limits.memory** | memory limit in MiB (Mi) | | +| **ingress.enabled** | Enables Ingress for weave-scope-frontend | false | +| **ingress.annotations** | Ingress annotations | {} | +| **ingress.paths** | Ingress paths | [] | +| **ingress.hosts** | Ingress accepted hostnames | nil | +| **ingress.tls** | Ingress TLS configuration | [] | ### Weave Scope agent @@ -82,6 +87,23 @@ The **agent** section controls how the Weave Scope node agent pods are installed | **dockerBridge** | the name of the Docker bridge interface | `docker0` | | **scopeFrontendAddr** | the host:port of a Scope frontend to send data to -- this is only needed in cases where the frontend is deployed separately from the agent (e.g. an install outside the cluster or a pre-existing install inside it) | | | **probeToken** | the token used to connect to Weave Cloud -- this is not needed for connecting to non-cloud Scope frontends | | +| **readOnly** | disables all controls (e.g. start/stop, terminal, logs, etc.) | `false` | +| **resources.*** | controls requests/limits for the agent (these values are all optional) | | +| **resources.requests.cpu** | CPU request in MHz (m) | | +| **resources.requests.memory** | memory request in MiB (Mi)| | +| **resources.limits.cpu** | CPU limit in MHz (m) | | +| **resources.limits.memory** | memory limit in MiB (Mi) | | + +### Weave Scope cluster agent + +The **agent** section controls how the Weave Scope node agent pods are installed. + +| Parameter | Description | Default | +|----------:|:------------|:--------| +| **enabled** | controls whether the agent is deployed | `true` | +| **flags** | adds extra flag options for container | [] | +| **scopeFrontendAddr** | the host:port of a Scope frontend to send data to -- this is only needed in cases where the frontend is deployed separately from the agent (e.g. an install outside the cluster or a pre-existing install inside it) | | +| **probeToken** | the token used to connect to Weave Cloud -- this is not needed for connecting to non-cloud Scope frontends | | | **rbac.*** | controls RBAC resource creation/use | | | **rbac.create** | whether RBAC resources should be created (required) -- this **must** be set to false if RBAC is not enabled in the cluster; it *may* be set to false in an RBAC-enabled cluster to allow for external management of RBAC | `true` | | **readOnly** | disables all controls (e.g. start/stop, terminal, logs, etc.) | `false` | @@ -92,11 +114,6 @@ The **agent** section controls how the Weave Scope node agent pods are installed | **resources.requests.memory** | memory request in MiB (Mi)| | | **resources.limits.cpu** | CPU limit in MHz (m) | | | **resources.limits.memory** | memory limit in MiB (Mi) | | -| **ingress.enabled** | Enables Ingress for weave-scope-frontend | false | -| **ingress.annotations** | Ingress annotations | {} | -| **ingress.paths** | Ingress paths | [] | -| **ingress.hosts** | Ingress accepted hostnames | nil | -| **ingress.tls** | Ingress TLS configuration | [] | ## Other notes diff --git a/stable/weave-scope/charts/weave-scope-agent/Chart.yaml b/stable/weave-scope/charts/weave-scope-agent/Chart.yaml index dbe8fd05f1..95e6ce58e7 100644 --- a/stable/weave-scope/charts/weave-scope-agent/Chart.yaml +++ b/stable/weave-scope/charts/weave-scope-agent/Chart.yaml @@ -1,7 +1,7 @@ description: A Helm chart for the Weave Scope cluster visualizer node agent. name: weave-scope-agent -version: 1.1.3 -appVersion: 1.11.3 +version: 1.1.5 +appVersion: 1.11.5 keywords: - containers - dashboard diff --git a/stable/weave-scope/charts/weave-scope-agent/templates/daemonset.yaml b/stable/weave-scope/charts/weave-scope-agent/templates/daemonset.yaml index 6bbf8eab50..889d1e448d 100644 --- a/stable/weave-scope/charts/weave-scope-agent/templates/daemonset.yaml +++ b/stable/weave-scope/charts/weave-scope-agent/templates/daemonset.yaml @@ -30,7 +30,9 @@ spec: image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.tag }}" imagePullPolicy: "{{ .Values.global.image.pullPolicy }}" args: - - '--no-app' + - '--mode=probe' + - '--probe-only' + - '--probe.kubernetes.role=host' - '--probe.docker.bridge={{ .Values.dockerBridge }}' - '--probe.docker=true' - '--probe.kubernetes=true' @@ -71,5 +73,4 @@ spec: hostPID: true hostNetwork: true dnsPolicy: ClusterFirstWithHostNet - serviceAccountName: {{ template "weave-scope-agent.serviceAccountName" . }} {{- end -}} diff --git a/stable/weave-scope/charts/weave-scope-cluster-agent/Chart.yaml b/stable/weave-scope/charts/weave-scope-cluster-agent/Chart.yaml new file mode 100644 index 0000000000..62f57a09a5 --- /dev/null +++ b/stable/weave-scope/charts/weave-scope-cluster-agent/Chart.yaml @@ -0,0 +1,15 @@ +description: A Helm chart for the Weave Scope cluster visualizer node agent. +name: weave-scope-cluster-agent +version: 1.1.5 +appVersion: 1.11.5 +keywords: + - containers + - dashboard + - monitoring +home: https://www.weave.works/oss/scope/ +sources: + - https://github.com/weaveworks/scope +maintainers: + - name: omkensey + email: github@orion-com.com +icon: https://avatars1.githubusercontent.com/u/9976052?s=64 diff --git a/stable/weave-scope/charts/weave-scope-cluster-agent/templates/_helpers.tpl b/stable/weave-scope/charts/weave-scope-cluster-agent/templates/_helpers.tpl new file mode 100644 index 0000000000..986ebc3992 --- /dev/null +++ b/stable/weave-scope/charts/weave-scope-cluster-agent/templates/_helpers.tpl @@ -0,0 +1,61 @@ +{{/* Helm standard labels */}} +{{- define "weave-scope-cluster-agent.helm_std_labels" }} +chart: {{ .Chart.Name }}-{{ .Chart.Version }} +heritage: {{ .Release.Service }} +release: {{ .Release.Name }} +app: {{ template "toplevel.name" . }} +{{- end }} + +{{/* Weave Scope default annotations */}} +{{- define "weave-scope-cluster-agent.annotations" }} +cloud.weave.works/launcher-info: |- + { + "server-version": "master-4fe8efe", + "original-request": { + "url": "/k8s/v1.7/scope.yaml" + }, + "email-address": "support@weave.works", + "source-app": "weave-scope", + "weave-cloud-component": "scope" + } +{{- end }} + +{{/* +Expand the name of the chart. +*/}} +{{- define "weave-scope-cluster-agent.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Expand the name of the top-level chart. +*/}} +{{- define "toplevel.name" -}} +{{- default (.Template.BasePath | split "/" )._0 .Values.nameOverride | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Create a default fully qualified app name. We truncate at 63 chars. +*/}} +{{- define "weave-scope-cluster-agent.fullname" -}} +{{- printf "%s-%s" .Chart.Name .Release.Name | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Create a fully qualified name that always uses the name of the top-level chart. +*/}} +{{- define "toplevel.fullname" -}} +{{- $name := default (.Template.BasePath | split "/" )._0 .Values.nameOverride -}} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{/* +Create the name of the service account to use +*/}} +{{- define "weave-scope-cluster-agent.serviceAccountName" -}} +{{- if .Values.serviceAccount.create -}} + {{ default (include "weave-scope-cluster-agent.fullname" .) .Values.serviceAccount.name }} +{{- else -}} + {{ default "default" .Values.serviceAccount.name }} +{{- end -}} +{{- end -}} \ No newline at end of file diff --git a/stable/weave-scope/charts/weave-scope-agent/templates/clusterrole.yaml b/stable/weave-scope/charts/weave-scope-cluster-agent/templates/clusterrole.yaml similarity index 100% rename from stable/weave-scope/charts/weave-scope-agent/templates/clusterrole.yaml rename to stable/weave-scope/charts/weave-scope-cluster-agent/templates/clusterrole.yaml diff --git a/stable/weave-scope/charts/weave-scope-agent/templates/clusterrolebinding.yaml b/stable/weave-scope/charts/weave-scope-cluster-agent/templates/clusterrolebinding.yaml similarity index 100% rename from stable/weave-scope/charts/weave-scope-agent/templates/clusterrolebinding.yaml rename to stable/weave-scope/charts/weave-scope-cluster-agent/templates/clusterrolebinding.yaml diff --git a/stable/weave-scope/charts/weave-scope-cluster-agent/templates/deployment.yaml b/stable/weave-scope/charts/weave-scope-cluster-agent/templates/deployment.yaml new file mode 100644 index 0000000000..bbe504b4db --- /dev/null +++ b/stable/weave-scope/charts/weave-scope-cluster-agent/templates/deployment.yaml @@ -0,0 +1,47 @@ +{{- if .Values.enabled -}} +apiVersion: extensions/v1beta1 +kind: Deployment +metadata: + labels: + {{- include "weave-scope-cluster-agent.helm_std_labels" . | indent 4 }} + component: cluster-agent + name: {{ template "weave-scope-cluster-agent.fullname" . }} + annotations: + {{- include "weave-scope-cluster-agent.annotations" . | indent 4 }} +spec: + selector: + matchLabels: + app: {{ template "toplevel.name" . }} + release: {{ .Release.Name }} + component: cluster-agent + updateStrategy: + type: RollingUpdate + template: + metadata: + labels: + {{- include "weave-scope-cluster-agent.helm_std_labels" . | indent 8 }} + component: cluster-agent + spec: + containers: + - name: {{ template "weave-scope-cluster-agent.name" . }} + image: "{{ .Values.global.image.repository }}:{{ .Values.global.image.tag }}" + imagePullPolicy: "{{ .Values.global.image.pullPolicy }}" + args: + - '--mode=probe' + - '--probe-only' + - '--probe.kubernetes.role=cluster' + {{- range $arg := .Values.flags }} + - {{ $arg | quote }} + {{- end }} + {{if .Values.readOnly}} + - "--probe.no-controls" + {{end}} + {{- if .Values.global.scopeFrontendAddr }} + - {{ .Values.global.scopeFrontendAddr }} + {{- else }} + - {{ .Values.global.service.name | default (include "toplevel.fullname" .) }}.{{ .Release.Namespace }}.svc:{{ .Values.global.service.port }} + {{- end }} + resources: +{{ toYaml .Values.resources | indent 12 }} + serviceAccountName: {{ template "weave-scope-cluster-agent.serviceAccountName" . }} +{{- end -}} diff --git a/stable/weave-scope/charts/weave-scope-agent/templates/serviceaccount.yaml b/stable/weave-scope/charts/weave-scope-cluster-agent/templates/serviceaccount.yaml similarity index 100% rename from stable/weave-scope/charts/weave-scope-agent/templates/serviceaccount.yaml rename to stable/weave-scope/charts/weave-scope-cluster-agent/templates/serviceaccount.yaml diff --git a/stable/weave-scope/charts/weave-scope-frontend/Chart.yaml b/stable/weave-scope/charts/weave-scope-frontend/Chart.yaml index 729cb3c2f3..e6f2235874 100644 --- a/stable/weave-scope/charts/weave-scope-frontend/Chart.yaml +++ b/stable/weave-scope/charts/weave-scope-frontend/Chart.yaml @@ -1,7 +1,7 @@ description: A Helm chart for the Weave Scope cluster visualizer frontend. name: weave-scope-frontend -version: 1.1.3 -appVersion: 1.11.3 +version: 1.1.5 +appVersion: 1.11.5 keywords: - containers - dashboard diff --git a/stable/weave-scope/values.yaml b/stable/weave-scope/values.yaml index f876066b54..cbbcfae74b 100644 --- a/stable/weave-scope/values.yaml +++ b/stable/weave-scope/values.yaml @@ -4,7 +4,7 @@ global: # global.image: the image that will be used for this release image: repository: weaveworks/scope - tag: 1.11.3 + tag: 1.11.5 # global.image.pullPolicy: must be Always, IfNotPresent, or Never pullPolicy: "IfNotPresent" # global.service.*: the configuration of the service used to access the frontend @@ -69,19 +69,8 @@ weave-scope-agent: # weave-scope-agent.probeToken is not needed for connecting to non-cloud Scope frontends probeToken: "" # weave-scope-agent.rbac.*: controls RBAC resource creation/use - rbac: - # weave-scope-agent.rbac.create: whether RBAC resources should be created - # weave-scope-agent.rbac.create *must* be set to false if RBAC is not enabled in the cluster - # weave-scope-agent.rbac.create *may* be set to false in an RBAC-enabled cluster to allow for external management of RBAC - create: true # Enabling readOnly adds --probe.no-controls to args list. readOnly: false - serviceAccount: - # Specifies whether a ServiceAccount should be created - create: true - # The name of the ServiceAccount to use. - # If not set and create is true, a name is generated using the fullname template - # name: "weave-scope" # weave-scope-agent.resources.*: controls requests/limits for the agent # weave-scope-agent.resources.* values are all optional but should not be set to empty values # resources: @@ -95,3 +84,41 @@ weave-scope-agent: # cpu: "" # weave-scope-agent.resources.limits.memory: memory limit in MiB (Mi) # memory: "" + +# weave-scope-agent.* controls how the Weave Scope node agent pods are installed +weave-scope-cluster-agent: + enabled: true + flags: [] + # weave-scope-cluster-agent.scopeFrontendAddr: the host:port of a Scope frontend to send data to + # weave-scope-cluster-agent.scopeFrontendAddr is only needed for some cases where the frontend is deployed separately from the agent + scopeFrontendAddr: "" + # weave-scope-cluster-agent.probeToken: the token used to connect to Weave Cloud + # weave-scope-cluster-agent.probeToken is not needed for connecting to non-cloud Scope frontends + probeToken: "" + # weave-scope-cluster-agent.rbac.*: controls RBAC resource creation/use + rbac: + # weave-scope-cluster-agent.rbac.create: whether RBAC resources should be created + # weave-scope-cluster-agent.rbac.create *must* be set to false if RBAC is not enabled in the cluster + # weave-scope-cluster-agent.rbac.create *may* be set to false in an RBAC-enabled cluster to allow for external management of RBAC + create: true + # Enabling readOnly adds --probe.no-controls to args list. + readOnly: false + serviceAccount: + # Specifies whether a ServiceAccount should be created + create: true + # The name of the ServiceAccount to use. + # If not set and create is true, a name is generated using the fullname template + # name: "weave-scope" + # weave-scope-cluster-agent.resources.*: controls requests/limits for the agent + # weave-scope-cluster-agent.resources.* values are all optional but should not be set to empty values + # resources: + # requests: + # weave-scope-cluster-agent.resources.requests.cpu: CPU req. in MHz (m) + # cpu: "" + # weave-scope-cluster-agent.resources.requests.memory: memory req. in MiB (Mi) + # memory: "" + # limits: + # weave-scope-cluster-agent.resources.limits.cpu: CPU limit in MHz (m) + # cpu: "" + # weave-scope-cluster-agent.resources.limits.memory: memory limit in MiB (Mi) + # memory: ""