mirror of https://github.com/k3s-io/k3s
Merge pull request #56219 from kawych/agents_deployment
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Add deployment for Stackdriver Metadata Agent with version and resource requirement controlled by env variable **What this PR does / why we need it**: Introduces Stackdriver Metadata Agent - a daemon set providing metadata for kubernetes objects connected to the same node. **Special notes for your reviewer**: **Release note**: ```release-note NONE ```pull/6/head
commit
ba09291ba7
|
@ -0,0 +1,6 @@
|
||||||
|
approvers:
|
||||||
|
- kawych
|
||||||
|
- piosz
|
||||||
|
reviewers:
|
||||||
|
- kawych
|
||||||
|
- piosz
|
|
@ -0,0 +1,4 @@
|
||||||
|
# Kubernetes Metadata Agent
|
||||||
|
|
||||||
|
Metadata Agent is a source of metadata required by logging and monitoring agents
|
||||||
|
running on a cluster.
|
|
@ -0,0 +1,38 @@
|
||||||
|
kind: DaemonSet
|
||||||
|
apiVersion: extensions/v1beta1
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: stackdriver-agents
|
||||||
|
kubernetes.io/cluster-service: "true"
|
||||||
|
addonmanager.kubernetes.io/mode: Reconcile
|
||||||
|
name: stackdriver-agents
|
||||||
|
namespace: kube-system
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: stackdriver-agents
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: stackdriver-agents
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- image: us.gcr.io/container-monitoring-storage/stackdriver-metadata-agent:{{ metadata_agent_version }}
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
name: metadata-agent
|
||||||
|
ports:
|
||||||
|
- containerPort: 8000
|
||||||
|
hostPort: 8000
|
||||||
|
protocol: TCP
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
cpu: {{ metadata_agent_cpu_request }}
|
||||||
|
memory: {{ metadata_agent_memory_request }}
|
||||||
|
dnsPolicy: ClusterFirst
|
||||||
|
restartPolicy: Always
|
||||||
|
schedulerName: default-scheduler
|
||||||
|
terminationGracePeriodSeconds: 30
|
||||||
|
updateStrategy:
|
||||||
|
rollingUpdate:
|
||||||
|
maxUnavailable: 1
|
||||||
|
type: RollingUpdate
|
|
@ -610,6 +610,8 @@ KUBERNETES_MASTER_NAME: $(yaml-quote ${KUBERNETES_MASTER_NAME})
|
||||||
ALLOCATE_NODE_CIDRS: $(yaml-quote ${ALLOCATE_NODE_CIDRS:-false})
|
ALLOCATE_NODE_CIDRS: $(yaml-quote ${ALLOCATE_NODE_CIDRS:-false})
|
||||||
ENABLE_CLUSTER_MONITORING: $(yaml-quote ${ENABLE_CLUSTER_MONITORING:-none})
|
ENABLE_CLUSTER_MONITORING: $(yaml-quote ${ENABLE_CLUSTER_MONITORING:-none})
|
||||||
ENABLE_METRICS_SERVER: $(yaml-quote ${ENABLE_METRICS_SERVER:-false})
|
ENABLE_METRICS_SERVER: $(yaml-quote ${ENABLE_METRICS_SERVER:-false})
|
||||||
|
ENABLE_METADATA_AGENT: $(yaml-quote ${ENABLE_METADATA_AGENT:-none})
|
||||||
|
METADATA_AGENT_VERSION: $(yaml-quote ${METADATA_AGENT_VERSION:-})
|
||||||
DOCKER_REGISTRY_MIRROR_URL: $(yaml-quote ${DOCKER_REGISTRY_MIRROR_URL:-})
|
DOCKER_REGISTRY_MIRROR_URL: $(yaml-quote ${DOCKER_REGISTRY_MIRROR_URL:-})
|
||||||
ENABLE_L7_LOADBALANCING: $(yaml-quote ${ENABLE_L7_LOADBALANCING:-none})
|
ENABLE_L7_LOADBALANCING: $(yaml-quote ${ENABLE_L7_LOADBALANCING:-none})
|
||||||
ENABLE_CLUSTER_LOGGING: $(yaml-quote ${ENABLE_CLUSTER_LOGGING:-false})
|
ENABLE_CLUSTER_LOGGING: $(yaml-quote ${ENABLE_CLUSTER_LOGGING:-false})
|
||||||
|
|
|
@ -150,6 +150,16 @@ ENABLE_CLUSTER_MONITORING="${KUBE_ENABLE_CLUSTER_MONITORING:-influxdb}"
|
||||||
# TODO(piosz) remove this option once Metrics Server became a stable thing.
|
# TODO(piosz) remove this option once Metrics Server became a stable thing.
|
||||||
ENABLE_METRICS_SERVER="${KUBE_ENABLE_METRICS_SERVER:-true}"
|
ENABLE_METRICS_SERVER="${KUBE_ENABLE_METRICS_SERVER:-true}"
|
||||||
|
|
||||||
|
# Optional: Metadata agent to setup as part of the cluster bring up:
|
||||||
|
# none - No metadata agent
|
||||||
|
# stackdriver - Stackdriver metadata agent
|
||||||
|
# Metadata agent is a daemon set that provides metadata of kubernetes objects
|
||||||
|
# running on the same node for exporting metrics and logs.
|
||||||
|
ENABLE_METADATA_AGENT="${KUBE_ENABLE_METADATA_AGENT:-none}"
|
||||||
|
|
||||||
|
# Version tag of metadata agent
|
||||||
|
METADATA_AGENT_VERSION="${KUBE_METADATA_AGENT_VERSION:-0.2-0.0.13-5}"
|
||||||
|
|
||||||
# One special node out of NUM_NODES would be created of this type if specified.
|
# One special node out of NUM_NODES would be created of this type if specified.
|
||||||
# Useful for scheduling heapster in large clusters with nodes of small size.
|
# Useful for scheduling heapster in large clusters with nodes of small size.
|
||||||
HEAPSTER_MACHINE_TYPE="${HEAPSTER_MACHINE_TYPE:-}"
|
HEAPSTER_MACHINE_TYPE="${HEAPSTER_MACHINE_TYPE:-}"
|
||||||
|
|
|
@ -1297,6 +1297,20 @@ EOF
|
||||||
sed -i -e "s@{{ use_new_resources }}@${use_new_resources}@g" "${controller_yaml}"
|
sed -i -e "s@{{ use_new_resources }}@${use_new_resources}@g" "${controller_yaml}"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
if [[ "${ENABLE_CLUSTER_MONITORING:-}" == "stackdriver" ]] ||
|
||||||
|
([[ "${ENABLE_CLUSTER_LOGGING:-}" == "true" ]] &&
|
||||||
|
[[ "${LOGGING_DESTINATION:-}" == "gcp" ]]); then
|
||||||
|
if [[ "${ENABLE_METADATA_AGENT:-}" == "stackdriver" ]] &&
|
||||||
|
[[ "${METADATA_AGENT_VERSION:-}" != "" ]]; then
|
||||||
|
metadata_agent_cpu_request="${METADATA_AGENT_CPU_REQUEST:-40m}"
|
||||||
|
metadata_agent_memory_request="${METADATA_AGENT_MEMORY_REQUEST:-50Mi}"
|
||||||
|
setup-addon-manifests "addons" "metadata-agent/stackdriver"
|
||||||
|
deployment_yaml="${dst_dir}/metadata-agent/stackdriver/metadata-agent.yaml"
|
||||||
|
sed -i -e "s@{{ metadata_agent_version }}@${METADATA_AGENT_VERSION}@g" "${deployment_yaml}"
|
||||||
|
sed -i -e "s@{{ metadata_agent_cpu_request }}@${metadata_agent_cpu_request}@g" "${deployment_yaml}"
|
||||||
|
sed -i -e "s@{{ metadata_agent_memory_request }}@${metadata_agent_memory_request}@g" "${deployment_yaml}"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
if [[ "${ENABLE_METRICS_SERVER:-}" == "true" ]]; then
|
if [[ "${ENABLE_METRICS_SERVER:-}" == "true" ]]; then
|
||||||
setup-addon-manifests "addons" "metrics-server"
|
setup-addon-manifests "addons" "metrics-server"
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -2076,6 +2076,20 @@ EOF
|
||||||
sed -i -e "s@{{ use_new_resources }}@${use_new_resources}@g" "${controller_yaml}"
|
sed -i -e "s@{{ use_new_resources }}@${use_new_resources}@g" "${controller_yaml}"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
if [[ "${ENABLE_CLUSTER_MONITORING:-}" == "stackdriver" ]] ||
|
||||||
|
([[ "${ENABLE_CLUSTER_LOGGING:-}" == "true" ]] &&
|
||||||
|
[[ "${LOGGING_DESTINATION:-}" == "gcp" ]]); then
|
||||||
|
if [[ "${ENABLE_METADATA_AGENT:-}" == "stackdriver" ]] &&
|
||||||
|
[[ "${METADATA_AGENT_VERSION:-}" != "" ]]; then
|
||||||
|
metadata_agent_cpu_request="${METADATA_AGENT_CPU_REQUEST:-40m}"
|
||||||
|
metadata_agent_memory_request="${METADATA_AGENT_MEMORY_REQUEST:-50Mi}"
|
||||||
|
setup-addon-manifests "addons" "metadata-agent/stackdriver"
|
||||||
|
deployment_yaml="${dst_dir}/metadata-agent/stackdriver/metadata-agent.yaml"
|
||||||
|
sed -i -e "s@{{ metadata_agent_version }}@${METADATA_AGENT_VERSION}@g" "${deployment_yaml}"
|
||||||
|
sed -i -e "s@{{ metadata_agent_cpu_request }}@${metadata_agent_cpu_request}@g" "${deployment_yaml}"
|
||||||
|
sed -i -e "s@{{ metadata_agent_memory_request }}@${metadata_agent_memory_request}@g" "${deployment_yaml}"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
if [[ "${ENABLE_METRICS_SERVER:-}" == "true" ]]; then
|
if [[ "${ENABLE_METRICS_SERVER:-}" == "true" ]]; then
|
||||||
setup-addon-manifests "addons" "metrics-server"
|
setup-addon-manifests "addons" "metrics-server"
|
||||||
fi
|
fi
|
||||||
|
|
Loading…
Reference in New Issue