k3s/cluster/addons
Kubernetes Submit Queue df09802b60
Merge pull request #65627 from IvanovOleg/master
Automatic merge from submit-queue (batch tested with PRs 64758, 65627). 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>.

Fixed the wrong elasticsearch node counter

**What this PR does / why we need it**:
I am experiencing the nasty bug during the deployment of the elasticsearch-logging statefulset on my custom Kubernetes in Azure (AzureDisk persistant storage). Let's imaging that we want two master nodes which our elasticsearch will try to find during the discovery procedure. Because of the delay between creation of two nodes (azure disk creation) there will be a situation when only one node exists in the service endpoint list and it will be enough to pass the elasticsearch logging discovery step. Only one node will be written to the elasticsearch.yml, but it expects two. Elasticsearch will not be able to find required two nodes. Then Kubernetes will terminate the first pod while the second pod is almost ready (remove that endpoint from service). Then it adds the ip of the second pod to the endpoint and discovery fails as well. This is the endless procedure.

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes #

**Special notes for your reviewer**:

**Release note**:

```release-note
Fixes the wrong elasticsearch node counter

```
2018-06-30 04:41:59 -07:00
..
addon-manager Update all script to use /usr/bin/env bash in shebang 2018-04-19 13:20:13 +02:00
calico-policy-controller A few cleanups (remove duplicated env vars & unnecessary comments) on yaml files. 2018-06-12 10:53:54 -07:00
cluster-loadbalancing Use default seccomp profile for addons 2018-05-02 22:50:29 -07:00
cluster-monitoring Pass cluster_location argument to Heapster 2018-06-18 13:54:22 +02:00
dashboard Merge pull request #64228 from tallclair/dashboard-owners 2018-06-19 18:45:46 -07:00
device-plugins/nvidia-gpu Update nvidia-gpu-device-plugin to apps/v1 and use RollingUpdate updateStrategy. 2018-05-24 17:53:13 -07:00
dns add scrape port to service 2018-06-28 13:26:11 -04:00
dns-horizontal-autoscaler Use default seccomp profile for addons 2018-05-02 22:50:29 -07:00
fluentd-elasticsearch Fixed the wrong elasticsearch node counter 2018-06-29 23:03:04 +03:00
fluentd-gcp Use correct field for exception detection. 2018-06-22 12:58:41 +02:00
ip-masq-agent Merge pull request #59237 from tanshanshan/addons1 2018-02-12 15:44:36 -08:00
istio Modify security profile for proxy 2018-06-04 14:06:22 -07:00
kube-proxy Set pod priority on kube-proxy by default 2018-02-20 20:39:48 -08:00
metadata-agent Renamed with psp-binding suffix 2018-06-29 12:23:29 +02:00
metadata-proxy Added network-unavailable tolerations for hostNetwork=true. 2018-03-19 23:57:26 +08:00
metrics-server Use default seccomp profile for addons 2018-05-02 22:50:29 -07:00
node-problem-detector `exec` away the shell for node-problem-detector 2018-03-09 16:07:30 -08:00
prometheus [prometheus addon] Fix missing storage class in alertmanager PVC 2018-04-30 12:30:20 +02:00
python-image remove gcloud docker -- since it's deprecated 2018-02-28 00:24:27 -08:00
rbac Limit access to configmaps 2018-06-08 18:02:37 +02:00
storage-class [addon/storage-class] update storageclass groupversion in storage-class 2017-10-22 19:50:47 +08:00
BUILD Use the pkg_tar wrapper from kubernetes/repo-infra 2018-01-18 17:10:16 -08:00
README.md Updated cluster/addons readme to match and point to docs 2017-10-18 10:36:24 -04:00

README.md

Legacy Cluster add-ons

For more information on add-ons see the documentation.

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