Commit Graph

190 Commits

Author SHA1 Message Date
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
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
Kubernetes Submit Queue
09bb156116 Merge pull request #36915 from jayunit100/kubelet_fail_local_up
Automatic merge from submit-queue

[local-up-cluster] fail fast if kubelet start failed

Fixes #36832
2016-11-30 04:05:35 -08:00
Kubernetes Submit Queue
bfc2b77cf9 Merge pull request #36216 from xlgao-zju/skip-test-docker
Automatic merge from submit-queue

skip test docker if we do not use docker as container runtime.

skip test docker if we do not use docker as container runtime.

Signed-off-by: Xianglin Gao <xlgao@zju.edu.cn>
2016-11-29 07:32:08 -08:00
jayunit100
378c837e7a fail fast if kubelet start failed 2016-11-29 09:36:16 -05:00
Dr. Stefan Schimanski
a1b17db458 Configure client certs in local-cluster-up.sh 2016-11-28 09:24:37 +01:00
Robert Collins
d388f3100f Fix support for DNS in local-up-cluster.sh
- Fix unbound variables in hack/local-up-cluster.sh

- explicitly set KUBERNETES_PROVIDER in local-up-cluster.
  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.

- Remove stale creation of kube-system: the kube-system namespace is
  built in these days.

- Pickup third party etcd automatically.

- Retab hack/local-up-cluster.sh for consistency

- Update hack-local-up's internal credentials to match the user
  instructions we give (which work).

- Note the CA root requirement in local-up-cluster

- Fix a dangling comment in local-up-cluster

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 kubedns cannot contact
the master and the dns pod will fail readychecking on the healthz
container.
2016-11-22 13:18:55 +13:00
Pengfei Ni
41bb1c6af3 Fix syntax error in local-up-cluster.sh 2016-11-16 17:36:41 +08:00
mdshuai
2189acdd4f [kubelet]update --cgroups-per-qos to --experimental-cgroups-per-qos 2016-11-15 15:55:47 +08:00
pweil-
bbe9c8f96d add authz checks to allowed policies admission 2016-11-08 08:36:27 -05:00
Xianglin Gao
833ef552f5 skip test docker if we do not use docker as container runtime.
Signed-off-by: Xianglin Gao <xlgao@zju.edu.cn>
2016-11-08 14:03:35 +08:00
Yu-Ju Hong
dcce768a3e Rename experimental-runtime-integration-type to experimental-cri 2016-11-07 11:29:24 -08:00
Derek Carr
f11c5c6113 Fix hack/local-up by declaring defaults for unbound env vars 2016-11-06 12:50:54 -05:00
Jordan Liggitt
d3991aa7c6
Cleanup auth logging, allow starting secured kubelet in local-up-cluster.sh 2016-11-03 16:17:11 -04:00
Kubernetes Submit Queue
c4eb04afa2 Merge pull request #36147 from jsafrane/fix-local-up
Automatic merge from submit-queue

Fix typo in local-up-cluster

Use curly braces instead of round ones for bash variable expansion. The
script complains about unknown ROOT_CA_FILE when running with
KUBE_ENABLE_CLUSTER_DNS=true.
2016-11-03 12:05:03 -07:00
Jan Safranek
8876ff8901 Fix typo in local-up-cluster
Use curly braces instead of round ones for bash variable expansion. The
script complains about unknown ROOT_CA_FILE when running with
KUBE_ENABLE_CLUSTER_DNS=true.
2016-11-03 10:28:22 +01:00
derekwaynecarr
42289c2758 pod and qos level cgroup support 2016-11-02 08:07:04 -04:00
Kubernetes Submit Queue
44b684ad53 Merge pull request #33663 from pmorie/selinux-fixes
Automatic merge from submit-queue

SELinux Overhaul

Overhauls handling of SELinux in Kubernetes.  TLDR: Kubelet dir no longer has to be labeled `svirt_sandbox_file_t`.

Fixes #33351 and #33510.  Implements #33951.
2016-11-01 05:04:17 -07:00
deads2k
5b3e2b230b make localupcluster work with RBAC enabled 2016-10-28 13:19:25 -04:00
Lucas Käldström
6846e0b48a Remove usage of --reconcile-cidr 2016-10-26 20:26:07 +03:00
Paul Morie
38f6f9b956 Remove SELinux relabel of Kubelet dir from local-up-cluster.sh 2016-10-26 09:38:03 -04:00
bprashanth
9d7c57ff2e Pass --experimental-runtime-integration-type in local-up-cluster 2016-10-24 15:01:45 -07:00
Kubernetes Submit Queue
7007064e1e Merge pull request #35160 from mml/luc-cleanup
Automatic merge from submit-queue

Remove unneeded double quotes from hack/local-up-cluster.sh.
2016-10-19 17:29:12 -07:00
Matt Liggett
1decca8202 Remove unneeded double quotes from hack/local-up-cluster.sh.
They freak out vim syntax highlighting when they are combined with a '/'
character.
2016-10-19 15:12:11 -07:00
Davanum Srinivas
20d1818d78 Enable local-up-cluster.sh to start with the secured port
Generate a kubeconfig for use with controller-manager, kubelet,
scheduler etc. This kubeconfig should use the secure https
port of the api server with appropriate ca cert for the components
to talk to api server.

With this change, one can set API_PORT=0 to completely switch off
insecure access for testing admission controllers etc.

Fixes #33375
2016-10-19 06:36:01 -04:00
Kubernetes Submit Queue
4b7024efe7 Merge pull request #27784 from deads2k/catch-mutators
Automatic merge from submit-queue

add optional mutation checks for shared informer cache

We need to make sure that no one is mutating caches if they're using a shared informer.  It is important that whatever is tracking those changes gets the object *before* anyone else possibly could.

This adds the ability to track the original objects in the cache and their current values.  Go doesn't have an exit hook or a way to say "wait for non-daemon go-funcs to complete before exit", so this runs a gofunc on a loop that can panic the entire process.  It's gated behind an env var.

@derekwaynecarr did I get the right spots to make sure that e2e runs with this flag?
@smarterclayton @kubernetes/rh-cluster-infra
2016-10-18 14:38:57 -07:00
deads2k
aee54ae57e add optional mutation checks for shared informer cache 2016-10-18 09:19:38 -04:00
Euan Kemp
973b417aa5 local-up: Add option to guess binary path 2016-10-17 11:55:29 -07:00
deads2k
127e335802 add flag for enabling RBAC on local-up-cluster 2016-10-12 11:32:09 -04:00
Bernard Van De Walle
f1b1c92ada adding paraneter for API_BIND_ADDRESS in local-up-cluster.sh. Default value is 0.0.0.0 2016-10-06 14:30:29 -07:00
Kubernetes Submit Queue
63139f937c Merge pull request #30787 from jbeda/rsync
Automatic merge from submit-queue

Speed up dockerized builds

This PR speeds up dockerized builds.  First, we make sure that we are as incremental as possible.  The bigger change is that now we use rsync to move sources into the container and get data back out.

To do yet:
* [x] Add a random password to rsync.  This is 128bit MD4, but it is better than nothing.
* [x] Lock down rsync to only come from the host.
* [x] Deal with remote docker engines -- this should be necessary for docker-machine on the mac.
* [x] Allow users to specify the port for the rsync daemon.  Perhaps randomize this or let docker pick an ephemeral port and detect the port?
* [x] Copy back generated files so that users can check them in.  This is done for `zz_generated.*` files generated by `make generated_files` 
  * [x] This should include generated proto files so that we can remove the hack-o-rama that is `hack/hack/update-*-dockerized.sh` 
* [x] Start "versioning" the build container and the data container so that the CI system doesn't have to be manually kicked.
* [x] Get some benchmarks to qualify how much faster.

This replaces #28518 and is related to #30600.

cc @thockin @spxtr @david-mcmahon @MHBauer 

Benchmarks by running `make clean ; sync ; time bash -xc 'time build/make-build-image.sh ; time sync ; time build/run.sh make ; time sync; time build/run.sh make'` on a GCE n1-standard-8 with PD-SSD.

| setup | build image | sync | first build | sync | second build | total |
|-------|-------------|----- |----------|------|--------------|------|
| baseline | 0m11.420s | 0m0.812s | 7m2.353s | 0m42.380s | 7m8.381s | 15m5.348s |
| this pr | 0m10.977s | 0m15.168s | 7m31.096s | 1m55.692s | 0m16.514s | 10m9.449s |
2016-10-05 19:51:09 -07:00
Kubernetes Submit Queue
dffac87ce6 Merge pull request #33501 from bprashanth/feature_gate
Automatic merge from submit-queue

Enable alpha features in local-up-cluster

because why not
2016-10-03 21:10:39 -07:00
Joe Beda
d955f54918 Remove unused bash variables 2016-10-03 19:42:22 -07:00
Kubernetes Submit Queue
6c5a187171 Merge pull request #33378 from deads2k/rbac-10-allow-token
Automatic merge from submit-queue

add anytoken authenticator

Adds `--insecure-allow-any-token` as a flag to the API server to create an authenticator that will accept any bearer token and transform it into a user by parsing it out as `username/group1,group2,...`.

This gives an easy way to identify as a user and check permissions:
```bash
ALLOW_ANY_TOKEN=true hack/local-up-cluster.sh 
kubectl config set-cluster local-kube --server=https://localhost:6443 --insecure-skip-tls-verify=true
kubectl config set-credentials david --token=david/group1
kubectl config set-context local --cluster=local-kube --user=david
kubectl config use-context local
```

@kubernetes/sig-auth
2016-09-29 12:32:08 -07:00