Commit Graph

517 Commits (4b26d70dafeb6ed046fc07e6e223600fc7e55e7e)

Author SHA1 Message Date
Kubernetes Submit Queue 1e879c69ec Merge pull request #43544 from liggitt/legacy-abac-kube-up
Automatic merge from submit-queue (batch tested with PRs 43546, 43544)

Default to enabling legacy ABAC policy in non-test kube-up.sh environments

Fixes https://github.com/kubernetes/kubernetes/issues/43541

In 1.5, we unconditionally stomped the abac policy file if KUBE_USER was set, and unconditionally used ABAC mode pointing to that file.

In 1.6, unless the user opts out (via `ENABLE_LEGACY_ABAC=false`), we want the same legacy policy included as a fallback to RBAC.

This PR:
* defaults legacy ABAC **on** in normal deployments
* defaults legacy ABAC **on** in upgrade E2Es (ensures combination of ABAC and RBAC works properly for upgraded clusters)
* defaults legacy ABAC **off** in non-upgrade E2Es (ensures e2e tests 1.6+ run with tightened permissions, and that default RBAC roles cover the required core components)

GKE changes to drive the `ENABLE_LEGACY_ABAC` envvar were made by @cjcullen out of band

```release-note
`kube-up.sh` using the `gce` provider enables both RBAC authorization and the permissive legacy ABAC policy that makes all service accounts superusers. To opt out of the permissive ABAC policy, export the environment variable `ENABLE_LEGACY_ABAC=false` before running `cluster/kube-up.sh`.
```
2017-03-23 14:13:18 -07:00
Jordan Liggitt b95f5286c1
Default to enabling legacy ABAC policy in non-test GCE kube-up.sh environments 2017-03-22 22:20:09 -04:00
Kubernetes Submit Queue c415325ced Merge pull request #43537 from Random-Liu/disable-master-taint-by-default
Automatic merge from submit-queue

Add an env KUBE_ENABLE_MASTER_NOSCHEDULE_TAINT and disable it by default

This PR changed master `NoSchedule` taint to opt-in.

As is discussed with @bgrant0607 @janetkuo, `NoSchedule` master taint breaks existing user workload, we should not enable it by default.

Previously, NPD required the taint because it can only support one OS distro with a specific configuration. If master and node are using different OS distros, NPD will not work either on master or node. However, we've already fixed this in https://github.com/kubernetes/kubernetes/pull/40206, so for NPD it's fine to disable the taint.

This should work, but I'll still try it in my cluster to confirm.

@kubernetes/sig-scheduling-misc @dchen1107 @mikedanese
2017-03-22 17:03:33 -07:00
Random-Liu 965c262aab Remove the master NoSchedule taint. 2017-03-22 15:35:13 -07:00
Mike Danese 3b83eb538c link the server.key to the key not the crt 2017-03-22 10:29:42 -07:00
Kubernetes Submit Queue b2525d43ed Merge pull request #43164 from cjcullen/abac
Automatic merge from submit-queue

Allow ABAC to be disabled easily on upgrades

**What this PR does / why we need it**:
Adds a local variable to the configure-helper script so that ABAC_AUTHZ_FILE can be set to a nonexistent file in kube-env to disable ABAC on a cluster that previously was using ABAC.

@liggitt @Q-Lee
2017-03-16 12:09:40 -07:00
Matt Liggett c79d74f382 Force create symlinks. 2017-03-15 14:03:46 -07:00
CJ Cullen 1534cbf1fa Add abac_authorization_file local var to allow ABAC_AUTHZ_FILE to be set outside the script. 2017-03-15 13:28:18 -07:00
shashidharatd b09b20b598 Remove FEDERATIONS_DOMAIN_MAP references 2017-03-15 23:06:16 +05:30
Mike Danese 361c40cc66 add a compatibility shim for certs to support a cluster downgrade 2017-03-14 09:25:50 -07:00
Quintin Lee 4628abfd9c Fixing unbound bash variable. 2017-03-02 15:42:56 -08:00
Kubernetes Submit Queue 1864e0516d Merge pull request #42192 from mikedanese/mds-block
Automatic merge from submit-queue (batch tested with PRs 41980, 42192, 42223, 41822, 42048)

add kube-env variable to block traffic to metadataserver

@Q-Lee @thockin
2017-03-02 00:59:16 -08:00
Kubernetes Submit Queue e22eca743f Merge pull request #42197 from jcbsmpsn/legacy-abac-16
Automatic merge from submit-queue (batch tested with PRs 41931, 39821, 41841, 42197, 42195)

Adding legacy ABAC for 1.6

This is a fork of a previous [pull request](https://github.com/kubernetes/kubernetes/pull/42014) to include feedback as the original author is unavailable.

Adds a mechanism to optionally enable legacy abac for 1.6 to provide a migration path for existing users.
2017-03-01 20:08:05 -08:00
Jing Xu 4d6a6ec507 Add bind mount /etc/resolv.conf from host to containerized mounter
Currently, in containerized mounter rootfs, there is no DNS setup. By
bind mount the host's /etc/resolv.conf to mounter rootfs, vm hosts name
could be resolved when using host name during mount.
2017-03-01 17:15:14 -08:00
Mike Danese 90b26465d7 fix upgrades 2017-02-28 14:52:37 -08:00
Kubernetes Submit Queue 81d01a84e0 Merge pull request #41944 from jingxu97/Feb/mounter
Automatic merge from submit-queue (batch tested with PRs 35094, 42095, 42059, 42143, 41944)

Use chroot for containerized mounts

This PR is to modify the containerized mounter script to use chroot
instead of rkt fly. This will avoid the problem of possible large number
of mounts caused by rkt containers if they are not cleaned up.
2017-02-28 09:20:21 -08:00
Kubernetes Submit Queue dac0296f0b Merge pull request #42093 from liggitt/avoid-fake-node-names
Automatic merge from submit-queue (batch tested with PRs 40746, 41699, 42108, 42174, 42093)

Avoid fake node names in user info

Node usernames should follow the format `system:node:<node-name>`,
but if we don't know the node name, it's worse to put a fake one in.

In the future, we plan to have a dedicated node authorizer, which would
start rejecting requests from a user with a bogus node name like this.

The right approach is to either mint correct credentials per node, or use node bootstrapping so it requests a correct client certificate itself.
2017-02-28 07:51:33 -08:00
Kubernetes Submit Queue 5981ce304a Merge pull request #41937 from cheftako/changePassword
Automatic merge from submit-queue (batch tested with PRs 41937, 41151, 42092, 40269, 42135)

GCE will properly regenerate basic_auth.csv on kube-apiserver start.

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

If basic_auth.csv does not exist we will generate it as normal.
If basic_auth.csv exists we will remove the old admin password before adding the "new" one. (Turns in to a no-op if the password exists).
This did not work properly before because we were replacing by key, where the key was the password. New password would not match and so not replace the old password.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
```
2017-02-28 01:24:03 -08:00
Mike Danese 34e02c9989 add kube-env variable to block traffic to metadataserver 2017-02-27 16:54:44 -08:00
Quintin Lee 3adac0dace Adding legacy ABAC for 1.6 2017-02-27 14:38:54 -08:00
Kubernetes Submit Queue b18bad156d Merge pull request #40634 from Crassirostris/use-docker-log-rotation
Automatic merge from submit-queue

Use docker log rotation mechanism instead of logrotate

This is a solution for https://github.com/kubernetes/kubernetes/issues/38495.

Instead of rotating logs using logrotate tool, which is configured quite rigidly, this PR makes docker responsible for the rotation and makes it possible to configure docker logging parameters. It solves the following problems:

* Logging agent will stop loosing lines upon rotation
* Container's logs size will be more strictly constrained. Instead of checking the size hourly, size will be checked upon write, preventing https://github.com/kubernetes/kubernetes/issues/27754

It's still far from ideal, for example setting logging options per pod, as suggested in https://github.com/kubernetes/kubernetes/issues/15478 would be much more flexible, but latter approach requires deep changes, including changes in API, which may be in vain because of CRI and long-term vision for logging.

Changes include:

* Change in salt. It's possible to configure docker log parameters, using variables in pillar. They're exported from env variables on `gce`, but for different cloud provider they have to be exported first.
* Change in `configure-helper.sh` scripts for those os on `gce` that don't use salt + default values exposed via env variables

This change may be problematic for kubelet logs functionality with CRI enabled, that will be tackled in the follow-up PR, if confirmed.

CC @piosz @Random-Liu @yujuhong @dashpole @dchen1107 @vishh @kubernetes/sig-node-pr-reviews

```release-note
On GCI by default logrotate is disabled for application containers in favor of rotation mechanism provided by docker logging driver.
```
2017-02-26 20:39:34 -08:00
Walter Fender d7f43a6bca GCE will properly regenerate basic_auth.csv on kube-apiserver start.
If the file does not exist we will generate it as normal.
If the file exists we will remove the old admin password before adding
the "new" one. (Turns in to a no-op if the password exists).
This did not work properly before because we were replacing by key,
where the key was the password. New password would not match and so
not replace the old password.
Added a METADATA_CLOBBERS_CONFIG flag
METADATA_CLOBBERS_CONFIG controls if we consider the values on disk or in
metadata to be the canonical source of truth. Currently defaulting to
false for GCE and forcing to true for GKE.
Added handling for older forms of the basic_auth.csv file.
Fixed comment to reflect new METADATA_CLOBBERS_CONFIG var.
2017-02-25 11:31:59 -08:00
Jordan Liggitt 34ac0dc302
Avoid fake node names in user info 2017-02-25 02:09:55 -05:00
Jing Xu ac22416835 Use chroot for containerized mounts
This PR is to modify the containerized mounter script to use chroot
instead of rkt fly. This will avoid the problem of possible large number
of mounts caused by rkt containers if they are not cleaned up.
2017-02-24 13:46:26 -08:00
Mike Danese 192392bddd refactor certs in GCE 2017-02-23 10:12:31 -08:00
Kubernetes Submit Queue 409d7d0a91 Merge pull request #41326 from ncdc/ci-cache-mutation
Automatic merge from submit-queue (batch tested with PRs 41364, 40317, 41326, 41783, 41782)

Add ability to enable cache mutation detector in GCE

Add the ability to enable the cache mutation detector in GCE. The current default behavior (disabled) is retained.

When paired with https://github.com/kubernetes/test-infra/pull/1901, we'll be able to detect shared informer cache mutations in gce e2e PR jobs.
2017-02-21 07:45:42 -08:00
Random-Liu d40c0a7099 Add standalone npd on GCI. 2017-02-17 16:18:08 -08:00
Andy Goldstein 688c19ec71 Allow cache mutation detector enablement by PRs
Allow cache mutation detector enablement by PRs in an attempt to find
mutations before they're merged in to the code base. It's just for the
apiserver and controller-manager for now. If/when the other components
start using a SharedInformerFactory, we should set them up just like
this as well.
2017-02-17 10:03:13 -05:00
Wojciech Tyczynski 3695e85b34 Expose storage media type as env variable 2017-02-17 14:16:55 +01:00
Kubernetes Submit Queue 33aedca59d Merge pull request #41332 from jszczepkowski/etcd-cluster-state-16
Automatic merge from submit-queue

Added configurable etcd initial-cluster-state to kube-up script.

Added configurable etcd initial-cluster-state to kube-up script. This
allows creation of multi-master cluster from scratch. This is a
cherry-pick of #41320 from 1.5 branch.

```release-note
Added configurable etcd initial-cluster-state to kube-up script.
```
2017-02-15 10:04:31 -08:00
Mik Vyatskov cabb9890ac Use docker log rotation mechanism instead of logrotate 2017-02-15 16:22:29 +01:00
Kubernetes Submit Queue 4c02f29196 Merge pull request #41211 from enisoc/configure-audit-log
Automatic merge from submit-queue (batch tested with PRs 40297, 41285, 41211, 41243, 39735)

cluster/gce: Add env var to enable apiserver basic audit log.

For now, this is focused on a fixed set of flags that makes the audit
log show up under /var/log/kube-apiserver-audit.log and behave similarly
to /var/log/kube-apiserver.log. Allowing other customization would
require significantly more complex changes.

Audit log rotation is handled the same as for `kube-apiserver.log`.

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

Add a knob to enable [basic audit logging](https://kubernetes.io/docs/admin/audit/) in GCE.

**Which issue this PR fixes**:

**Special notes for your reviewer**:

We would like to cherrypick/port this to release-1.5 also.

**Release note**:
```release-note
The kube-apiserver [basic audit log](https://kubernetes.io/docs/admin/audit/) can be enabled in GCE by exporting the environment variable `ENABLE_APISERVER_BASIC_AUDIT=true` before running `cluster/kube-up.sh`. This will log to `/var/log/kube-apiserver-audit.log` and use the same `logrotate` settings as `/var/log/kube-apiserver.log`.
```
2017-02-15 03:25:12 -08:00
Jordan Liggitt cc11d7367a
Switch kube-scheduler to secure API access 2017-02-15 01:05:42 -05:00
Anthony Yeh 7500746e7f cluster/gce: Add env var to enable apiserver basic audit log.
For now, this is focused on a fixed set of flags that makes the audit
log show up under /var/log/kube-apiserver-audit.log and behave similarly
to /var/log/kube-apiserver.log. Allowing other customization would
require significantly more complex changes.

Audit log rotation is handled externally by the wildcard /var/log/*.log
already configured in configure-helper.sh.
2017-02-14 15:18:10 -08:00
Jerzy Szczepkowski 80e57b7016 Added configurable etcd initial-cluster-state to kube-up script.
Added configurable etcd initial-cluster-state to kube-up script. This
allows creation of multi-master cluster from scratch. This is a
cherry-pick of #41320 from 1.5 branch.
2017-02-13 16:10:47 +01:00
Mike Danese c8ce55fef4 Revert "Merge pull request #41132 from kubernetes/revert-40893-kubelet-auth"
This reverts commit fd56078298, reversing
changes made to d953402cdf.
2017-02-09 15:55:12 -08:00
Kubernetes Submit Queue b7772e4f89 Merge pull request #40048 from mtaufen/remove-deprecated-flags
Automatic merge from submit-queue (batch tested with PRs 41121, 40048, 40502, 41136, 40759)

Remove deprecated kubelet flags that look safe to remove

Removes:
```
--config
--auth-path
--resource-container
--system-container
```
which have all been marked deprecated since at least 1.4 and look safe to remove.

```release-note
The deprecated flags --config, --auth-path, --resource-container, and --system-container were removed.
```
2017-02-09 14:27:45 -08:00
Wojciech Tyczynski 3828188049 Set quota bytes by default 2017-02-08 10:40:24 +01:00
Wojciech Tyczynski 63531e56c5 Default TARGET_STORAGE to etcd3 in etcd manifest 2017-02-08 10:40:24 +01:00
Michael Taufen 982df56c52 Replace uses of --config with --pod-manifest-path 2017-02-07 14:32:37 -08:00
Kubernetes Submit Queue b1279a31b9 Merge pull request #40172 from liggitt/abac-upgrade
Automatic merge from submit-queue (batch tested with PRs 38739, 40480, 40495, 40172, 40393)

Use existing ABAC policy file when upgrading GCE cluster

When upgrading, continue loading an existing ABAC policy file so that existing system components continue working as-is

```
When upgrading an existing 1.5 GCE cluster using `cluster/gce/upgrade.sh`, an existing ABAC policy file located at /etc/srv/kubernetes/abac-authz-policy.jsonl (the default location in 1.5) will enable the ABAC authorizer in addition to the RBAC authorizer. To switch an upgraded 1.5 cluster completely to RBAC, ensure the control plane components and your superuser have been granted sufficient RBAC permissions, move the legacy ABAC policy file to a backup location, and restart the apiserver.
```
2017-01-25 21:20:32 -08:00
Mike Danese 513994a9f8 pass CA key to signer in GCE 2017-01-20 11:10:19 -08:00
Jordan Liggitt e6a63c8f40
Use existing ABAC policy file when upgrading GCE cluster 2017-01-19 16:46:08 -05:00
Kubernetes Submit Queue 6dfe5c49f6 Merge pull request #38865 from vwfs/ext4_no_lazy_init
Automatic merge from submit-queue

Enable lazy initialization of ext3/ext4 filesystems

**What this PR does / why we need it**: It enables lazy inode table and journal initialization in ext3 and ext4.

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

**Release note**:
```release-note
Enable lazy inode table and journal initialization for ext3 and ext4
```

**Special notes for your reviewer**:
This PR removes the extended options to mkfs.ext3/mkfs.ext4, so that the defaults (enabled) for lazy initialization are used.

These extended options come from a script that was historically located at */usr/share/google/safe_format_and_mount* and later ported to GO so this dependency to the script could be removed. After some search, I found the original script here: https://github.com/GoogleCloudPlatform/compute-image-packages/blob/legacy/google-startup-scripts/usr/share/google/safe_format_and_mount

Checking the history of this script, I found the commit [Disable lazy init of inode table and journal.](4d7346f7f5). This one introduces the extended flags with this description:
```
Now that discard with guaranteed zeroing is supported by PD,
initializing them is really fast and prevents perf from being affected
when the filesystem is first mounted.
```

The problem is, that this is not true for all cloud providers and all disk types, e.g. Azure and AWS. I only tested with magnetic disks on Azure and AWS, so maybe it's different for SSDs on these cloud providers. The result is that this performance optimization dramatically increases the time needed to format a disk in such cases.

When mkfs.ext4 is told to not lazily initialize the inode tables and the check for guaranteed zeroing on discard fails, it falls back to a very naive implementation that simply loops and writes zeroed buffers to the disk. Performance on this highly depends on free memory and also uses up all this free memory for write caching, reducing performance of everything else in the system. 

As of https://github.com/kubernetes/kubernetes/issues/30752, there is also something inside kubelet that somehow degrades performance of all this. It's however not exactly known what it is but I'd assume it has something to do with cgroups throttling IO or memory. 

I checked the kernel code for lazy inode table initialization. The nice thing is, that the kernel also does the guaranteed zeroing on discard check. If it is guaranteed, the kernel uses discard for the lazy initialization, which should finish in a just few seconds. If it is not guaranteed, it falls back to using *bio*s, which does not require the use of the write cache. The result is, that free memory is not required and not touched, thus performance is maxed and the system does not suffer.

As the original reason for disabling lazy init was a performance optimization and the kernel already does this optimization by default (and in a much better way), I'd suggest to completely remove these flags and rely on the kernel to do it in the best way.
2017-01-18 09:09:52 -08:00
Jordan Liggitt d94bb26776
Conditionally write token file entries 2017-01-13 17:59:46 -05:00
Jordan Liggitt 968b0b30cf
Update token users if needed 2017-01-11 17:21:12 -05:00
Jordan Liggitt 21b422fccc
Allow enabling ABAC authz 2017-01-11 17:20:51 -05:00
Jordan Liggitt 1fe517e96a
Include admin in super-user group 2017-01-11 17:20:42 -05:00
Mike Danese 3ab0e37cc6 implement upgrades 2017-01-04 11:45:57 -08:00
CJ Cullen d0997a3d1f Generate a kubelet CA and kube-apiserver cert-pair for kubelet auth.
Plumb through to kubelet/kube-apiserver on gci & cvm.
2017-01-03 14:30:45 -08:00
deads2k ecd23a0217 remove abac authorizer from e2e 2017-01-03 07:53:03 -05:00
deads2k 19391164b9 add additional e2e rbac bindings to match existing users 2016-12-21 16:24:45 -05:00
deads2k 2e2a2e4b94 update gce for RBAC, controllers, proxy, kubelet (p1) 2016-12-21 13:51:49 -05:00
Alexander Block 13a2bc8afb Enable lazy initialization of ext3/ext4 filesystems 2016-12-18 11:08:51 +01:00
Piotr Szczesniak a52637f09f Migrated fluentd to daemon set 2016-12-15 13:48:32 +01:00
Zihong Zheng 4ad06df18f Renames kube-dns configure files from skydns* to kubedns* 2016-12-08 20:01:19 -08:00
Kubernetes Submit Queue f2014abf6f Merge pull request #36778 from cjcullen/basicauth
Automatic merge from submit-queue (batch tested with PRs 38294, 37009, 36778, 38130, 37835)

Only configure basic auth on gci if KUBE_USER and KUBE_PASSWORD are specified.

This should not change the existing flow when KUBE_USER/KUBE_PASSWORD are specified.
It makes not specifying those a valid option that means "don't turn on basic auth".
I only did it for cluster/gce/gci for now, but others should be somewhat similar.
2016-12-07 10:45:18 -08:00
Mike Danese e225625a80 add a configuration for kubelet to register as a node with taints
and deprecate register-schedulable
2016-12-06 10:32:54 -08:00
Kubernetes Submit Queue 9d7644286d Merge pull request #37664 from euank/fix-gci-typo
Automatic merge from submit-queue (batch tested with PRs 37870, 36643, 37664, 37545)

cluster/gci: Fix typo
2016-12-06 00:22:56 -08:00
gmarek aef56cdf21 Increase max mutating inflight requests in large clusters 2016-12-05 09:33:05 +01:00
Kubernetes Submit Queue ce4af7f0b5 Merge pull request #37941 from Crassirostris/fluentd-gcp-config-unification
Automatic merge from submit-queue (batch tested with PRs 37692, 37785, 37647, 37941, 37856)

Use unified gcp fluentd image for gci and cvm

Follow-up of https://github.com/kubernetes/kubernetes/pull/37681

Actually unify the pod specs for CVM and GCI, to simplify the configuration

CC @piosz
2016-12-03 11:45:02 -08:00
Kubernetes Submit Queue 2cdb97d413 Merge pull request #37593 from yujuhong/gci_rm_docker_network
Automatic merge from submit-queue

GCI: Remove /var/lib/docker/network
2016-12-01 13:24:22 -08:00
Mik Vyatskov 74a3b77c73 Use unified gcp fluentd image for gci and cvm 2016-12-01 17:29:27 +01:00
Kubernetes Submit Queue 1570aad238 Merge pull request #37451 from jszczepkowski/ha-read-quorum
Automatic merge from submit-queue

Added setting etcd read quorum flag
2016-12-01 06:31:24 -08:00
Kubernetes Submit Queue 85ff555954 Merge pull request #31617 from jsafrane/default-storage-class
Automatic merge from submit-queue

Deploy a default StorageClass instance on AWS and GCE

This needs a newer kubectl in kube-addons-manager container. It's quite tricky to test as I cannot push new container image to gcr.io and I must copy the newer container manually.

cc @kubernetes/sig-storage

**Release note**:
```release-note
Kubernetes now installs a default StorageClass object when deployed on AWS, GCE and
OpenStack with kube-up.sh scripts. This StorageClass will automatically provision
a PeristentVolume in corresponding cloud for a PersistentVolumeClaim that cannot be
satisfied by any existing matching PersistentVolume in Kubernetes.

To override this default provisioning, administrators must manually delete this default StorageClass.
```
2016-11-29 20:52:01 -08:00
Euan Kemp 5c6e2aaef9 cluster/gci: Fix typo 2016-11-29 16:03:35 -08:00
Yu-Ju Hong 47c3b05fa3 GCI: Remove /var/lib/docker/network
This avoids running into corrupt network checkpoint issues.
2016-11-28 17:58:43 -08:00
Jerzy Szczepkowski 02542cae06 Added setting etcd read quorum flag.
Added setting etcd read quorum flag in kube-up scripts. Required for HA master.
2016-11-25 13:53:11 +01:00
Robert Bailey 60dbfc9a71 Fix an else branch in configure-helper.sh. 2016-11-23 00:42:06 -08:00
Jan Safranek b52d971aee stash 2016-11-21 10:16:29 +01:00
CJ Cullen 8af7fc6f00 Only configure basic auth on gci if KUBE_USER & KUBE_PASSWORD are specified.
Knock out the garbage {{kube_user}} abac line when KUBE_USER isn't specified.
2016-11-14 18:58:56 -08:00
Jerzy Szczepkowski ab7266bf19 SSL certificates for etcd cluster.
Added generation of SSL certificates for etcd cluster internal
communication. Turned on on gci & trusty.
2016-11-10 15:26:03 +01:00
Kubernetes Submit Queue 1014bc411a Merge pull request #36346 from jszczepkowski/ha-masterip
Automatic merge from submit-queue

Change master to advertise external IP in kubernetes service.

Change master to advertise external IP in kubernetes service.
In effect, in HA mode in case of multiple masters, IP of external load
balancer will be advertise in kubernetes service.
2016-11-10 05:00:48 -08:00
Kubernetes Submit Queue c98fc70195 Merge pull request #36008 from MrHohn/addon-rc-migrate
Automatic merge from submit-queue

Migrates addons from RCs to Deployments

Fixes #33698.

Below addons are being migrated:
- kube-dns
- GLBC default backend
- Dashboard UI
- Kibana

For the new deployments, the version suffixes are removed from their names. Version related labels are also removed because they are confusing and not needed any more with regard to how Deployment and the new Addon Manager works.

The `replica` field in `kube-dns` Deployment manifest is removed for the incoming DNS horizontal autoscaling feature #33239.

The `replica` field in `Dashboard` Deployment manifest is also removed because the rescheduler e2e test is manually scaling it.

Some resource limit related fields in `heapster-controller.yaml` are removed, as they will be set up by the `addon resizer` containers. Detailed reasons in #34513.

Three e2e tests are modified:
- `rescheduler.go`: Changed to resize Dashboard UI Deployment instead of ReplicationController.
- `addon_update.go`: Some namespace related changes in order to make it compatible with the new Addon Manager.
- `dns_autoscaling.go`: Changed to examine kube-dns Deployment instead of ReplicationController.

Both of above two tests passed on my own cluster. The upgrade process --- from old Addons with RCs to new Addons with Deployments --- was also tested and worked as expected.

The last commit upgrades Addon Manager to v6.0. It is still a work in process and currently waiting for #35220 to be finished. (The Addon Manager image in used comes from a non-official registry but it mostly works except some corner cases.)

@piosz @gmarek could you please review the heapster part and the rescheduler test?

@mikedanese @thockin 

cc @kubernetes/sig-cluster-lifecycle 

---

Notes:
- Kube-dns manifest still uses *-rc.yaml for the new Deployment. The stale file names are preserved here for receiving faster review. May send out PR to re-organize kube-dns's file names after this.
- Heapster Deployment's name remains in the old fashion(with `-v1.2.0` suffix) for avoiding describe this upgrade transition explicitly. In this way we don't need to attach fake apply labels to the old Deployments.
2016-11-10 02:36:38 -08:00
Rajat Ramesh Koujalagi d81e216fc6 Better messaging for missing volume components on host to perform mount 2016-11-09 15:16:11 -08:00
Kubernetes Submit Queue 916f526811 Merge pull request #36435 from wojtek-t/fix_max_inflight_requests
Automatic merge from submit-queue

Increase max-requests-inflight in large clusters

Fix #35402
2016-11-09 09:27:02 -08:00
Zihong Zheng b26faae7fc Migrates addons from using ReplicationControllers to Deployments 2016-11-09 09:17:05 -08:00
Vishnu kannan dd8ec911f3 Revert "Revert "Merge pull request #35821 from vishh/gci-mounter-scope""
This reverts commit 402116aed4.
2016-11-08 11:09:10 -08:00
Wojciech Tyczynski 75d7d1ad37 Increase max-requests-inflight in large clusters 2016-11-08 14:41:58 +01:00
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
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
Jerzy Szczepkowski 633c237913 Change master to advertise external IP in kubernetes service.
Change master to advertise external IP in kubernetes service.
In effect, in HA mode in case of multiple masters, IP of external load
balancer will be advertise in kubernetes service.
2016-11-07 11:31:47 +01:00
Kubernetes Submit Queue 182a09c3c7 Merge pull request #35526 from justinsb/fix_35521_b
Automatic merge from submit-queue

kubelet bootstrap: start hostNetwork pods before we have PodCIDR

Network readiness was checked in the pod admission phase, but pods that
fail admission are not retried.  Move the check to the pod start phase.

Issue #35409 
Issue #35521
2016-11-06 12:53:14 -08:00
Kubernetes Submit Queue b7512d9c8b Merge pull request #36240 from wojtek-t/quota_bytes_backend
Automatic merge from submit-queue

Increase quota-bytes for etcd in v3 mode

Ref #20504
2016-11-06 09:45:59 -08:00
Wojciech Tyczynski ca99cbca02 Increase quota-bytes for etcd in v3 mode 2016-11-04 17:00:54 +01:00
Piotr Szczesniak 2dea8a8f8f Made fluentd-gcl config consitent for GCI and ContainerVM 2016-11-04 13:30:46 +01:00
Justin Santa Barbara 68c0b4268b Update bringup: don't pass in dummy pod-cidr
We no longer pass in a "dummy" pod-cidr (10.123.45.0/29), and rely on
reconcile-cidr=true instead (which is the default).
2016-11-04 00:11:55 -04:00
saadali 402116aed4 Revert "Merge pull request #35821 from vishh/gci-mounter-scope"
This reverts commit 973fa6b334, reversing
changes made to 41b5fe86b6.
2016-11-03 20:23:25 -07:00
bprashanth 28e880b6e7 Add debug logging to gci startup 2016-11-03 17:43:10 -07:00
Vishnu Kannan 40fc804831 Enable containerized storage plugins mounter on GCI
This reverts commit 765f7b9406.
2016-11-02 15:18:09 -07:00
Wojciech Tyczynski c2248324c1 Expose etcd version. 2016-11-02 17:03:13 +01:00
Kubernetes Submit Queue 569da52204 Merge pull request #35708 from wojtek-t/rename_test_etcd_version
Automatic merge from submit-queue

Rename TEST_ETCD_VERSION to ETCD_VERSION

Ref #20504
2016-10-29 05:46:51 -07:00
Kubernetes Submit Queue 9b021a97c7 Merge pull request #35319 from vishh/gci-startup
Automatic merge from submit-queue

On GCI, cleanup kubelet startup

-->
```release-note
* Avoid overriding system and kubelet cgroups on GCI
* Make the kubectl from k8s release the default on GCI
```

cc @kubernetes/sig-node @mtaufen
2016-10-29 00:36:06 -07:00
Wojciech Tyczynski 7ee7b55c5e Rename TEST_ETCD_VERSION to ETCD_VERSION 2016-10-28 13:56:59 +02:00
Marek Grabowski 765f7b9406 Revert "Enable containerized storage plugins mounter on GCI" 2016-10-28 08:41:43 +02:00
Vishnu kannan f6f4f91ae7 On GCI, remove kubelet cgroup overrides and override host kubectl with that of the release
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-10-27 17:20:11 -07:00
Vishnu kannan aceddfa7fc Enable containerized storage mounter on GCI
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-10-27 11:56:34 -07:00
Vishnu kannan 64c1fa3594 run the gci containerized mounter to cache mounter container image
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-10-27 11:56:34 -07:00
Lucas Käldström 6846e0b48a Remove usage of --reconcile-cidr 2016-10-26 20:26:07 +03:00
Tomasz Wojtuń 1d08586f73 fixed problem with non masquerade cidr in kube-up gce/gci 2016-10-21 09:53:59 +02:00
Lucas Käldström e3207bf8bb WIP: Remove --configure-cbr0 from kube-up 2016-10-16 21:27:41 +03:00
Michael Taufen edcf97db1d Change --bind to -B for consistency 2016-09-30 10:59:47 -07:00
Michael Taufen 73b64e6da5 Correct env var name in configure-helper
The variable should be KUBEPROXY_TEST_ARGS, not KUBE_PROXY_TEST_ARGS.
2016-09-30 10:56:08 -07:00
Euan Kemp 527932e6ad cluster/gci: Minor spacing tweak
Two shall be the number thou shalt indent, and the level of the indent
shall be two. Three shalt thou not indent, neither indent thou once,
excepting that thou then proceed to two. Five is right out.
2016-09-29 16:27:35 -07:00
Kubernetes Submit Queue 33b5d9650a Merge pull request #33197 from adityakali/core
Automatic merge from submit-queue

Reset core_patern on GCI

The default core_pattern pipes the core dumps to /sbin/crash_reporter
which is more restrictive in saving crash dumps. So for
now, set a generic core_pattern that users can work with.

@dchen1107 @aulanov can you please review?

cc/ @kubernetes/goog-image
2016-09-23 03:50:15 -07:00
Vishnu kannan 504cf5ca3c mount kubelet root directory as executable in GCI
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-09-22 22:01:59 -07:00
Fabio Yeon 177fee1358 (GCI) Configure logrotate to rotate all .log files in /var/log. 2016-09-21 15:29:14 -07:00
Aditya Kali d54db34172 Reset core_patern on GCI
The default core_pattern pipes the core dumps to /sbin/crash_reporter
which is more restrictive in saving crash dumps. So for
now, set a generic core_pattern that users can work with.
2016-09-21 10:08:23 -07:00
Minhan Xia 879a2dcdbd bump master cidr range from /30 to /29 2016-09-16 13:41:58 -07:00
Kubernetes Submit Queue c4893df894 Merge pull request #32151 from bboreham/fix-cni-on-gci
Automatic merge from submit-queue

Add flag to set CNI bin dir, and use it on gci nodes

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

When using `kube-up` on GCE, following #31023 which moved the workers from debian to gci, CNI just isn't working.  The root cause is basically as discussed in #28563: one flag (`--network-plugin-dir`) means two different things, and the `configure-helper` script uses it for the wrong purpose.

This PR adds a new flag `--cni-bin-dir`, then uses it to configure CNI as desired.

As discussed at #28563, I have also added a flag `--cni-conf-dir` so users can be explicit 

**Which issue this PR fixes** : fixes #28563

**Special notes for your reviewer**:

I left the old flag largely alone for backwards-compatibility, with the exception that I stop setting the default when CNI is in use.  The value of `"/usr/libexec/kubernetes/kubelet-plugins/net/exec/"` is unlikely to be what is wanted there.

**Release note**:
```release-note
Added new kubelet flags `--cni-bin-dir` and `--cni-conf-dir` to specify where CNI files are located.
Fixed CNI configuration on GCI platform when using CNI.
```
2016-09-13 16:42:06 -07:00
Kubernetes Submit Queue 43710a8714 Merge pull request #30845 from YuPengZTE/master
Automatic merge from submit-queue

The first letter should be capitalized
2016-09-10 00:22:10 -07:00
Bryan Boreham fd4596bd27 Use --cni-bin-dir flag when using CNI on GCI 2016-09-09 11:43:17 +01:00
gmarek 3e2c3a5db2 Make image-puller work on GCI nodes. 2016-09-07 15:23:39 +02:00
Minhan Xia a876f22102 keep docker0 with private cidr range 2016-08-29 13:57:42 -07:00
Kubernetes Submit Queue f090fd158a Merge pull request #31367 from Amey-D/gci-kubelet
Automatic merge from submit-queue

gci: decouple from the built-in kubelet version

Prior to this change, configure.sh would:
(1) compare versions of built-in kubelet and downloaded kubelet, and
(2) bind-mount downloaded kubelet at /usr/bin/kubelet in case of
version mismatch
    
With this change, configure.sh:
(1) compares the two versions only on test clusters, and
(2) uses the actual file paths to start kubelet w/o any bind-mounting
    
To allow (2), this change also provides its own version of kubelet
systemd service file.
    
Effectively with this change we will always use the downloaded kubelet
binary along with its own systemd service file on non-test clusters.  The
main advantage is this change does not rely on the kubelet being built in to
the OS image.

@dchen1107 @wonderfly  can you please review

cc/ @kubernetes/goog-image FYI
2016-08-25 15:55:14 -07:00
Amey Deshpande 2939ebdba5 gci: decouple from the built-in kubelet version
Prior to this change, configure.sh would:
(1) compare versions of built-in kubelet and downloaded kubelet, and
(2) bind-mount downloaded kubelet at /usr/bin/kubelet in case of
version mismatch

With this change, configure.sh:
(1) compares the two versions only on test clusters, and
(2) uses the actual file paths to start kubelet w/o any bind-mounting

To allow (2), this change also provides its own version of kubelet
systemd service file.

Effectively with this change we will always use the downloaded kubelet
binary along with its own systemd service file on non-test clusters.  The
main advantage is this change does not rely on the kubelet being built in to
the OS image.
2016-08-24 23:36:08 -07:00
Aditya Kali acea7040bc Add validation for KUBE_USER
Malformed KUBE_USER causes error in cluster setup.
2016-08-24 15:01:11 -07:00
Kubernetes Submit Queue 6e75fa9745 Merge pull request #31103 from mwielgus/scheduling-alg-provider-flag
Automatic merge from submit-queue

Scheduling algorithm provider flag in kube-up.sh

Follow up of:

#30274 #30992

cc: @piosz @wojtek-t @davidopp
2016-08-23 01:44:54 -07:00
Jeff Lowdermilk 5def8f674a Fix feature_gate plumbing in gci configure-helper.sh 2016-08-22 21:53:25 -07:00
Quintin Lee 182a4fd0ac Scripts to configure image verification admission controller for gce. 2016-08-22 16:54:03 -07:00
Marcin Wielgus 11fabd7176 Scheduling algorithm provider flag in kube-up.sh 2016-08-22 17:49:00 +02:00
Kubernetes Submit Queue 9030a3234f Merge pull request #30859 from wojtek-t/allow_custom_etcd_in_e2e
Automatic merge from submit-queue

Add possibility to run non-default etcd image in tests

Ref #20504

@lavalamp @hongchaodeng @timothysc - FYI
2016-08-20 09:32:35 -07:00
Jeff Lowdermilk 51198f59da Add --feature-gates to kube-system components
apiserver,scheduler,controller-manager,proxy,kubelet all get
flag. Using one variable to plumb through config via salt/init
scripts for GCE and GKE
2016-08-19 09:07:43 -07:00
Kubernetes Submit Queue a24df66dc8 Merge pull request #30870 from piosz/rescheduler-setup
Automatic merge from submit-queue

Salt configuration for Rescheduler

ref #29023
2016-08-19 02:54:24 -07:00
Piotr Szczesniak 1f3fdab063 Salt configuration for Rescheduler 2016-08-18 12:24:09 +02:00
Wojciech Tyczynski 315d9f3689 Allow non-default etcd 2016-08-18 11:56:01 +02:00
Wojciech Tyczynski b42023eb03 Support for etcd migration 2016-08-18 08:31:33 +02:00
YuPengZTE 3faa38fcb6 The first letter should be capitalized 2016-08-18 11:49:53 +08:00
Timothy St. Clair 730fc70107 Update etcd default ports for v3, and validate tests 2016-08-17 07:49:19 -05:00
Kubernetes Submit Queue 9fe15e7376 Merge pull request #29037 from matthewdupre/calico-policy-deploy
Automatic merge from submit-queue

Add support for kube-up.sh to deploy Calico network policy to GCI masters

Also remove requirement for calicoctl from Debian / salt installed nodes and clean it up a little by deploying calico-node with a manifest rather than calicoctl.  This also makes it more reliable by retrying properly.

How to use:
```
make quick-release
NETWORK_POLICY_PROVIDER=calico cluster/kube-up.sh
```

One place where I was uncertain:
- CPU allocations (on the master particularly, where there's very little spare capacity).  I took some from etcd, but if there's a better way to decide this, I'm happy to change it.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/29037)
<!-- Reviewable:end -->
2016-08-12 08:12:01 -07:00
Matt 568fb74a9a kube-up: move Calico policy components off master, and add support for GCI master 2016-08-11 17:11:16 -07:00
mbohlool a5b2ffffd2 Start etcd-empty-dir-cleanup pod automatically on master 2016-08-10 23:28:21 -07:00
Wojciech Tyczynski 679afea360 etcd3 support 2016-08-10 13:33:35 +02:00
Wojciech Tyczynski 38c28177d6 Propagate cluster size through salt 2016-08-09 09:41:48 +02:00
Kubernetes Submit Queue 10b1ffbed8 Merge pull request #30047 from zmerlynn/fix-aws-bringup
Automatic merge from submit-queue

AWS/GCE: Rework use of master name

* Add a pillar for `hostname` (because even if there's a good Salt function for it, I don't trust it to return the short hostname)
* Move `INITIAL_ETCD_CLUSTER` to just the GCE turn-up
* Remove `master_name`, which isn't needed
2016-08-05 02:00:54 -07:00
Kubernetes Submit Queue 6c81ba5b71 Merge pull request #30038 from adityakali/gci53
Automatic merge from submit-queue

Remove use of /usr/share/google/safe_format_and_mount script from GCI

This script was provided by Google Compute Image Packages
(https://github.com/GoogleCloudPlatform/compute-image-packages) and
has been deprecated since over an year. Newer version of the package
doesn't include it at all. So remove its usage and instead follow
recommended instructions from
https://cloud.google.com/compute/docs/disks/add-persistent-disk#formatting.

cc @kubernetes/goog-image
2016-08-05 00:54:20 -07:00
Zach Loafman 963a05ec72 AWS/GCE: Rework use of master name
* Add a pillar for hostname (because even if there's a good Salt
function for it, I don't trust it to return the short hostname)
* Move INITIAL_ETCD_CLUSTER to just the GCE turn-up
* Remove the master_name, which isn't needed as a pillar
2016-08-04 08:46:36 -07:00
Jerzy Szczepkowski c8d920ea6c Reverted conversion of influx-db to PetSet.
Reverted conversion of influx-db to PetSet.
2016-08-04 17:08:46 +02:00
Aditya Kali 40aeb2e6bb Remove use of /usr/share/google/safe_format_and_mount script
This script was provided by Google Compute Image Packages
(https://github.com/GoogleCloudPlatform/compute-image-packages) and
has been deprecated since over an year. Newer version of the package
doesn't include it at all. So remove its usage and instead follow
recommended instructions from
https://cloud.google.com/compute/docs/disks/add-persistent-disk#formatting.
2016-08-03 17:13:30 -07:00
Daniel Smith 651c8a4b2f Revert "Modified influxdb petset to provision persistent volume." 2016-08-02 14:03:37 -07:00
k8s-merge-robot fd4e923890 Merge pull request #29332 from caesarxuchao/gc-e2e
Automatic merge from submit-queue

[Garbage Collector] add e2e tests again

#27151 is reverted because gke didn't start correctly after it's merged (https://github.com/kubernetes/kubernetes/pull/27151#issuecomment-233030686).

The possible problem is the `unbound variable`, which is fixed in the second commit of this PR. However, I cannot verify if the PR will fail the gke suite since I don't have the environment to run that suite.

@wojtek-t @lavalamp
2016-08-02 13:26:43 -07:00
k8s-merge-robot cadee46753 Merge pull request #28840 from jszczepkowski/influx-ps
Automatic merge from submit-queue

Modified influxdb petset to provision persistent  volume.


[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()

[WIP] Modified influxdb petset to create claim.
2016-08-02 11:07:39 -07:00
Chao Xu 35193be088 plumb --enable_garbage_collector from environment variable;
adding a simple e2e test
2016-08-02 10:02:52 -07:00
Jerzy Szczepkowski f7167d11a8 Modified influxdb petset to provision pv.
Modified influxdb petset to provision pv.
2016-08-02 18:09:14 +02:00
Jerzy Szczepkowski 657b30ccf6 Modified etcd manifest to support clustering.
Modified etcd manifest to support clustering.
2016-07-30 16:01:04 +02:00
Daniel Smith fb3f02fb68 Revert "Modified etcd manifest to support clustering." 2016-07-27 12:03:21 -07:00
CJ Cullen 6d2c411757 Fix potential unbound KUBE_USER variable in gci/trusty. 2016-07-27 10:50:44 -07:00
Jerzy Szczepkowski 827ee794d6 Modified etcd manifest to support clustering.
Modified etcd manifest to support clustering.
2016-07-26 23:24:14 +02:00
CJ Cullen e559e305dd append an abac rule for $KUBE_USER. 2016-07-21 09:40:39 -07:00
k8s-merge-robot 8b16c75ba5 Merge pull request #29139 from adityakali/logrotate.1
Automatic merge from submit-queue

fix logrotate config (again)

we need to add the dateformat option so that the logrotate
can create unique logfiles for each rotation. Without this,
logrotation is skipped with message like (generated in
verbose mode of logrotate):

rotating log /var/log/rotate-test.log, log->rotateCount is 5
dateext suffix '-20160718'
glob pattern '-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'
destination /var/log/rotate-test2.log-20160718.gz already exists, skipping rotation

Tested as follows:
  # config in '/etc/logrotate.d/rotate-test':
  /var/log/rotate-test.log {
    rotate 5
    copytruncate
    missingok
    notifempty
    compress
    maxsize 100M
    daily
    dateext
    dateformat -%Y%m%d-%s
    create 0644 root root
  }

  # create 150Mb of /var/log/rotate-test.log
  $ dd if=/dev/zero of=/var/log/rotate-test.log bs=1048576 count=150 conv=notrunc oflag=append

  # run logrotate
  $ /usr/sbin/logrotate -v /etc/logrotate.conf
  ...
  rotating pattern: /var/log/rotate-test.log  after 1 days (5 rotations)
  empty log files are not rotated, log files >= 104857600 are rotated earlier, old logs are removed
  considering log /var/log/rotate-test.log
    log needs rotating
  rotating log /var/log/rotate-test.log, log->rotateCount is 5
  Converted ' -%Y%m%d-%s' -> '-%Y%m%d-%s'
  dateext suffix '-20160718-1468875268'
  glob pattern '-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'
  copying /var/log/rotate-test.log to /var/log/rotate-test.log-20160718-1468875268
  truncating /var/log/rotate-test.log
  compressing log with: /bin/gzip

  Repeating 'dd' and 'logrotate' commands now generate logfiles correctly.

#27754 
@bprashanth can you please review?
2016-07-18 18:20:41 -07:00
k8s-merge-robot 1d9199628f Merge pull request #29141 from zmerlynn/fix-node-prefix
Automatic merge from submit-queue

GCE bring-up: Differentiate NODE_TAGS from NODE_INSTANCE_PREFIX
2016-07-18 17:11:40 -07:00
Aditya Kali 09b2c27a92 fix logrotate config (again)
we need to add the dateformat option so that the logrotate
can create unique logfiles for each rotation. Without this,
we logrotation is skipped with message like (generated in
verbose mode of logrotate):

rotating log /var/log/rotate-test.log, log->rotateCount is 5
dateext suffix '-20160718'
glob pattern '-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'
destination /var/log/rotate-test2.log-20160718.gz already exists, skipping rotation

Tested as follows:

  # config in '/etc/logrotate.d/rotate-test':
  /var/log/rotate-test.log {
    rotate 5
    copytruncate
    missingok
    notifempty
    compress
    maxsize 100M
    daily
    dateext
    dateformat -%Y%m%d-%s
    create 0644 root root
  }

  # create 150Mb of /var/log/rotate-test.log
  $ dd if=/dev/zero of=/var/log/rotate-test.log bs=1048576 count=150 conv=notrunc oflag=append

  # run logrotate
  $ /usr/sbin/logrotate -v /etc/logrotate.conf
  ...
  rotating pattern: /var/log/rotate-test.log  after 1 days (5 rotations)
  empty log files are not rotated, log files >= 104857600 are rotated earlier, old logs are removed
  considering log /var/log/rotate-test.log
    log needs rotating
  rotating log /var/log/rotate-test.log, log->rotateCount is 5
  Converted ' -%Y%m%d-%s' -> '-%Y%m%d-%s'
  dateext suffix '-20160718-1468875268'
  glob pattern '-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'
  copying /var/log/rotate-test.log to /var/log/rotate-test.log-20160718-1468875268
  truncating /var/log/rotate-test.log
  compressing log with: /bin/gzip

  Repeating 'dd' and 'logrotate' commands now generate logfiles correctly.
2016-07-18 15:37:00 -07:00
Zach Loafman 4c667c38c9 GCE bring-up: Differentiate NODE_TAGS from NODE_INSTANCE_PREFIX
Kubernetes-side fix to #29074 (GKE-side fix necessary as well)
2016-07-18 14:20:45 -07:00
Prashanth Balasubramanian 1173dd13bf Change maxsize to size in logrotate. 2016-07-18 11:30:50 -07:00
Wojciech Tyczynski f71244975d Revert "[garbage collector] add e2e test" 2016-07-15 10:10:02 +02:00
k8s-merge-robot 01e34b72c1 Merge pull request #27151 from caesarxuchao/gc-e2e
Automatic merge from submit-queue

[garbage collector] add e2e test

This PR also includes some changes to plumb controller-manager's `--enable_garbage_collector` from the environment variable.

The e2e test will not be run by the core suite because it's marked `[Feature:GarbageCollector]`.

The corresponding jenkins job configuration PR is https://github.com/kubernetes/test-infra/pull/132.
2016-07-14 19:55:52 -07:00
Chao Xu 7a5b3c43a0 plumb --enable_garbage_collector from environment variable;
adding a simple e2e test
2016-07-08 10:27:16 -07:00
Madhusudan.C.S 2e308035f0 Copy FEDERATIONS_DOMAIN_MAP to a local variable since the helper script doesn't allow overwriting the existing variable. 2016-07-06 15:53:45 -07:00
David McMahon ef0c9f0c5b Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
k8s-merge-robot 3a6494e9ae Merge pull request #28132 from madhusudancs/fed-kubedns-flags-nodebootstrap
Automatic merge from submit-queue

Substitute federation_domain_map parameter with its value in node bootstrap scripts.

This PR also removes the substitution code we added to the build scripts.

**Release Note**

```release-note
If you use one of the kube-dns replication controller manifest in `cluster/saltbase/salt/kube-dns`, i.e. `cluster/saltbase/salt/kube-dns/{skydns-rc.yaml.base,skydns-rc.yaml.in}`, either substitute one of `__PILLAR__FEDERATIONS__DOMAIN__MAP__` or `{{ pillar['federations_domain_map'] }}` with the corresponding federation name to domain name value or remove them if you do not support cluster federation at this time. If you plan to substitute the parameter with its value, here is an example for `{{ pillar['federations_domain_map'] }`
pillar['federations_domain_map'] = "- --federations=myfederation=federation.test"
where `myfederation` is the name of the federation and `federation.test` is the domain name registered for the federation.
```

cc @erictune  @kubernetes/sig-cluster-federation @MikeSpreitzer @luxas 

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-06-29 14:09:46 -07:00
Madhusudan.C.S 816c4d9e2b Substitute federation_domain_map parameter with its value in node bootstrap scripts.
This also removes the substitution code we added to the build
scripts in one of the previous commits.
2016-06-27 14:54:49 -07:00
Jerzy Szczepkowski d00cdf75e8 Influxdb migrated to PetSet and PersistentVolumes.
Influxdb migrated to PetSet and PersistentVolumes.
2016-06-27 15:39:09 +02:00
Fabio Yeon 86928dbea0 Increase pod CPU/memory for fluentd, dns and kube-proxy. 2016-06-24 11:03:08 -07:00
k8s-merge-robot 5ccd1e7cf6 Merge pull request #27990 from adityakali/fluentd
Automatic merge from submit-queue

Use new fluentd-gcp container with journal support

This makes use of the systemd-journal support added in PR #27981
and Fixes #27446.

cc/ @a-robinson @andyzheng0831
2016-06-23 18:48:53 -07:00
Aditya Kali 72af2b7c21 Use new fluentd-gcp container with journal support
This makes use of the systemd-journal support added in PR #27981
and Fixes #27446.
2016-06-23 17:08:31 -07:00
Zach Loafman e7a9881d84 Copy and display source location prominently on Kubernetes instances
Following from #27830, this copies the source onto the instance and
displays the location of it prominently (keeping the download link for
anyone that just wants to curl it).

Example output (this tag doesn't exist yet):

---
Welcome to Kubernetes v1.4.0!

You can find documentation for Kubernetes at:
  http://docs.kubernetes.io/

The source for this release can be found at:
  /usr/local/share/doc/kubernetes/kubernetes-src.tar.gz
Or you can download it at:
  https://storage.googleapis.com/kubernetes-release/release/v1.4.0/kubernetes-src.tar.gz

It is based on the Kubernetes source at:
  https://github.com/kubernetes/kubernetes/tree/v1.4.0

For Kubernetes copyright and licensing information, see:
  /usr/local/share/doc/kubernetes/LICENSES
---
2016-06-23 15:27:38 -07:00
Marek Grabowski 56d4586f89 Revert "Copy and display source location prominently on Kubernetes instances" 2016-06-23 10:24:29 +02:00
Zach Loafman f9d1737299 Copy and display source location prominently on Kubernetes instances
Following from #27830, this copies the source onto the instance and
displays the location of it prominently (keeping the download link for
anyone that just wants to curl it).

Example output (this tag doesn't exist yet):

---
Welcome to Kubernetes v1.4.0!

You can find documentation for Kubernetes at:
  http://docs.kubernetes.io/

The source for this release can be found at:
  /usr/local/share/doc/kubernetes/kubernetes-src.tar.gz
Or you can download it at:
  https://storage.googleapis.com/kubernetes-release/release/v1.4.0/kubernetes-src.tar.gz

It is based on the Kubernetes source at:
  https://github.com/kubernetes/kubernetes/tree/v1.4.0

For Kubernetes copyright and licensing information, see:
  /usr/local/share/doc/kubernetes/LICENSES
---
2016-06-21 23:03:30 -07:00
Zach Loafman dd4dae4a57 GCE provider: Limit Filter calls to regexps rather than insane blobs
Filters can't exceed 4k, and GET requests against the GCE API are also
limited, so these break down in different ways at different cluster
counts. Fix it by introducing an advisory node-instance-prefix
configuration in the GCE provider that can hint the
EnsureLoadBalancer/UpdateLoadBalancer code (and the firewall
creation/update code). If it's not there, or wrong (a hostname that's
registered violates it), just ignore it and grab the whole project.
2016-06-21 08:34:48 -07:00
k8s-merge-robot a3f09700e5 Merge pull request #27409 from adityakali/logrotate.1
Automatic merge from submit-queue

add logrotate service and configuration for GCI

This change mirrors the configuration in cluster/saltbase/salt/logrotate for GCI.

On GCI we use systemd timers (https://www.freedesktop.org/software/systemd/man/systemd.timer.html) and install an hourly timer - kube-logrotate.timer. This will invoke kube-logrotate.service (which calls /usr/sbin/logrotate) once every hour to perform log rotation as per the rotation rules installed under /etc/logrotate.d/.

@kubernetes/goog-image @zmerlynn @dchen1107 @andyzheng0831
2016-06-20 13:40:57 -07:00
k8s-merge-robot 368704dc71 Merge pull request #27185 from gmarek/heapster-cpu
Automatic merge from submit-queue

Enable dynamic allocation of heapster/eventer cpu request/limit

cc @mwielgus @piosz @zmerlynn
2016-06-19 16:48:49 -07:00
k8s-merge-robot db904257f9 Merge pull request #27599 from dchen1107/gci
Automatic merge from submit-queue

Fix docker log level on GCI node.

Fix #27584

cc/ @a-robinson
2016-06-17 20:21:05 -07:00
Dawn Chen 58684a56be Fix docker log level on GCI node. 2016-06-16 20:54:42 -07:00
gmarek 8617f70add Adjust heapster cpu request/limit 2016-06-15 13:34:58 +02:00
Aditya Kali a423b83c06 add logrotate service and configuration for GCI
This change mirrors the configuration in cluster/saltbase/salt/logrotate
for GCI.
2016-06-14 19:01:58 -07:00
Andy Zheng e6b744c85a Revert "Revert "GCI: add support for network plugin""
This reverts commit 8207eddd99.
2016-06-14 09:52:34 -07:00
k8s-merge-robot 1aece22176 Merge pull request #27187 from gmarek/heapster-nanny
Automatic merge from submit-queue

Adjust memory limit for heapster's pod nanny

cc @piosz @wojtek-t @zmerlynn
2016-06-14 04:56:46 -07:00
Andy Zheng 1c490c24e4 gci: fix multizone setting in issue #27150 2016-06-13 16:33:12 -07:00
k8s-merge-robot e84e226faf Merge pull request #27155 from Random-Liu/remove-unnecessary-configuration
Automatic merge from submit-queue

Remove unnecessary configuration for apiserver host and port.

This is kubernetes side of https://github.com/kubernetes/node-problem-detector/pull/18.

There is no need to configure apiserver host and port with salt and pillar, the default ENV values
in the container are enough. I've tried this PR in my local cluster, everything works fine.

@mikedanese for the salt change. :)
/cc @dchen1107 

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-06-13 07:57:51 -07:00
gmarek 0986efc089 Increase memory limit for heapster's pod nanny 2016-06-13 12:58:34 +02:00
Piotr Szczesniak 89752258ef Use exponential estimator for Heapster addon resizer 2016-06-10 15:39:01 +02:00
k8s-merge-robot 447ce334ad Merge pull request #27117 from mwielgus/rename-2
Automatic merge from submit-queue

Rename ENABLE_NODE_AUTOSCALER to ENABLE_CLUSTER_AUTOSCALER - part 2

Follow up of https://github.com/kubernetes/kubernetes/pull/26993

cc: @fgrzadkowski @piosz @jszczepkowski 

```release-note
Rename environment variables (KUBE_)ENABLE_NODE_AUTOSCALER to (KUBE_)ENABLE_CLUSTER_AUTOSCALER. 
```

Fixes https://github.com/kubernetes/kubernetes/issues/26343
2016-06-10 04:48:06 -07:00
k8s-merge-robot 8c88cbe74c Merge pull request #27143 from adityakali/localssd
Automatic merge from submit-queue

support for mounting local-ssds on GCI

This change adds support for mounting local ssds on GCI.
It updates the previous container-vm behavior as well to
match that for GCI nodes by mounting the local-ssds under
the same path (/mnt/disks/ssdN).

@vulpecula @roberthbailey @andyzheng0831 @kubernetes/goog-image
2016-06-10 04:05:21 -07:00
Random-Liu 42bd5e2e53 Remove unnecessary configuration for apiserver host and port. 2016-06-09 17:56:57 -07:00
Aditya Kali 4447c54682 support mounting local-ssds on GCI
This change adds support for mounting local ssds on GCI.
It updates the previous container-vm behavior as well to
match that for GCI nodes by mounting the local-ssds under
the same path (/mnt/disks/ssdN).
2016-06-09 11:30:36 -07:00
Marcin Wielgus 8b09074d2c Rename ENABLE_NODE_AUTOSCALER to ENABLE_CLUSTER_AUTOSCALER 2016-06-09 11:30:57 +02:00
Minhan Xia 7b9435898d Accept ICMP in INPUT/FORWARD chain of filter table 2016-06-08 17:34:11 -07:00
Andy Zheng 66d6b43b67 GCI: add support for kubenet 2016-06-08 13:20:44 -07:00
k8s-merge-robot d53ddbe6e6 Merge pull request #27016 from andyzheng0831/gci-docker0
Automatic merge from submit-queue

GCI: fix the issue #26379

This PR deletes docker0 explicitly to fix the issue. In some cases, coexistence of docker0 and cbr0 make troubles in GCI-based cluster instances.

I verified it in GKE. With the fix, fluentd-gcp pod shows no error. "curl google.com" can work inside a pod. Mark it as P0 to match the issue priority.

@a-robinson @roberthbailey @freehan @kubernetes/goog-image
2016-06-08 09:36:34 -07:00
Marcin Wielgus edf21902b5 Rename ENABLE_NODE_AUTOSCALER to ENABLE_CLUSTER_AUTOSCALER - part 1 2016-06-08 13:35:38 +02:00
Andy Zheng 64ffe90501 GCI: fix the issue #26379 2016-06-07 19:49:41 -07:00
Vishnu kannan b22a913079 Enable configuration of hard eviction thresholds in kubelet.
This will allow for enabling evictions whenever memory availability is
too low.

Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-06-06 17:26:10 -07:00
k8s-merge-robot e0707b137f Merge pull request #26827 from Random-Liu/re-enable-node-problem-detector
Automatic merge from submit-queue

Re-enable node problem detector by default

Re-enable node problem detector started in gce cluster by default.

For now, in the master node, the node problem detector will be started and do nothing (see https://github.com/kubernetes/node-problem-detector/pull/13).

But in fact, in my test cluster, the master has no extra cpu to run the node problem detector, so node problem detector is started on all nodes except master, which is what we want but not expected...

@dchen1107 
/cc @kubernetes/sig-node 
/cc @andyzheng0831 for the gci script change.

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-06-04 12:33:58 -07:00
Random-Liu 7dffea0dc0 Re-enable node problem detector by default 2016-06-03 17:47:50 -07:00
Alex Robinson 436b9110af Don't run fluentd-es on GCI masters 2016-06-03 11:54:01 -04:00
k8s-merge-robot 8d57a44192 Merge pull request #26745 from andyzheng0831/docker-reg
Automatic merge from submit-queue

GCI/Trusty: support the Docker registry mirror

@roberthbailey @zmerlynn please review it.

cc/ @fabioy @dchen1107 @kubernetes/goog-image FYI.

cc/ @ojarjur it is very straightforward to add support for GCI, which is pretty much like the change to ContainerVM's configure-vm.sh in your original PR #25841.
2016-06-03 07:31:10 -07:00
Andy Zheng 530bd5fea6 GCI/Trusty: support the Docker registry mirror added by #25841 2016-06-02 14:57:27 -07:00
Andy Zheng 42b299abba GCI: correct the fix in #26363 2016-06-02 10:45:03 -07:00
Piotr Szczesniak 66fce8fe44 Added logging to file for cluster autoscaler 2016-06-02 13:51:40 +02:00
k8s-merge-robot 9336eb516b Merge pull request #26575 from mwielgus/gke-token-src
Automatic merge from submit-queue

Pass /etc/gce.conf to cluster autoscaler if needed

cc: @vulpecula @piosz @jszczepkowski @fgrzadkowski
2016-06-01 09:42:45 -07:00
k8s-merge-robot 430bb9442a Merge pull request #26048 from bprashanth/ing_master
Automatic merge from submit-queue

Run l7 controller on master 

Fixes https://github.com/kubernetes/kubernetes/issues/23663, needs https://github.com/kubernetes/contrib/pull/680
@roberthbailey @kubernetes/goog-cluster
2016-05-31 13:25:47 -07:00
Marcin Wielgus 1ea5718199 Pass /etc/gce.conf to cluster autoscaler if needed 2016-05-31 19:52:30 +02:00
k8s-merge-robot 3d1b1a77e4 Merge pull request #26440 from mwielgus/remove-debug-touch
Automatic merge from submit-queue

Remove debug from GCI cluster autoscaler setup function

cc: @piosz @fgrzadkowski
2016-05-31 02:03:15 -07:00
Prashanth Balasubramanian c01a0583f7 Trusty deployment 2016-05-30 15:58:03 -07:00
k8s-merge-robot 1e44212890 Merge pull request #26156 from gmarek/base64
Automatic merge from submit-queue

Change base64 -d flag to --decode flag to make it BSD compatible

cc @roberthbailey 

Fixes #25998
2016-05-29 09:45:49 -07:00
Marcin e7c69f67f2 Remove debug from GCI cluster autoscaler setup function 2016-05-27 20:02:40 +02:00
Marcin 5f2695be8e Support for cluster autoscaler in GCE Trusty and GCI images 2016-05-27 12:02:20 +02:00
Isaac Hollander McCreery 559d8b1800 Make GCI-backed masters mount srv/kubernetes and srv/sshproxy in the same place as other masters 2016-05-25 10:16:57 -07:00
Quintin Lee 3ca4c36ebc Don't try executing bash variable in assignment. 2016-05-24 11:50:16 -07:00
Wojciech Tyczynski e515da4545 Fix GCI after #26109 breakage 2016-05-24 14:12:30 +02:00
gmarek cafbdba7d9 Change base64 -d flag to --decode flag to make it BSD compatible 2016-05-24 13:24:55 +02:00
Andy Zheng 6bb0a25f7a GCI: Add support for GCP webhook authentication and authorization 2016-05-23 00:52:08 -07:00
Andy Zheng bd293e1522 GCI: support CIDR allocator for NodeController 2016-05-23 00:52:08 -07:00
Andy Zheng 914c1d61e9 GCI: Fix a cluster initialization failure caused by gce.conf 2016-05-23 00:52:08 -07:00
Andy Zheng f31c4f6d69 Revert "Revert "Add support for running GCI on the GCE cloud provider""
This reverts commit 40f53b1765.
2016-05-23 00:52:08 -07:00
Daniel Smith 40f53b1765 Revert "Add support for running GCI on the GCE cloud provider" 2016-05-18 21:31:28 -07:00
Andy Zheng a737e1eba1 Add support for running GCI on the GCE cloud provider 2016-05-18 15:15:05 -07:00