Commit Graph

610 Commits

Author SHA1 Message Date
Kubernetes Submit Queue
a0c34eee35 Merge pull request #33239 from MrHohn/dns-autoscaler
Automatic merge from submit-queue

Deploy kube-dns with cluster-proportional-autoscaler

This PR integrates [cluster-proportional-autoscaler](https://github.com/kubernetes-incubator/cluster-proportional-autoscaler) with kube-dns for DNS horizontal autoscaling. 

Fixes #28648 and #27781.
2016-11-07 19:31:31 -08:00
Mik Vyatskov
d478307106 Fix config file names inside fluentd-gcp image 2016-11-07 20:31:12 +01:00
Zihong Zheng
d961190e6f Deployed DNS horizontal autoscaler as an addon
DNS horizontal autoscaling feature is turned on by default on gce.
The corresponding env var is piped into almost all other cloud
providers.
2016-11-07 10:44:44 -08:00
Kubernetes Submit Queue
04a81cdd3e Merge pull request #36363 from Crassirostris/fluentd-gcp-image-build-fix
Automatic merge from submit-queue

Fix fluentd-gcp Dockerfile to reduce image size

Change reduces image size by 150MB.

@piosz
2016-11-07 07:56:11 -08:00
Mik Vyatskov
d3465e5b8c Add rescheduler logs to the fluentd-gcp configuration 2016-11-07 15:10:52 +01:00
Mik Vyatskov
220168c9aa Fix fluentd-gcp Dockerfile to reduce image size 2016-11-07 15:01:38 +01:00
Kubernetes Submit Queue
d2aabc8509 Merge pull request #35618 from Crassirostris/gcl-flunetd-config-update
Automatic merge from submit-queue

Update fluentd-gcp configuration

Related to #32762

Though it's not a final solution to the fluentd OOM problems, it increases number of logs that can be handled without losses by
- switching to the file buffering, making buffering mechanism more resilient
- decreasing size of the buffer, decreasing the amount of memory needed
- decreasing number of threads handling the load, since number of chunks is lower than previous number of threads

which results in decrease in theoretical throughput. Tests to confirm cases covered by this change will follow.

cc @piosz @edsiper @repeatedly please take look and confirm that all of these changed are meaningful.
2016-11-07 05:49:00 -08:00
Kubernetes Submit Queue
b75c3a45a1 Merge pull request #35776 from jimmycuadra/petset-rename-docs-examples
Automatic merge from submit-queue

Rename PetSet to StatefulSet in docs and examples.

**What this PR does / why we need it**: Addresses some of the pre-code-freeze changes for implementing the PetSet --> StatefulSet rename. (#35534)

**Special notes for your reviewer**: This PR only changes docs and examples, as #35731 hasn't been merged yet and I don't want to create merge conflicts. I'll open another PR for any remaining code changes needed after that PR is merged. /cc @erictune @janetkuo @chrislovecnm
2016-11-06 13:30:21 -08:00
Kubernetes Submit Queue
eeb5ef2705 Merge pull request #36226 from piosz/fluent-manifest
Automatic merge from submit-queue

Made fluentd-gcl config consitent for GCI and ContainerVM
2016-11-06 07:56:40 -08:00
Kubernetes Submit Queue
48ef0faa0e Merge pull request #35216 from edsiper/fluentd-jemalloc
Automatic merge from submit-queue

cluster-addons: enable Jemalloc for Fluentd based images

**What this PR does / why we need it**:

This Pull Request includes two patches that enable the recommended use of Jemalloc memory allocator for container images that are based in Fluentd. The patches applies to the following cluster-addons:
- fluentd-es-image
- fluentd-gcp-image

**Which issue this PR fixes** 

This PR is part of the solution for issues:
-  kubernetes/kubernetes/issues/32762
-  GoogleCloudPlatform/fluent-plugin-google-cloud/issues/87

When Fluentd runs in high load environments, it's likely the default operating system memory allocator will generate a high fragmentation ending up in a high memory usage. In order to reduce fragmentation and decrease memory usage an alternative memory allocator as Jemalloc is used. 

![](https://cloud.githubusercontent.com/assets/369718/19498577/eaa9f324-954e-11e6-9a6b-6b30310a66a3.png)

For the record: fluentd-es-image uses [td-agent](https://docs.treasuredata.com/articles/td-agent) Fluentd package maintained by Treasure Data, which contains Jemalloc 4.2.1 (latest stable version). The google-fluentd package used in fluentd-gcp-image comes with Jemalloc 2.2.5, which have many known issues, I strongly suggest google-fluentd package gets updated.

**Special notes for your reviewer**:

In the research of this topic have been involved @piosz and @Crassirostris.
2016-11-06 05:26:58 -08:00
Jimmy Cuadra
d42eabd9d2 Rename PetSet to StatefulSet in docs and examples. 2016-11-05 00:17:28 -07:00
Piotr Szczesniak
2dea8a8f8f Made fluentd-gcl config consitent for GCI and ContainerVM 2016-11-04 13:30:46 +01:00
Kubernetes Submit Queue
05a083997f Merge pull request #36103 from Crassirostris/kibana-image-fix
Automatic merge from submit-queue

Fixed kibana image and controller to work through proxy

As described in #34969, new kibana image doesn't work properly with proxies without additional configuration.

@piosz
2016-11-03 14:40:19 -07:00
Janet Kuo
c15b9470f5 Replace apps/v1alpha1 with apps/v1beta1 and manually remove generated apps/v1alpha1 files
Manually remove generated apps/v1alpha1 types, protobuf, and api-reference doc files
Manually remove apps/v1alpha1 folder from 1.5 generated client
2016-11-02 15:16:23 -07:00
Mik Vyatskov
3b6353bdc8 Fixed kibana image and controller to work through proxy 2016-11-02 22:06:22 +01:00
Mik Vyatskov
b4c7dfa674 Switched from google-fluentd to configuring fluentd from scratch 2016-11-02 12:08:36 +01:00
Mik Vyatskov
24361fce06 Update fluentd-gcp configuration 2016-11-02 12:06:01 +01:00
Christian Koep
cc1d8951a9
Fix typos and linted_packages sorting 2016-10-31 18:31:08 +01:00
Janet Kuo
10aee82ae3 Rename PetSet API to StatefulSet 2016-10-27 17:25:10 -07:00
Zihong Zheng
c449ef8a25 Added CHANGELOG to addon manager 2016-10-27 12:31:19 -07:00
Chao Xu
9a669b31d3 increment kube-addon-manager version number;
remove non-existent kube-addon-update.sh from kube-addon Dockerfile
2016-10-26 14:38:51 -07:00
gmarek
c9f8558a61 Revert "increment kube-addon-manager version number;"
This reverts commit 1f599af791.
2016-10-26 14:33:08 +02:00
Chao Xu
1f599af791 increment kube-addon-manager version number;
remove non-existent kube-addon-update.sh from kube-addon Dockerfile
2016-10-25 22:09:02 -07:00
Kubernetes Submit Queue
25f2fba0e0 Merge pull request #35338 from imikushin/fix-build-addon-manager
Automatic merge from submit-queue

Fix addon-manager image build
2016-10-25 11:02:18 -07:00
Kubernetes Submit Queue
9e50b284af Merge pull request #35435 from Crassirostris/grafana-usage-update
Automatic merge from submit-queue

Update grafana in kubernetes to version 3.1.1

Fix #33775

```release-note
Update grafana version used by default in kubernetes to 3.1.1
```

@piosz
2016-10-24 13:38:07 -07:00
Mik Vyatskov
bb4ba53de2 Update grafana in kubernetes to version 3.1.1 2016-10-24 16:46:30 +02:00
Jan Chaloupka
4fde09d308 Replace client with clientset in code 2016-10-23 22:00:35 +02:00
Mike Danese
88c1ee28ed gazel 2016-10-21 17:31:54 -07:00
Ivan Mikushin
82059781d1 addon-manager: remove kube-addon-update.sh from Dockerfile
the file no longer exists, so the build fails trying to add this file
2016-10-21 15:47:31 -07:00
Kubernetes Submit Queue
47743a5c6f Merge pull request #35219 from r2d4/update-kubectl-addon-mgr
Automatic merge from submit-queue

Update kubectl in addon-manager to v1.5.0-alpha.1

This updates the kubectl version that is vendored into the addon-manager image

`kubectl apply --prune` is currently only implemented in v1.5.0-alpha.1 ea5ecc4145

The kube-addon-manager script will fail on kubectl versions that don't have this flag
https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/addon-manager/kube-addons.sh#L154
2016-10-21 01:01:23 -07:00
Kubernetes Submit Queue
35943d6ad6 Merge pull request #34969 from Crassirostris/es-kibana-usage-update
Automatic merge from submit-queue

Update elasticsearch and kibana usage

```release-note
Updated default Elasticsearch and Kibana used for elasticsearch logging destination to versions 2.4.1 and 4.6.1 respectively.
```

Updated controllers for elasticsearch and kibana to use newer versions of images. Fixed e2e test because of elasticsearch backward incompatible API changes.

Fixed out of sync elasticsearch controller for coreos.

@piosz
2016-10-20 12:26:02 -07:00
Kubernetes Submit Queue
34a4846528 Merge pull request #34980 from MrHohn/addon-manager-readme
Automatic merge from submit-queue

Updated addon manager READMEs

Updates addon-manager's README. Based on the pre-condition that the addon manager keeps current "reconciled" pattern instead of "fire-once".

@mikedanese
2016-10-20 11:35:53 -07:00
Matt Rickard
c956b5b4e8 Update kubectl in addon-manager to v1.5.0-alpha.1
`kubectl apply --prune` was only implemented in v1.5.1-alpha.1 (ea5ecc)
2016-10-20 10:30:55 -07:00
Eduardo Silva
5e321af2ed cluser/addons: fluentd-elasticsearch: preload Jemalloc for td-agent
The current DockerFile build an image using td-agent package but it let
the service run with the default memory allocator provided by glibc.

In high load environments, is highly required to use a customized memory
allocator such as Jemalloc. Otherwise the service will face a high memory
fragmentation ending up in 'high memory' usage from a monitoring perspective.

td-agent package by default install Jemalloc and set the LD_PRELOAD
environment variable through it init script, but since the service is
launched through Docker the env variable needs to be set manually.

After this patch, when running td-agent container image now is possible
to see that Jemalloc is used:

  root@monotop:/proc/18810# cat maps |grep jemall
  7f251eddd000-7f251ee1b000 ... /opt/td-agent/embedded/lib/libjemalloc.so.2
  7f251ee1b000-7f251f01b000 ... /opt/td-agent/embedded/lib/libjemalloc.so.2
  7f251f01b000-7f251f01d000 ... /opt/td-agent/embedded/lib/libjemalloc.so.2
  7f251f01d000-7f251f01e000 ... /opt/td-agent/embedded/lib/libjemalloc.so.2

For a reference about the memory usage difference between malloc v/s jemalloc
please refer to the following chart:

  https://goo.gl/dVYTmw

Signed-off-by: Eduardo Silva <eduardo@treasure-data.com>
2016-10-20 10:50:58 -06:00
Zihong Zheng
05ce0506f8 Updated addon manager READMEs 2016-10-17 21:10:12 -07:00
Kubernetes Submit Queue
1d323adade Merge pull request #34361 from jessfraz/remove-docker-tag-f
Automatic merge from submit-queue

remove all instances of docker tag -f

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

**What this PR does / why we need it**: There is no flag `-f` for newer versions of `docker tag`

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

**Special notes for your reviewer**:

**Release note**:
<!--  Steps to write your release note:
1. Use the release-note-* labels to set the release note state (if you have access) 
2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
-->
2016-10-17 19:16:56 -07:00
Mik Vyatskov
9832ae1259 Update elasticsearch and kibana usage 2016-10-17 21:04:25 +02:00
Mik Vyatskov
7a582fcae5 Fixed kibana image 2016-10-17 17:45:59 +02:00
Kubernetes Submit Queue
fd1fd2a14c Merge pull request #34562 from Crassirostris/es-kibana-update
Automatic merge from submit-queue

Elasticsearch and Kibana update

```release-note
Updated Elasticsearch image from version 1.5.1 to version 2.4.1. Updated Kibana image from version 4.0.2 to version 4.6.1.
```

Updated es and kibana images. Made image versions match es/kibana versions they contain.

ref #19149
2016-10-17 03:04:33 -07:00
Mik Vyatskov
5b79b65bd3 Update elasticsearch and kibana images 2016-10-16 16:01:38 +02:00
Kubernetes Submit Queue
4e20339916 Merge pull request #34513 from MrHohn/addon-manager-upgrade
Automatic merge from submit-queue

Upgrade addon-manager with kubectl apply

The first step of #33698.

Use `kubectl apply` to replace addon-manager's previous logic.

The most important issue this PR is targeting is the upgrade from 1.4 to 1.5. Procedure as below:

1. Precondition: After the master is upgraded, new addon-manager starts and all the old resources on nodes are running normally.
2. Annotate the old ReplicationController resources with kubectl.kubernetes.io/last-applied-configuration=""
3. Call `kubectl apply --prune=false` on addons folder to create new addons, including the new Deployments.
4. Wait for one minute for new addons to be spinned up.
5. Enter the periodical loop of `kubectl apply --prune=true`. The old RCs will be pruned at the first call.

Procedure of a normal startup:

1. Addon-manager starts and no addon resources are running.
2. Annotate nothing.
3. Call `kubectl apply --prune=false` to create all new addons.
4. No need to explain the remain.

Remained Issues:
- Need to add `--type` flag to `kubectl apply --prune`, mentioned [here](https://github.com/kubernetes/kubernetes/pull/33075#discussion_r80814070).
- This addon manager is not working properly with the current Deployment heapster, which runs [addon-resizer](https://github.com/kubernetes/contrib/tree/master/addon-resizer) in the same pod and changes resource limit configuration through the apiserver. `kubectl apply` fights with the addon-resizers. May be we should remove the initial resource limit field in the configuration file for this specific Deployment as we removed the replica count.

@mikedanese @thockin @bprashanth 

---

Below are some logical things that may need to be clarified, feel free to **OMIT** them as they are too verbose:
- For upgrade, the old RCs will not fight with the new Deployments during the overlap period even if they use the same label in template:
 - Deployment will not recognize the old pods because it need to match an additional "pod-template-hash" label.
 - ReplicationController will not manage the new pods (created by deployment) because the [`controllerRef`](https://github.com/kubernetes/kubernetes/blob/master/docs/proposals/controller-ref.md) feature.
- As we are moving all addons to Deployment, all old RCs would be removed. Attach empty annotation to RCs is only for letting `kubectl apply --prune` to recognize them, the content does not matter.
- We might need to also annotate other resource types if we plan to upgrade them in 1.5 release:
 - They don't need to be attached this fake annotation if they remain in the same name. `kubectl apply` can recognize them by name/type/namespace.
 - In the other case, attaching empty annotations to them will still work. As the plan is to use label selector for annotate, some innocence old resources may also be attached empty annotations, they work as below two cases:
    - Resources that need to be bumped up to a newer version (mainly due to some significant update --- change disallowed fields --- that could not be managed by the update feature of `kubectl apply`) are good to go with this fake annotation, as old resources will be deleted and new sources will be created. The content in annotation does not matter.
    - Resources that need to stay inside the management of `kubectl apply` is also good to go. As `kubectl apply` will [generate a 3-way merge patch](https://github.com/kubernetes/kubernetes/blob/master/pkg/util/strategicpatch/patch.go#L1202-L1226).  This empty annotation is harmless enough.
2016-10-15 08:49:52 -07:00
Kubernetes Submit Queue
6ba83ec0a6 Merge pull request #33484 from Yancey1989/bug_addons_sed
Automatic merge from submit-queue

fix sed command run failed on mac os

bash command ```sed -i ... ``` run failed on mac os, it should be ```sed -i.back ..```
2016-10-14 23:30:07 -07:00
Jess Frazelle
40e71deb25
remove all instances of docker tag -f
Signed-off-by: Jess Frazelle <acidburn@google.com>
2016-10-13 21:26:20 -07:00
Zihong Zheng
0e4e54a6b6 Upgrade addon-manager with kubectl apply 2016-10-11 16:22:02 -07:00
Jess Frazelle
cde5559d09
Update gcloud docker commands to use gcloud docker -- ARGS
We can then avoid the following warning:
```
WARNING: The '--' argument must be specified between gcloud specific args on the left and DOCKER_ARGS on the right. IMPORTANT: previously, commands allowed the omission of the --, and unparsed arguments were treated as implementation args. This usage is being deprecated and will be removed in March 2017.
This will be strictly enforced in March 2017. Use 'gcloud beta docker' to see new behavior.
```

Signed-off-by: Jess Frazelle <acidburn@google.com>
2016-10-10 13:42:34 -07:00
MrHohn
3e55d4d6bd Bump up addon kube-dns to v20 for graceful termination 2016-09-29 18:09:20 -07:00
Yancey1989
e3c497d461 fix sed command run failed on mac os 2016-09-26 21:00:39 +08:00
MrHohn
55db76241c Tune down initialDelaySeconds for readinessProbe 2016-09-25 12:48:19 -07:00
MrHohn
d17cd1a514 Split dns healthcheck into two different urls 2016-09-22 18:02:30 -07:00
Vishnu kannan
7631b09baf remove cpu limits for dns pod. The current limits are not based on usage profiles
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-09-21 19:14:52 -07:00