Commit Graph

422 Commits (2b2d8ba8c1071d60e25d426001ab891f7bc36843)

Author SHA1 Message Date
Kubernetes Submit Queue 68b9fa2b89
Merge pull request #54288 from Lion-Wei/local-up-ipvs
Automatic merge from submit-queue (batch tested with PRs 54331, 54655, 54320, 54639, 54288). 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>.

local up cluster in ipvs mode by add env 'KUBEPROXY_MODE=ipvs'

**What this PR does / why we need it**:
We can use env 'KUBEPROXY_MODE=ipvs' to up cluster with kube-proxy in ipvs mode.

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

**Special notes for your reviewer**:

**Release note**:
```release-note
NONE
```
2017-10-27 15:42:29 -07:00
David Eads 86f90ecbb8 enable webhook admission in local up cluster 2017-10-26 07:45:49 -04:00
Lion-Wei a6af827898 local up cluster in ipvs mode by add env 'KUBEPROXY_MODE=ipvs' 2017-10-25 09:55:31 +08:00
Zihong Zheng db8f9ddcec Merge kube-dns templates into a single file 2017-10-03 09:43:52 -07:00
WanLinghao d5f610c250 clusterrolebindings duplicate create in local-up-cluster.sh
Changes to be committed:
  modified:   hack/local-up-cluster.sh
2017-09-28 00:16:13 +08:00
Weiwei Jiang 655f591d85 Remove the deprecated env "ENABLE_CRI"
Remove the deprecated env "ENABLE_CRI" according to https://github.com/kubernetes/kubernetes/pull/45194
2017-09-20 13:45:58 +08:00
Derek Carr 17c3b1ff56 hack/local-up-cluster.sh defaults to allow swap 2017-08-26 01:04:08 -04:00
Andy Lindeman 60e4912bdf
Creates /var/lib/kubelet as root
Fixes:
```
mkdir: cannot create directory ‘/var/lib/kubelet’: Permission denied
```
2017-08-14 21:45:48 +00:00
Kubernetes Submit Queue a0fe9edd27 Merge pull request #49808 from dims/fix-dynamic-admission-control-in-local-cluster
Automatic merge from submit-queue (batch tested with PRs 48365, 49902, 49808, 48722, 47045)

Add admission controller API to runtime config and externalize ADMISSION_CONTROL

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

Enable the dynamic admission controller registration API by
adding "admissionregistration.k8s.io/v1alpha1" to --runtime-config
to fix problems when starting up local-up-cluster. Also make sure
ADMISSION_CONTROL can be specified externally.

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

Fixes #47385

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-08-02 22:32:56 -07:00
Kubernetes Submit Queue 0f10e61241 Merge pull request #44278 from aveshagarwal/master-fix-resource-quota
Automatic merge from submit-queue (batch tested with PRs 49990, 49997, 44278, 49936, 49891)

Move ResourceQuota plugin at the end of the admission plugin chain.

@liggitt @derekwaynecarr
2017-08-02 10:21:46 -07:00
Kubernetes Submit Queue 11f8047735 Merge pull request #49729 from LihuaWu/feature-zjt
Automatic merge from submit-queue

fix hack/local-up-cluster.sh apiserver not listening bug

**What this PR does / why we need it**:
This PR fix a potential bug int hack/local-up-cluster.sh and it helps developers to build local cluster properly

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-07-31 13:30:45 -07:00
wulihua e0fefbee9c Fix issue: https://github.com/kubernetes/kubernetes/issues/49728
Let user choose ADVERTISE_ADDRESS in case the apiserver heuristic
 for the external address is broken
2017-07-31 21:36:31 +08:00
Jordan Liggitt 33a3a7c730
Enable node authorizer in local-up-cluster 2017-07-28 14:59:41 -04:00
Davanum Srinivas 13558335bd Add admission controller API to config and externalize ADMISSION_CONTROL
Enable the dynamic admission controller registration API by
adding "admissionregistration.k8s.io/v1alpha1" to --runtime-config
to fix problems when starting up local-up-cluster. Also make sure
ADMISSION_CONTROL can be specified externally.

Fixes 47385
2017-07-28 14:12:50 -04:00
Avesh Agarwal b6b26ae9c0 Move ResourceQuota plugin at the end of the admission plugin chain. 2017-07-28 08:57:46 -04:00
Kubernetes Submit Queue 427dfd5ce1 Merge pull request #49430 from dims/set-external-hostname-in-local-up-cluster
Automatic merge from submit-queue (batch tested with PRs 48976, 49474, 40050, 49426, 49430)

Set external hostname in local-up-cluster

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

If we set --external-hostname, then the api server does not look
in the CloudProviderOptions.DefaultExternalHost method. While we
are at it, let's log an info message, so if there is a failure
the operator gets a hint that they can use --external-hostname
to bypass the lookup in the cloud provider. This will enable us
to set the CLOUD_PROVIDER to openstack for example and not have to
really run api server inside a openstack vm.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-07-25 12:14:48 -07:00
Kubernetes Submit Queue 2189314895 Merge pull request #40050 from mtaufen/standalone-mode
Automatic merge from submit-queue (batch tested with PRs 48976, 49474, 40050, 49426, 49430)

Use presence of kubeconfig file to toggle standalone mode

Fixes #40049 

```release-note
The deprecated --api-servers flag has been removed. Use --kubeconfig to provide API server connection information instead. The --require-kubeconfig flag is now deprecated. The default kubeconfig path is also deprecated. Both --require-kubeconfig and the default kubeconfig path will be removed in Kubernetes v1.10.0.
```

/cc @kubernetes/sig-cluster-lifecycle-misc @kubernetes/sig-node-misc
2017-07-25 12:14:43 -07:00
Michael Taufen 38aee0464d Providing kubeconfig file is now the switch for standalone mode
Replaces use of --api-servers with --kubeconfig in Kubelet args across
the turnup scripts. In many cases this involves generating a kubeconfig
file for the Kubelet and placing it in the correct location on the node.
2017-07-24 11:03:00 -07:00
Davanum Srinivas f4011d485a Set external hostname in local-up-cluster
If we set --external-hostname, then the api server does not look
in the CloudProviderOptions.DefaultExternalHost method. While we
are at it, let's log an info message, so if there is a failure
the operator gets a hint that they can use --external-hostname
to bypass the lookup in the cloud provider. This will enable us
to set the CLOUD_PROVIDER to openstack for example and not have to
really run api server inside a openstack vm.
2017-07-24 07:58:46 -04:00
Sunil Arora 4d5b96f94e fixed conflict resolution behavior while apply podpresets 2017-07-21 13:19:57 -07:00
mtanino f1351e34e7 Enable RBAC by default in hack/local-up-cluster.sh
Since hack/local-up-cluster.sh checks https API port
after commit 413ab26df9,
RBAC should be enabled by default to avoid TLS port
access denied.

Fixes #49319
2017-07-20 15:05:26 -04:00
Kubernetes Submit Queue b78fc209a4 Merge pull request #49045 from ericchiang/remove-anytoken-authenticator-option
Automatic merge from submit-queue (batch tested with PRs 49058, 49072, 49137, 49182, 49045)

*: remove --insecure-allow-any-token option

~Since the authenticator is still used in e2e tests, don't remove
the actual package. Maybe a follow up?~

edit: e2e and integration tests have been switched over to the tokenfile
authenticator instead.

```release-note
The --insecure-allow-any-token flag has been removed from kube-apiserver. Users of the flag should use impersonation headers instead for debugging.
```

closes #49031

cc @kubernetes/sig-auth-pr-reviews
2017-07-19 10:27:29 -07:00
Eric Chiang e2f2ab67f2 *: remove --insecure-allow-any-token option
e2e and integration tests have been switched over to the tokenfile
authenticator instead.

```release-note
The --insecure-allow-any-token flag has been removed from kube-apiserver. Users of the flag should use impersonation headers instead for debugging.
```
2017-07-18 16:03:15 -07:00
Chen Rong 413ab26df9 use https to check healthz in hack/local-up-cluster.sh 2017-07-18 12:17:47 +08:00
Kubernetes Submit Queue a92123c530 Merge pull request #48037 from wanghaoran1988/add_bootstrap_option
Automatic merge from submit-queue (batch tested with PRs 48295, 48298, 47339, 44910, 48037)

Make the `--controllers` flag configurable in hack/local-up-cluster.sh

**What this PR does / why we need it**:
add options to enable tokencleaner,bootstrapsigner controller for bootstrap token testing

**Release note**:
```
None
```
2017-06-30 14:34:32 -07:00
Kubernetes Submit Queue 33fc75e223 Merge pull request #47984 from ironcladlou/local-cluster-vmodule
Automatic merge from submit-queue (batch tested with PRs 46850, 47984)

Enable vmodule support for all components

Support vmodule (via `LOG_SPEC`) for all local cluster components.

```release-note
NONE
```
2017-06-29 07:18:34 -07:00
Nikhita Raghunath 52bd0bc713
Fix error in local-cluster-up
When $GO_OUT is not set, line 152 will output the error:
[: ==: unary operator expected. This occurs because the if condition becomes
if [  == "" ]. This results in an error because == is a binary operator.
2017-06-26 21:59:01 +05:30
Haoran Wang 38f3a9cc4b add options enable tokencleaner,bootstrapsigner controller 2017-06-26 23:46:55 +08:00
Dan Mace 321ed7f7cf Enable vmodule support for all components
Support vmodule (via `LOG_SPEC`) for all local cluster components.
2017-06-23 15:12:35 -04:00
Kubernetes Submit Queue cc645a8c6f Merge pull request #46327 from supereagle/mark-network-plugin-dir-deprecated
Automatic merge from submit-queue (batch tested with PRs 46327, 47166)

mark --network-plugin-dir deprecated for kubelet

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

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-06-19 11:23:54 -07:00
Clayton Coleman 4ce3907639
Add Initializers to all admission control paths by default 2017-06-02 22:09:04 -04:00
Kubernetes Submit Queue 62435edeff Merge pull request #46448 from dashpole/disk_eviction_defaults
Automatic merge from submit-queue

Set Kubelet Disk Defaults for the 1.7 release

The `--low-diskspace-threshold-mb` flag has been depreciated since 1.6.
This PR sets the default to `0`, and sets defaults for disk eviction based on the values used for our [e2e tests](https://github.com/kubernetes/kubernetes/blob/master/test/e2e_node/services/kubelet.go#L145).
This also removes the custom defaults for vagrant, as the new defaults should work for it as well.

/assign @derekwaynecarr 
cc @vishh 

```release-note
By default, --low-diskspace-threshold-mb is not set, and --eviction-hard includes "nodefs.available<10%,nodefs.inodesFree<5%"
```
2017-06-01 10:04:27 -07:00
supereagle dc9f0f9729 mark --network-plugin-dir deprecated for kubelet, and update related bootstrap scripts 2017-06-01 22:06:44 +08:00
Haoran Wang cadbcf9419 Disable all alpha feature gates by default 2017-05-31 23:30:00 +08:00
Jordan Liggitt fc8e915a4b
Add Node authorization mode based on graph of node-related objects 2017-05-30 16:53:03 -04:00
Monis Khan a13f026fd0
Panic server on watch errors in test environment
This change makes it so that errors during watch decoding panic the
server if it is in a test environment.  This allows us to catch coder
errors related to storing incompatible types at the same location in
etcd.

Signed-off-by: Monis Khan <mkhan@redhat.com>
2017-05-25 13:54:56 -04:00
David Ashpole b2a60dc9a4 By default, Disable LowDiskSpaceThresholdMB, and enable eviciton for disk 2017-05-25 10:03:35 -07:00
Jordan Liggitt 20ccdfbd3b
Fix unbound variable 2017-05-19 00:29:50 -04:00
Jordan Liggitt 6fd36792f1
Add NodeRestriction admission plugin 2017-05-18 16:43:42 -04:00
Kubernetes Submit Queue ec415a12d2 Merge pull request #45119 from dims/set-default-host-path-as-provisioner
Automatic merge from submit-queue (batch tested with PRs 45860, 45119, 44525, 45625, 44403)

Support running StatefulSetBasic e2e tests with local-up-cluster

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

Currently StatefulSet(s) fail when you use local-up-cluster without
setting a cloud provider. In this PR, we use set the
kubernetes.io/host-path provisioner as the default provisioner when
there CLOUD_PROVIDER is not specified. This enables e2e test(s)
(specifically StatefulSetBasic) to work.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
```
2017-05-16 16:14:51 -07:00
Hemant Kumar 9a1a9cbe08 detach the volume when pod is terminated
Make sure volume is detached when pod is terminated because
of any reason and not deleted from api server.
2017-05-11 22:18:22 -04:00
Yu-Ju Hong daa329c9ae Remove the deprecated `--enable-cri` flag
Except for rkt, CRI is the default and only integration point for
container runtimes.
2017-05-10 13:03:41 -07:00
Kubernetes Submit Queue 15f0468986 Merge pull request #44895 from dcbw/iptables-restore-manual-locking
Automatic merge from submit-queue

util/iptables: grab iptables locks if iptables-restore doesn't support --wait

When iptables-restore doesn't support --wait (which < 1.6.2 don't), it may
conflict with other iptables users on the system, like docker, because it
doesn't acquire the iptables lock before changing iptables rules. This causes
sporadic docker failures when starting containers.

To ensure those don't happen, essentially duplicate the iptables locking
logic inside util/iptables when we know iptables-restore doesn't support
the --wait option.

Unfortunately iptables uses two different locking mechanisms, one until
1.4.x (abstract socket based) and another from 1.6.x (/run/xtables.lock
flock() based).  We have to grab both locks, because we don't know what
version of iptables-restore exists since iptables-restore doesn't have
a --version option before 1.6.2.  Plus, distros (like RHEL) backport the
/run/xtables.lock patch to 1.4.x versions.

Related: https://github.com/kubernetes/kubernetes/pull/43575
See also: https://github.com/openshift/origin/pull/13845
Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1417234

@kubernetes/rh-networking @kubernetes/sig-network-misc @eparis @knobunc @danwinship @thockin @freehan
2017-05-06 15:17:21 -07:00
Dan Williams 8f967c929f hack/cluster: map /run/xtables.lock into containerized kubelet filesystem 2017-05-05 23:34:06 -05:00
Kubernetes Submit Queue 0b469f4cb5 Merge pull request #45230 from dims/single-ca-cert
Automatic merge from submit-queue (batch tested with PRs 45239, 45230)

Create a single CA for both client and server certs

**What this PR does / why we need it**:
The following test:
"Certificates API [It] should support building a client with a CSR"

fails with local-up-cluster, but works in the existing CI jobs. This
is because the other CI jobs use a single CA cert while local-up-cluster
can use 2 different sets of CA(s). We need a way to mimic the other
CI jobs (or alternatively change everything to have separate CA's). Just
updating local-up-cluster with a flag seems to be the easy route.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-05-02 14:11:53 -07:00
Davanum Srinivas 0d95f74ef5 Create a single CA for both client and server certs
The following test:
"Certificates API [It] should support building a client with a CSR"

fails with local-up-cluster, but works in the existing CI jobs. This
is because the other CI jobs use a single CA cert while local-up-cluster
can use 2 different sets of CA(s). We need a way to mimic the other
CI jobs (or alternatively change everything to have separate CA's). Just
updating local-up-cluster with a flag seems to be the easy route.
2017-05-02 13:43:46 -04:00
Kubernetes Submit Queue 29f37fde3e Merge pull request #45177 from dims/allow-cluster-signing-ca-crt-and-key
Automatic merge from submit-queue (batch tested with PRs 45077, 45180, 34727, 45079, 45177)

Allow specifying cluster signing ca/key

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

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

**Special notes for your reviewer**:

**Release note**:

```release-note
```
2017-05-01 18:55:16 -07:00
Davanum Srinivas ec44cc2e7c Allow specifying cluster signing ca/key
Makes it useful in testing some scenarios with automatically
signing certificates
2017-05-01 19:25:56 -04:00
Andy Goldstein 43cb024402 Add kube-proxy config file support
Add support for configuring kube-proxy via a config file instead of
command line flags.
2017-05-01 18:02:47 -04:00
Davanum Srinivas 49faff32da Support running StatefulSetBasic e2e tests with local-up-cluster
Currently StatefulSet(s) fail when you use local-up-cluster without
setting a cloud provider. In this PR, we use set the
kubernetes.io/host-path provisioner as the default provisioner when
there CLOUD_PROVIDER is not specified. This enables e2e test(s)
(specifically StatefulSetBasic) to work.
2017-04-28 15:10:22 -04:00
Kubernetes Submit Queue 21f30db4c6 Merge pull request #44826 from dims/enable-default-signer-in-local-up-cluster
Automatic merge from submit-queue (batch tested with PRs 41287, 41636, 44881, 44826)

Enable default signer implementation

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

The Kubernetes controller manager provides a default implementation
of a signer. We should enable it by passing the --cluster-signing-cert-file
and --cluster-signing-key-file parameters to the controller manager
with paths to your Certificate Authority’s keypair. Hoping this will
help pass the "Certificates API [It] should support building a client with a CSR"
e2e test when run against k8s started using local-up-cluster.sh

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-04-25 17:56:44 -07:00
Davanum Srinivas eb9ee75c28 Enable default signer implementation
The Kubernetes controller manager provides a default implementation
of a signer. We should enable it by passing the --cluster-signing-cert-file
and --cluster-signing-key-file parameters to the controller manager
with paths to your Certificate Authority’s keypair. Hoping this will
help pass the "Certificates API [It] should support building a client with a CSR"
e2e test when run against k8s started using local-up-cluster.sh
2017-04-24 13:20:52 -04:00
Matthew Wong 0dc99ef80f Validate etcd only when expecting to run etcd 2017-04-24 12:28:19 -04:00
Kubernetes Submit Queue a9be156eea Merge pull request #44292 from derekwaynecarr/local-up-deploy-dashboard
Automatic merge from submit-queue (batch tested with PRs 44222, 44614, 44292, 44638)

Optionally deploy kubernetes dashboard in local-up cluster

**What this PR does / why we need it**:
Enable users of local up cluster to optionally deploy the kubernetes dashboard.

**Special notes for your reviewer**:
The dashboard is especially useful when working on k8s + service catalog at the same time.
2017-04-18 17:42:06 -07:00
Kubernetes Submit Queue 08bd9c773f Merge pull request #44071 from liggitt/service-account-lookup
Automatic merge from submit-queue (batch tested with PRs 44406, 41543, 44071, 44374, 44299)

Enable service account token lookup by default

Fixes #24167

```release-note
kube-apiserver: --service-account-lookup now defaults to true, requiring the Secret API object containing the token to exist in order for a service account token to be valid. This enables service account tokens to be revoked by deleting the Secret object containing the token.
```
2017-04-13 19:52:06 -07:00
Kubernetes Submit Queue 765755376e Merge pull request #43831 from jayunit100/local-up-conformance
Automatic merge from submit-queue

local up dns defaults/Privileged defaults so that [Conformance] sets mostly pass on local clusters.

Fixes #43651 So that only 4 tests fail out of the box.
2017-04-12 20:44:02 -07:00
Derek Carr ab6812324d Optionally deploy kubernetes dashboard in local-up cluster 2017-04-11 10:54:33 -04:00
Kubernetes Submit Queue b9a5a5c9b3 Merge pull request #42748 from dcbw/cfssl-localup
Automatic merge from submit-queue (batch tested with PRs 43866, 42748)

hack/cluster: download cfssl if not present

hack/local-up-cluster.sh uses cfssl to generate certificates and
will exit it cfssl is not already installed.  But other cluster-up
mechanisms (GCE) that generate certs just download cfssl if not
present.  Make local-up-cluster.sh do that too so users don't have
to bother installing it from somewhere.
2017-04-10 14:27:11 -07:00
jayunit100 60829a88c2 Remove conformance from port forwarding so local / secure clusters aren't expected to support it. 2017-04-07 16:48:26 -04:00
Kubernetes Submit Queue b41e415ebd Merge pull request #43137 from shashidharatd/federation-domain
Automatic merge from submit-queue

[Federation] Remove FEDERATIONS_DOMAIN_MAP references

Remove all references to FEDERATIONS_DOMAIN_MAP as this method is no longer is used and is replaced by adding federation domain map to kube-dns configmap.

cc @madhusudancs @kubernetes/sig-federation-pr-reviews 

**Release note**:
```
[Federation] Mechanism of adding `federation domain maps` to kube-dns deployment via `--federations` flag is superseded by adding/updating `federations` key in `kube-system/kube-dns` configmap. If user is using kubefed tool to join cluster federation, adding federation domain maps to kube-dns is already taken care by `kubefed join` and does not need further action.
```
2017-04-06 02:05:42 -07:00
Jordan Liggitt 0d2e5a0dd8
Enable service account token lookup by default
```release-note
kube-apiserver: --service-account-lookup now defaults to true. This enables service account tokens to be revoked by deleting the Secret object containing the token.
```
2017-04-04 22:00:11 -04:00
Dan Williams f20437a822 hack/cluster: download cfssl if not present
hack/local-up-cluster.sh uses cfssl to generate certificates and
will exit it cfssl is not already installed.  But other cluster-up
mechanisms (GCE) that generate certs just download cfssl if not
present.  Make local-up-cluster.sh do that too.
2017-04-03 23:31:16 -05:00
Davanum Srinivas 605589dc0d Specify a directory for the logs
Switch from hard coded "/tmp" to a user specified location for
the logs. Default to "/tmp" to keep the current behavior and
not break any current users or jobs.
2017-03-31 15:17:14 -04:00
Kubernetes Submit Queue 2179ffeb63 Merge pull request #42379 from xilabao/enable-audit-log-in-local-cluster
Automatic merge from submit-queue (batch tested with PRs 42379, 42668, 42876, 41473, 43260)

Enable audit log in local cluster

fixes #42318

`ENABLE_APISERVER_BASIC_AUDIT=true hack/local-up-cluster.sh`
2017-03-30 23:36:20 -07:00
jayunit100 f3fb966e73 local up dns defaults 2017-03-30 17:35:40 -04:00
Kubernetes Submit Queue eaf8351d45 Merge pull request #41554 from jsafrane/local-up-class
Automatic merge from submit-queue

local-up-cluster.sh should create a default storage class

To make dynamic provisioning working out of the box in local cluster a default
storage class needs to be instantiated.

```release-note
NONE
```
2017-03-27 12:51:27 -07:00
deads2k 8e26fa25da wire in aggregation 2017-03-27 09:44:10 -04:00
Kubernetes Submit Queue dae73287ab Merge pull request #43569 from alejandroEsc/ae/localup/etcd3
Automatic merge from submit-queue (batch tested with PRs 43149, 41399, 43154, 43569, 42507)

allow etcd2/3 choice when bringing up a local cluster, default to etcd3

**What this PR does / why we need it**: local-up-cluster currently doesn't allow you to select which etcd version to use, here we allow you to select one, since k8s is moving towards etcd3 we suggest it to be the default.

**Special notes for your reviewer**: Note, i didnt realize this until i had used https://github.com/kubernetes/kubernetes/pull/42656 which made it immediately clear.

**Release note**:
```
NONE
```
2017-03-26 00:55:23 -07:00
Kubernetes Submit Queue 9aac45a5be Merge pull request #42347 from aveshagarwal/master-local-cluster-up-fix
Automatic merge from submit-queue

Fix local cluster up script for kube-public namespace error.

Fix local cluster up script for kube-public namespace error:
```
Error from server (AlreadyExists): namespaces "kube-public" already exists
```
2017-03-24 10:25:41 -07:00
Alejandro Escobar 6a8f55736a allow etcd2/3 choice when bringing up a local cluster, default to 3 but thats negotiable, it is what we will be using going forwards. 2017-03-23 06:42:44 -07:00
shashidharatd b09b20b598 Remove FEDERATIONS_DOMAIN_MAP references 2017-03-15 23:06:16 +05:30
Zihong Zheng 3acff7d3ef Update startup scripts for kube-dns ConfigMap and ServiceAccount 2017-03-09 11:10:23 -08:00
xilabao 183fd62a52 Enable audit log in local cluster 2017-03-02 17:02:50 +08:00
Avesh Agarwal 490d2e08cb Fix local cluster up script for following kube-public namespace error:
Error from server (AlreadyExists): namespaces "kube-public" already exists
2017-03-01 15:38:02 -05:00
Kubernetes Submit Queue 2249550b57 Merge pull request #42316 from feiskyer/cri-local
Automatic merge from submit-queue

This PR adds a new environmental variable ENABLE_CRI for customizing CRI

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

This PR adds a new environmental variable `ENABLE_CRI` for customizing CRI (e.g. switching between dockershim and dockertools) and sets `--enable-cri=true` by default.

**Which issue this PR fixes** 

Fixes #42315.

**Release note**:

```release-note
NONE
```

Maybe we should also cherry-pick this to 1.6 branch.

cc @yujuhong @Random-Liu
2017-03-01 07:09:19 -08:00
Pengfei Ni 36f551ab1d This PR adds a new environmental variable ENABLE_CRI for customing
CRI config.

Signed-off-by: Pengfei Ni <feiskyer@gmail.com>
2017-03-01 15:21:13 +08:00
deads2k 3d039f60cf allow incluster authentication info lookup 2017-02-28 13:29:59 -05:00
Vishnu Kannan cc5f5474d5 add support for node allocatable phase 2 to kubelet
Signed-off-by: Vishnu Kannan <vishnuk@google.com>
2017-02-27 21:24:44 -08:00
Andy Goldstein bd912f50ba statefulset: use pvc lister, replace legacylisters
Use a PVC lister instead of a client when retrieving PVCs.

Replace unit test's use of legacylisters with the generated listers.
2017-02-27 06:38:11 -05:00
Kubernetes Submit Queue 77ba346f55 Merge pull request #41815 from kevin-wangzefeng/enable-defaulttolerationseconds-admission-controller
Automatic merge from submit-queue (batch tested with PRs 40932, 41896, 41815, 41309, 41628)

enable DefaultTolerationSeconds admission controller by default

**What this PR does / why we need it**:
Continuation of PR #41414, enable DefaultTolerationSeconds admission controller by default.


**Which issue this PR fixes**: 
fixes: #41860
related Issue: #1574, #25320
related PRs: #34825, #41133, #41414 

**Special notes for your reviewer**:

**Release note**:

```release-note
enable DefaultTolerationSeconds admission controller by default
```
2017-02-26 08:09:58 -08:00
Kubernetes Submit Queue b799bbf0a8 Merge pull request #38816 from deads2k/rbac-23-switch-kubedns-sa
Automatic merge from submit-queue

move kube-dns to a separate service account

Switches the kubedns addon to run as a separate service account so that we can subdivide RBAC permission for it.  The RBAC permissions will need a little more refinement which I'm expecting to find in https://github.com/kubernetes/kubernetes/pull/38626 .

@cjcullen @kubernetes/sig-auth since this is directly related to enabling RBAC with subdivided permissions
 @thockin @kubernetes/sig-network since this directly affects now kubedns is added.  


```release-note
`kube-dns` now runs using a separate `system:serviceaccount:kube-system:kube-dns` service account which is automatically bound to the correct RBAC permissions.
```
2017-02-23 12:06:13 -08:00
Derek Carr 43ae6f49ad Enable per pod cgroups, fix defaulting of cgroup-root when not specified 2017-02-21 16:34:22 -05:00
Kevin cd427fa4be enable DefaultTolerationSeconds admission controller by default 2017-02-22 00:45:56 +08:00
Kubernetes Submit Queue caa9bd137b Merge pull request #41526 from xilabao/add-swagger-ui-option
Automatic merge from submit-queue (batch tested with PRs 41756, 36344, 34259, 40843, 41526)

add swagger ui in local cluster

use `ENABLE_SWAGGER_UI=true hack/local-up-cluster.sh`
2017-02-20 13:39:41 -08:00
Jordan Liggitt eaff780312
Revert "first steps to adding kubelet option to enable debugger mode, next steps is to included a warning message."
This reverts commit d3b2708ae8.
2017-02-20 13:41:20 -05:00
Kubernetes Submit Queue 506950ada0 Merge pull request #36765 from derekwaynecarr/quota-precious-resources
Automatic merge from submit-queue (batch tested with PRs 41421, 41440, 36765, 41722)

ResourceQuota ability to support default limited resources

Add support for the ability to configure the quota system to identify specific resources that are limited by default.  A limited resource means its consumption is denied absent a covering quota.  This is in contrast to the current behavior where consumption is unlimited absent a covering quota.  Intended use case is to allow operators to restrict consumption of high-cost resources by default.

Example configuration:

**admission-control-config-file.yaml**
```
apiVersion: apiserver.k8s.io/v1alpha1
kind: AdmissionConfiguration
plugins:
- name: "ResourceQuota"
  configuration:
    apiVersion: resourcequota.admission.k8s.io/v1alpha1
    kind: Configuration
    limitedResources:
    - resource: pods
      matchContains:
      - pods
      - requests.cpu
    - resource: persistentvolumeclaims
      matchContains:
      - .storageclass.storage.k8s.io/requests.storage
```

In the above configuration, if a namespace lacked a quota for any of the following:
* cpu
* any pvc associated with particular storage class

The attempt to consume the resource is denied with a message stating the user has insufficient quota for the matching resources.

```
$ kubectl create -f pvc-gold.yaml 
Error from server: error when creating "pvc-gold.yaml": insufficient quota to consume: gold.storageclass.storage.k8s.io/requests.storage
$ kubectl create quota quota --hard=gold.storageclass.storage.k8s.io/requests.storage=10Gi
$ kubectl create -f pvc-gold.yaml 
... created
```
2017-02-20 10:37:42 -08:00
Kubernetes Submit Queue 4e1ca53394 Merge pull request #41440 from alejandroEsc/ae/kubelet/debug
Automatic merge from submit-queue (batch tested with PRs 41421, 41440, 36765, 41722)

local-up-cluster, allow debug option to kubelet

**What this PR does / why we need it**: Allows for kubelet to start in debug mode.

**Release note**:
```
NONE
```
2017-02-20 10:37:41 -08:00
deads2k 36b586d5d7 move kube-dns to a separate service account 2017-02-20 07:35:08 -05:00
Derek Carr 3fad0cb52a Implement support for limited resources in quota 2017-02-18 12:10:22 -05:00
Pengfei Ni a106ef381d Defaulting client certs owner to current user if not speicified 2017-02-17 10:08:46 +08:00
deads2k b53b7f2062 make the on-infrastructure of kube-aggregator case easier 2017-02-16 09:31:20 -05:00
Jan Safranek d5c871d4cc local-up-cluster.sh should create a default storage class
To make dynamic provisioning working out of the box in local cluster a default
storage class needs to be instantiated.
2017-02-16 10:28:29 +01:00
xilabao 363bfaa5f2 add swagger ui in local cluster 2017-02-16 09:58:34 +08:00
Alejandro Escobar d3b2708ae8 first steps to adding kubelet option to enable debugger mode, next steps is to included a warning message.
added warning in case that debug mode is on for kubelet.
2017-02-15 12:20:16 -08:00
Yu-Ju Hong 9287d6eec3 Remove EXPERIMENTAL_CRI in local-up-cluster.sh
Kubelet now uses CRI by default.
2017-02-15 11:02:53 -08:00
deads2k c2ac9e5ca3 kube-aggregator manifests based on hostpath 2017-02-15 09:00:10 -05:00
Jordan Liggitt cc11d7367a
Switch kube-scheduler to secure API access 2017-02-15 01:05:42 -05:00
deads2k 1d40c3ff76 update scripts for new kube-aggregator location 2017-02-14 14:16:59 -05:00
Kubernetes Submit Queue aa724ae0a9 Merge pull request #41137 from resouer/pod-dir
Automatic merge from submit-queue

Add pod manifest path to local cluster

Added `POD_MANIFEST_PATH` to local cluster up because we are frequently using this flag when testing static & mirror pod during local dev.
2017-02-10 17:38:32 -08:00
Kubernetes Submit Queue f4baa5860f Merge pull request #41114 from ncdc/shared-informers-04-endpoints
Automatic merge from submit-queue (batch tested with PRs 39418, 41175, 40355, 41114, 32325)

Switch endpoints controller to shared informers

cc @bprashanth @thockin @deads2k @sttts @liggitt @smarterclayton  @kubernetes/sig-scalability-pr-reviews
2017-02-10 04:50:48 -08:00
Harry Zhang 984c43fb4e Add pod manifest path to local cluster 2017-02-10 10:44:03 +08:00
Kubernetes Submit Queue 76b39431d3 Merge pull request #41147 from derekwaynecarr/improve-eviction-logs
Automatic merge from submit-queue (batch tested with PRs 41074, 41147, 40854, 41167, 40045)

Add debug logging to eviction manager

**What this PR does / why we need it**:
This PR adds debug logging to eviction manager.

We need it to help users understand when/why eviction manager is/is not making decisions to support information gathering during support.
2017-02-09 17:41:41 -08:00
Andy Goldstein 80ddac7157 Fix controller manager RBAC in local-up-cluster
Change the name of the client cert used by the controller manager from
system:controller to system:kube-controller-manager, so the appropriate
RBAC rules are applied. Also remove the system:masters group from this
client cert so it doesn't have super powers.

Also, always enable using service account credentials in the controller
manager.
2017-02-09 20:40:43 -05:00
Derek Carr 0171121486 Add debug logging to eviction manager 2017-02-08 15:01:12 -05:00
xilabao 544e7aaee4 allow to set local kubeconfig and update the prompt 2017-02-07 13:35:41 +08:00
Kubernetes Submit Queue 4f1489edf0 Merge pull request #41045 from sttts/sttts-client-admin-key-readable
Automatic merge from submit-queue

Make client-admin.key of local-up-cluster.sh readable by kubectl

Follow-up of https://github.com/kubernetes/kubernetes/pull/40922
2017-02-06 15:35:28 -08:00
Kubernetes Submit Queue 1250278bf6 Merge pull request #40922 from berrange/hack-client-cert
Automatic merge from submit-queue

local-up-cluster: fix instructions for set-credentials

After launching the services, local-up-cluster.sh tells the
user how to configure kubectl to access it. The instructions
for 'set-credentials' enable plain password auth, but the
services are configured to mandate client certificate auth.
As a result it is not possible to access the cluster with
the instructions printed.

The use of client certs by default was added in

  commit a1b17db458
  Author: Dr. Stefan Schimanski <sttts@redhat.com>
  Date:   Sat Nov 12 23:09:04 2016 +0100

    Configure client certs in local-cluster-up.sh

and the instructions were correctly updated to refer to
client certificates.

The changed instructions were (mistakenly) reverted though
when the following commit was merged:

  commit 72e0e91b5e
  Author: xilabao <chenr.fnst@cn.fujitsu.com>
  Date:   Fri Dec 2 11:04:25 2016 +0800

    change prompt for enabling RBAC on local-up-cluster

Fixes: #40192

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-02-06 15:35:17 -08:00
Dr. Stefan Schimanski 15cec37e7b Make client-admin.key of local-up-cluster.sh readable by kubectl 2017-02-06 23:07:06 +01:00
Daniel P. Berrange 4ed13ec484 local-up-cluster: fix instructions for set-credentials
After launching the services, local-up-cluster.sh tells the
user how to configure kubectl to access it. The instructions
for 'set-credentials' enable plain password auth, but the
services are configured to mandate client certificate auth.
As a result it is not possible to access the cluster with
the instructions printed.

The use of client certs by default was added in

  commit a1b17db458
  Author: Dr. Stefan Schimanski <sttts@redhat.com>
  Date:   Sat Nov 12 23:09:04 2016 +0100

    Configure client certs in local-cluster-up.sh

and the instructions were correctly updated to refer to
client certificates.

The changed instructions were (mistakenly) reverted though
when the following commit was merged:

  commit 72e0e91b5e
  Author: xilabao <chenr.fnst@cn.fujitsu.com>
  Date:   Fri Dec 2 11:04:25 2016 +0800

    change prompt for enabling RBAC on local-up-cluster

Fixes: #40192

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-02-06 09:55:41 +00:00
Klaus Ma 00960b4d71 Using API_HOST_IP to do apiserver health check. 2017-02-06 04:22:20 +08:00
Kubernetes Submit Queue a777a8e3ba Merge pull request #39972 from derekwaynecarr/pod-cgroups-default
Automatic merge from submit-queue (batch tested with PRs 40289, 40877, 40879, 39972, 40942)

Rename experimental-cgroups-per-pod flag

**What this PR does / why we need it**:
1. Rename `experimental-cgroups-per-qos` to `cgroups-per-qos`
1. Update hack/local-up-cluster to match `CGROUP_DRIVER` with docker runtime if used.

**Special notes for your reviewer**:
We plan to roll this feature out in the upcoming release.  Previous node e2e runs were running with this feature on by default.  We will default this feature on for all e2es next week.

**Release note**:
```release-note
Rename --experiemental-cgroups-per-qos to --cgroups-per-qos
```
2017-02-04 04:43:08 -08:00
Derek Carr 75fa285a56 Make hack/local-up-cluster default to right cgroup driver 2017-02-03 17:28:23 -05:00
Morgan Bauer 21d976868f
print apiserver log location on apiserver error 2017-02-03 01:35:08 +00:00
Alejandro Escobar f79094e8a2 added warning message error about not running kubelet if not darwin/linux to my check 2017-01-26 13:11:27 -08:00
Alejandro Escobar 9ccade5939 added warning message to display when host_os is found to be darwin since kubelet is not supported in that case. 2017-01-26 13:03:49 -08:00
Seth Jennings e2750a305a reclaim terminated pod volumes 2017-01-20 11:08:35 -06:00
deads2k de725e56e2 prevent anonymous auth and allow all 2017-01-17 10:16:33 -05:00
Kubernetes Submit Queue efff7c0336 Merge pull request #39577 from kargakis/fix-openshift-example
Automatic merge from submit-queue (batch tested with PRs 39684, 39577, 38989, 39534, 39702)

examples: fix OpenShift example

Fixes https://github.com/kubernetes/kubernetes/issues/39575
2017-01-10 22:24:11 -08:00
deads2k 453651cbfc rename kubernetes-discovery to kube-aggregator 2017-01-10 12:27:42 -05:00
Michail Kargakis 68f23120a7 examples: fix OpenShift example 2017-01-09 09:58:35 +01:00
Slava Semushin 83a3cc4eea hack/local-up-cluster.sh: fix typo in error message.
And also remove stale comment.
2017-01-03 16:43:22 +01:00
xilabao f98af5b325 create psp policy in local-up-cluster.sh 2016-12-29 16:08:42 +08:00
Alejandro Escobar 7d9c06f82d local-up-cluster changes: added help option, added error message for why docker ps fails and how to recover, added test to check if etcd is in your path to fail fast when not found.
from etcd.sh split the start process into validate fucntion + start function so that the validate piece can be reused elsewhere. the up-cluster script has been changed to remove duplicate docker logic to the one used in buid-tools/common.sh and the validate etcd function is now used here.

moved docker daemon check function to util.sh and made function name changes and upstream changes.
2016-12-16 07:41:35 -08:00
Zihong Zheng 7921764b0f Second pass of renaming kube-dns configure files 2016-12-13 15:16:34 -08:00
deads2k 79a956c197 react to kube-dns yaml manifests moving 2016-12-12 09:30:31 -05:00
deads2k bcb8d8b8bb extra discovery start and cert generation 2016-12-12 08:28:29 -05:00
Kubernetes Submit Queue 3f7b000496 Merge pull request #38452 from euank/cfssl
Automatic merge from submit-queue (batch tested with PRs 38277, 36361, 38452)

local-up: resolve sudo -E'd paths better

This problem won't affect everyone, but for people who have `--with-secure-path` configured for their sudo binaries, `sudo -E` won't actually preserve PATH, which means the sub-bash won't necessarily be able to find the binary which `test` found to exist.
This fixes that.

Ubuntu [used to](https://bugs.launchpad.net/ubuntu/+source/sudo/+bug/50797) configure it that way, and they might still.
It's configured as such on my (Gentoo) machine.
2016-12-11 13:02:54 -08:00
Kubernetes Submit Queue e8bcf8d36e Merge pull request #38277 from xilabao/fix-advertise-address-in-local-cluster
Automatic merge from submit-queue

fix set advertise address in local cluster
2016-12-11 13:00:27 -08:00
Kubernetes Submit Queue 35d6d902e8 Merge pull request #38403 from deads2k/fix-local-up-dns
Automatic merge from submit-queue (batch tested with PRs 38284, 38403, 38265)

Fix local up cluster dns with RBAC

The DNS server needs permissions to run using RBAC.  This does it with a big hammer before we sort out tight permissions.

@fabianofranz for the CLI change
@xilabao for the local-up-cluster change
2016-12-09 08:50:21 -08:00
deads2k 207c04a3f8 update dns start to grant required RBAC permissions 2016-12-09 08:22:37 -05:00
Euan Kemp 327f0c531a local-up: resolve sudo -E'd paths better
On machines where sudo is configured with the `--with-secure-path`
option, the `sudo -E /bin/bash` portions of the script would execute
with a different path (e.g. not including $GOPATH/bin) and thus could
fail even though the check for those binaries passed.
2016-12-08 23:44:09 -08:00
deads2k fb9c109953 add summarizing discovery controller and handlers 2016-12-08 13:54:18 -05:00
Kubernetes Submit Queue 79f497bca7 Merge pull request #38389 from sttts/sttts-local-cluster-up-on-mac
Automatic merge from submit-queue

Fix local-cluster-up on Mac and discovery on all systems

- use cfssl on the host, not from Docker. Solves a number of permission problem with selinux and Mac
- fix discovery startup
2016-12-08 08:36:14 -08:00
xilabao 983fc20eba Be more defensive during kubernetes discovery server start 2016-12-08 16:10:49 +01:00
Dr. Stefan Schimanski cdc2d4c09c Fix startup of discovery server 2016-12-08 16:10:49 +01:00
Dr. Stefan Schimanski 8fefc4ff38 Do not use cfssl in Docker, but directly 2016-12-08 16:10:49 +01:00
Kubernetes Submit Queue 8cf079bd74 Merge pull request #28458 from rbtcollins/master
Automatic merge from submit-queue (batch tested with PRs 38260, 32811, 28458, 33570, 37096)

Fix support for DNS in local-up-cluster.sh

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

The default appears to be gce now, so this tries to spawn a service in
gce... not the desired outcome for a local test setup.

We also need to sync the kubectl config in the script with the instructions for users, since if people don't test with DNS enabled, it bitrots (which this aims to fix).

To test manually, run something like
```
sudo KUBE_ENABLE_CLUSTER_DNS=true API_HOST_IP=0.0.0.0 ./hack/local-up-cluster.sh
```

The API_HOST_IP=0.0.0.0 is required, otherwise the master is not contactable by kubedns, and the dns pod will fail readychecking on the healthz pod.
2016-12-08 02:11:22 -08:00
deads2k 798d3edabf add authentication/authorization to kubernetes-discovery 2016-12-07 09:33:43 -05:00
Kubernetes Submit Queue fc361206e7 Merge pull request #38264 from liggitt/fix-local-up-cluster
Automatic merge from submit-queue

Disable kubernetes-discovery in local-up-cluster.sh

fix #38257

Fixes local-up-cluster until kubernetes-discovery flags are hooked up
2016-12-07 06:13:57 -08:00
Kubernetes Submit Queue ffda42fa07 Merge pull request #38127 from deads2k/api-50-add-group
Automatic merge from submit-queue

update local-up-cluster to allow full authentication proxying

Adds group and header information in auth proxy authenticator options for `local-up-cluster.sh`.  Must have been missed in the rebase madness.
2016-12-07 05:33:23 -08:00
Jordan Liggitt 9070e3b161
Disable kubernetes-discovery in local-up-cluster.sh 2016-12-07 08:13:25 -05:00
xilabao 0517fe2c1d fix set advertise address in local cluster 2016-12-07 18:12:14 +08:00
Kubernetes Submit Queue d40710988f Merge pull request #38136 from deads2k/auth-11-join-certs
Automatic merge from submit-queue (batch tested with PRs 36990, 37494, 38152, 37561, 38136)

join client CA bundles

Last commit grabs client CA bundles from disparate parts of the auth config and makes a pool that contains all of them.

I suspect a rebase broke this because of ordering.  I'll keep these separate to make it easier for me to debug.
2016-12-06 14:13:37 -08:00
deads2k 6ea1d5d53d join client CA bundles into the accept path for genericapiserver 2016-12-06 09:56:13 -05:00
deads2k fdb0b2bca2 update local-up-cluster to allow full authentication proxying 2016-12-06 09:47:27 -05:00
deads2k 985d502ed3 add basic wiring for kubernetes-discovery to become a kube-like api server 2016-12-06 08:19:39 -05:00
xilabao 72e0e91b5e change prompt for enabling RBAC on local-up-cluster 2016-12-02 11:04:25 +08:00
deads2k 4bb280824b allow front-proxy authentication by default: 2016-12-01 10:11:37 -05:00
Dr. Stefan Schimanski 4ca84f9f63 local-up-cluster: avoid sudo for control plane 2016-12-01 14:10:12 +01:00
Kubernetes Submit Queue 44f00e1019 Merge pull request #36707 from sttts/sttts-local-cluster-up-client-certs
Automatic merge from submit-queue

Activate client certs in local-cluster-up.sh for RBAC

- set up client certs for each component in local-cluster-up.sh
2016-12-01 04:52:14 -08:00