k3s/cluster/addons
Kubernetes Submit Queue 04b3ab9aba Merge pull request #50705 from MrHohn/kube-proxy-ds
Automatic merge from submit-queue (batch tested with PRs 50932, 49610, 51312, 51415, 50705)

Allow running kube-proxy as a DaemonSet when using kube-up.sh on GCE

**What this PR does / why we need it**:
From #23225, this PR adds an option for user to run kube-proxy as a DaemonSet instead of static pods using GCE startup scripts. By default, kube-proxy will run as static pods.

This is the first step for moving kube-proxy into a DaemonSet in GCE, remaining tasks will be tracked on #23225.

**Special notes for your reviewer**:
The last commit are purely for testing out kube-proxy as daemonset via CIs.

cc @kubernetes/sig-network-misc @kubernetes/sig-cluster-lifecycle-misc 

**Release note**:

```release-note
When using kube-up.sh on GCE, user could set env `KUBE_PROXY_DAEMONSET=true` to run kube-proxy as a DaemonSet. kube-proxy is run as static pods by default.
```
2017-08-29 01:17:45 -07:00
..
addon-manager [addon-manager] Remove unneeded annotation codes 2017-07-31 11:19:23 -07:00
calico-policy-controller Update OWNERS files for networking components 2017-08-03 11:08:54 -07:00
cluster-loadbalancing Update OWNERS files for networking components 2017-08-03 11:08:54 -07:00
cluster-monitoring Merge pull request #51011 from xilabao/rbac-v1-in-yaml 2017-08-23 19:54:28 -07:00
dashboard update dashboard image version 2017-07-31 11:08:08 +08:00
dns Update kube-dns to 1.14.4 2017-06-25 23:53:37 -07:00
dns-horizontal-autoscaler update to rbac v1 in yaml file 2017-08-21 17:29:37 +08:00
etcd-empty-dir-cleanup make all static system pods critical 2017-06-12 15:22:04 -07:00
fluentd-elasticsearch update to rbac v1 in yaml file 2017-08-21 17:29:37 +08:00
fluentd-gcp Merge pull request #51011 from xilabao/rbac-v1-in-yaml 2017-08-23 19:54:28 -07:00
ip-masq-agent Update OWNERS files for networking components 2017-08-03 11:08:54 -07:00
kube-proxy Add kube-proxy daemonset track to GCE startup scripts (GCI, Debian and CoreOS). 2017-08-28 13:31:07 -07:00
metadata-proxy Update metadata-proxy to 0.1.2 2017-06-21 15:13:52 -07:00
node-problem-detector update related files 2017-08-24 17:49:18 +08:00
podsecuritypolicies default policy 2016-05-11 18:07:36 -04:00
python-image Always --pull in docker build to ensure recent base images 2017-01-10 16:21:05 -08:00
rbac update to rbac v1 in yaml file 2017-08-21 17:29:37 +08:00
registry fix invalid url link 2017-08-24 18:50:14 +08:00
storage-class Support running StatefulSetBasic e2e tests with local-up-cluster 2017-04-28 15:10:22 -04:00
BUILD Run hack/update-bazel.sh to generate BUILD files 2017-08-02 18:33:25 -07:00
README.md Updates READMEs regarding the new behavior of addon-manager 2017-02-24 16:42:41 -08:00

README.md

Cluster add-ons

Overview

Cluster add-ons are resources like Services and Deployments (with pods) that are shipped with the Kubernetes binaries and are considered an inherent part of the Kubernetes clusters.

There are currently two classes of add-ons:

  • Add-ons that will be reconciled.
  • Add-ons that will be created if they don't exist.

More details could be found in addon-manager/README.md.

Cooperating Horizontal / Vertical Auto-Scaling with "reconcile class addons"

"Reconcile" class addons will be periodically reconciled to the original state given by the initial config. In order to make Horizontal / Vertical Auto-scaling functional, the related fields in config should be left unset. More specifically, leave replicas in ReplicationController / Deployment / ReplicaSet unset for Horizontal Scaling, leave resources for container unset for Vertical Scaling. The periodic reconcile won't clobbered these fields, hence they could be managed by Horizontal / Vertical Auto-scaler.

Add-on naming

The suggested naming for most of the resources is <basename> (with no version number). Though resources like Pod, ReplicationController and DaemonSet are exceptional. It would be hard to update Pod because many fields in Pod are immutable. For ReplicationController and DaemonSet, in-place update may not trigger the underlying pods to be re-created. You probably need to change their names during update to trigger a complete deletion and creation.

Analytics