Commit Graph

432 Commits

Author SHA1 Message Date
Zach Loafman
399f7dee43 Clean up safe_format_and_mount spam in the startup logs
Totally minor cleanup, but I'm tired of seeing it's spam in the
startup logs.
2015-05-05 21:23:57 -07:00
Zach Loafman
c78eabbfac Update to container-vm-v20150505 2015-05-05 17:15:54 -07:00
Jerzy Szczepkowski
e967ffd522 Added flag to set cluster class B network address for pods, add flag to disable allocation CIDRs for Pods. Fixed synchornization bug in NodeController registerNodes(). 2015-05-05 16:10:43 -07:00
Tomek Kulczynski
290c7b94ef Make nodecontroller configure nodes' pod IP ranges 2015-05-05 16:10:42 -07:00
Zach Loafman
875e83a741 Revert "Revert "Security context - types, kubelet, admission"" 2015-05-05 16:02:13 -07:00
Zach Loafman
f48904fd5e Revert "Security context - types, kubelet, admission" 2015-05-05 15:20:39 -07:00
Paul Weil
5acdf5e70b remove trailing comma. Add sc admission controller to ansible and systemd 2015-05-05 16:34:38 -04:00
Paul Weil
982bf19c20 security context initial implementation - squash 2015-05-05 13:46:13 -04:00
Zach Loafman
0c107e4c44 Also push .sha1 for devel builds
And adds a .sha1 cache file to indicate what file was already pushed
to GCS, and how to force it if not, removing a few seconds off a
kube-up/push if you're just cycling.

With this and #7602, all TAR_URLS will have a .sha1 as well.
2015-05-04 17:45:34 -07:00
Robert Bailey
9718d667a7 Merge pull request #7744 from zmerlynn/allow_builtin_salt
Skip SaltStack install if it's already installed
2015-05-04 16:32:56 -07:00
Zach Loafman
dd7f3f7df7 Skip SaltStack install if it's already installed
Next ContainerVM image will have SaltStack in it. Also be a little
less persnickety if it's found running. This isn't the case, but we
don't have to be aggressive.
2015-05-04 16:12:53 -07:00
Yu-Ju Hong
5270ce6d28 Merge pull request #7671 from vmarmol/fix-metadata
Make rkt-install a oneshot.
2015-05-04 10:50:36 -07:00
Yu-Ju Hong
c3ba88296b Merge pull request #7665 from vmarmol/cluster-rkt
Provide container_runtime flag to Kubelet in CoreOS.
2015-05-04 10:06:58 -07:00
Victor Marmol
9253249b19 Make rkt-install a oneshot.
This will make our dependencies wait for us before they execute.
2015-05-01 17:44:44 -07:00
Victor Marmol
727016dc30 Provide container_runtime flag to Kubelet in CoreOS. 2015-05-01 17:02:33 -07:00
Eric Paris
6b3a6e6b98 Make copyright ownership statement generic
Instead of saying "Google Inc." (which is not always correct) say "The
Kubernetes Authors", which is generic.
2015-05-01 17:49:56 -04:00
Brian Akins
b311a12d90 Use the variable as this changes based on environment. 2015-04-30 12:40:09 -04:00
Yifan Gu
9ba1839f52 cluster/gce/coreos: Add metadata-service in node.yaml 2015-04-29 14:58:26 -07:00
Dawn Chen
876f8beec9 Remove unused node-name attribute 2015-04-28 16:13:26 -07:00
Dawn Chen
13a0b033e2 Bring up a cluster using coreos image for worker nodes. 2015-04-28 16:13:26 -07:00
Dawn Chen
5fa11322f8 Factory out debian e.g. ContainerVM image specific support to its own
helper utility library.
2015-04-28 16:07:57 -07:00
Dawn Chen
8963347b9e Introduce MASTER_IMAGE, MINION_IMAGE and OS_DISTRIBUTION to config-default
for enable coreos and rocket support
2015-04-28 15:31:09 -07:00
Robert Bailey
8206aa9eac Salt configuration to add basic auth to GCE. 2015-04-28 14:07:54 -07:00
Alex Robinson
566f0d4724 Fix GCE logging scope name. 2015-04-28 13:44:30 -07:00
Alex Robinson
5b5525dca5 Merge pull request #7324 from vishh/log_scope
Enable logging.write scope for minions.
2015-04-28 11:00:10 -07:00
Vishnu Kannan
9c66305f8c Enable logging.write scope by default for nodes. This is required for storing events in
Google Cloud Logging via heapster.
2015-04-28 10:55:06 -07:00
CJ Cullen
39c5bf363b Merge pull request #7303 from erictune/kube_env3
kube-proxy uses token to access port 443 of apiserver
2015-04-27 14:33:53 -07:00
Eric Tune
9044177bb6 Generate a token for kube-proxy.
Tested on GCE.
Includes untested modifications for AWS and Vagrant.
No changes for any other distros.
Probably will work on other up-to-date providers
but beware.  Symptom would be that service proxying
stops working.

 1. Generates a token kube-proxy in AWS, GCE, and Vagrant setup scripts.
 1. Distributes the token via salt-overlay, and salt to /var/lib/kube-proxy/kubeconfig
 1. Changes kube-proxy args:
   - use the --kubeconfig argument
   - changes --master argument from http://MASTER:7080 to https://MASTER
     - http -> https
     - explicit port 7080 -> implied 443

Possible ways this might break other distros:

Mitigation: there is an default empty kubeconfig file.
If the distro does not populate the salt-overlay, then
it should get the empty, which parses to an empty
object, which, combined with the --master argument,
should still work.

Mitigation:
  - azure: Special case to use 7080 in
  - rackspace: way out of date, so don't care.
  - vsphere: way out of date, so don't care.
  - other distros: not using salt.
2015-04-27 08:59:57 -07:00
Brian Grant
60d7bad147 Merge pull request #7128 from nikhiljindal/fixbeta1tests
Removing more references to v1beta1 from pkg/
2015-04-24 11:07:53 -07:00
Satnam Singh
b6bee06c20 Merge pull request #7269 from zmerlynn/lose_one_sanity
Remove buggy GCE post turn-up cluster validation code (rely on validate-cluster.sh)
2015-04-24 10:56:20 -07:00
nikhiljindal
dcc368c781 Removing more references to v1beta1 from pkg/ 2015-04-24 00:45:17 -07:00
Zach Loafman
ad829dead7 Remove buggy GCE post turn-up cluster validation code (rely on validate-cluster.sh)
Fixes #7266
2015-04-23 16:28:44 -07:00
Eric Tune
e8a83b23d1 Pass KUBELET_TOKEN in kube-env metadata.
ensure-kube-token is not needed anymore because
the token passed in kube-env.

In the up case it is set, in the push case it is an empty string
but not used.

Allow unset KUBELET_TOKEN (for push case).

Fix comment.
2015-04-23 15:21:27 -07:00
Wojciech Tyczynski
cf824ae5e0 Merge pull request #7164 from fgrzadkowski/fix_wait_minion
Wait for minion to start even if gcloud command fails.
2015-04-23 08:21:19 +02:00
Robert Bailey
6951bb0bd5 Fix the restart-apiserver command for GCE/GKE. 2015-04-22 15:21:13 -07:00
Robert Bailey
4346c6ecae Swallow the output from the test ssh connections so that it
doesn't interfere with string comparison.
2015-04-22 14:19:15 -07:00
Robert Bailey
dc45f7f9e6 Remove nginx and replace basic auth with bearer token auth for GCE.
- Configure the apiserver to listen securely on 443 instead of 6443.
 - Configure the kubelet to connect to 443 instead of 6443.
 - Update documentation to refer to bearer tokens instead of basic auth.
2015-04-22 11:11:20 -07:00
Zach Loafman
86468cd29d Revert "Added kube-proxy token." 2015-04-22 10:55:08 -07:00
Zach Loafman
0e3e502d52 Fix unbound variable after #7146 2015-04-22 10:19:53 -07:00
Zach Loafman
42e1710ccf Fix build after #7146 2015-04-22 10:11:19 -07:00
Zach Loafman
c9988db0ee Merge pull request #7146 from brendandburns/get-k8s
Extend the get-cluster.sh script to use sudo if necessary.
2015-04-22 09:58:07 -07:00
Brendan Burns
42121d1809 Extend the get-cluster.sh script to use sudo if necessary. 2015-04-22 09:52:44 -07:00
Zach Loafman
854c20c5e2 Merge pull request #7113 from erictune/kube-proxy-token
Added kube-proxy token.
2015-04-22 09:16:04 -07:00
Filip Grzadkowski
780db9d794 Wait for minion to start even if gcloud command fails. 2015-04-22 16:37:22 +02:00
Brendan Burns
78dabbdb7f Fix the ssh-to-node to actually fail on failures. 2015-04-21 15:27:38 -07:00
Brendan Burns
71e6b05825 Fix kube-apiserver restart. 2015-04-21 15:11:00 -07:00
Brendan Burns
9d715226d6 Fix kube-apiserver restart. 2015-04-21 13:59:26 -07:00
Eric Tune
2ca8a9d15d Added kube-proxy token.
Generates the new token on AWS, GCE, Vagrant.
Renames instance metadata from "kube-token" to "kubelet-token".
(Is this okay for GKE?)

Having separate tokens for kubelet and kube-proxy permits
using principle of least privilege, makes it easy to
rate limit the clients separately, allows annotation
of apiserver logs with the client identity at a finer grain
than just source-ip.
2015-04-21 09:21:31 -07:00
Jeff Lowdermilk
196b3d066d Merge pull request #6919 from zmerlynn/sharded-e2e
Add hack/parallel-e2e.sh to run hack/e2e.go on multiple clusters
2015-04-20 11:34:18 -07:00
Zach Loafman
68c9191cfc Allow CLUSTER_IP_RANGE/MINION_IP_RANGE to be overridden by KUBE_GCE_CLUSTER_CLASS_B 2015-04-20 11:17:21 -07:00
Jeff Lowdermilk
4f6dc99075 Generate kubeconfig for all providers in cluster/ that use auth 2015-04-20 11:07:35 -07:00
Robert Bailey
eb1ea26995 Merge pull request #7012 from jlowdermilk/export-kubeconfig
export KUBECONFIG so callers of common.sh functions can use it
2015-04-17 16:37:10 -07:00
Jeff Lowdermilk
1c265f3784 export KUBECONFIG so callers of common.sh functions can use it 2015-04-17 16:22:07 -07:00
Brian Grant
2775b9e0de Merge pull request #6998 from zmerlynn/make_reboot_work
Make reboots work on GCE/GKE
2015-04-17 16:10:32 -07:00
Zach Loafman
bcb63642b8 Make reboots work on GCE/GKE
* Fixes an issue where salt-minion would actually come up after reboot
(upstart is horrible obnoxious)
* Caches .deb downloads
* Handles PD remount on reboot correctly
* Notes a future optimization

Fixes #5666
2015-04-17 12:12:00 -07:00
Zach Loafman
aca8452a21 Merge pull request #6994 from cjcullen/staticip
Reserve Master IP before creating Master VM
2015-04-17 11:48:48 -07:00
CJ Cullen
6a3c809833 Reserve Master IP before creating Master VM. 2015-04-17 11:36:00 -07:00
Zach Loafman
05d8e96cd4 Push the configure-vm.sh script when we push metadata
This is needed when we upgrade (and useful when you're trying to
change the startup script for reboots).

Along the way: allow add-instance-metadata[-from-file] to take a
variable number of KVs.
2015-04-17 11:27:48 -07:00
Jeff Lowdermilk
2a8291a67e Retry Move KUBECONFIG to common.sh, change default to new location 2015-04-17 10:33:12 -07:00
Robert Bailey
723f2941e8 Revert "Move KUBECONFIG into common.sh, change default to new location" 2015-04-16 22:17:11 -07:00
Jeff Lowdermilk
5ce9b07cbe Move KUBECONFIG declaration into common.sh, change default to new location 2015-04-16 19:23:35 -07:00
Wojciech Tyczynski
4094505f84 Enable configuring size of minion disk 2015-04-15 11:19:43 +02:00
Brendan Burns
5df4d927b9 We have had user reports that look like hash conflicts. Expand the has to 10 digits. 2015-04-08 21:51:50 -07:00
Rohit Jnagal
13b805fe1e Merge pull request #6504 from ghodss/gce-customize-minion-size
Make minion disk size in GCE kube-up customizable
2015-04-07 08:36:43 -07:00
Sam Ghods
6ec32bf16c Make minion disk size in GCE kube-up customizable 2015-04-06 21:47:45 -07:00
Fabio Yeon
fd7db14df0 Add local file option to "upgrade.sh". 2015-04-06 16:30:15 -07:00
Zach Loafman
616c6be653 Refactor the "gcloud compute instances create" call as well. 2015-04-06 08:35:02 -07:00
Zach Loafman
9e5fd874cc First hack at upgrade script for GCE:
Address #6075: Shoot the master VM while saving the master-pd. This
takes a couple of minor changes to configure-vm.sh, some of which also
would be necessary for reboot. In particular, I changed it so that the
kube-token instance metadata is no longer required after inception;
instead, we mount the master-pd and see if we've already created the
known tokens file before blocking on the instance metadata.

Also partially addresses #6099 in bash by refactoring the kube-push
path.
2015-04-05 11:42:34 -07:00
Filip Grzadkowski
0ffabfa9f7 Add ability to set master/minion size for GCE using envvar. 2015-04-03 11:36:05 +02:00
Eric Tune
59daeabaee Make secrets at cluster startup.
These secrets will be used in subsequent PRs by:
scheduler, controller-manager, monitoring services,
logging services, and skydns.

Each of these services will then be able to stop using kubernetes-ro
or host networking.
2015-04-02 15:58:45 -07:00
CJ Cullen
5e6e67ba59 Add an alternative TokenSource to the GCE CloudProvider. 2015-04-01 17:52:30 -07:00
Jeff Lowdermilk
ce72839153 Merge pull request #6329 from mbforbes/fixUp
Fix pod that's looked for on kube up.
2015-04-01 17:51:37 -07:00
Alex Robinson
4f9b1c486f Don't ever give up on retrying downloads in the GCE download-or-bust function. 2015-04-02 00:40:19 +00:00
Max Forbes
152a461f39 Fix pod that's looked for on kube up. 2015-04-01 17:28:04 -07:00
Jeff Grafton
0d382c03fc Add missing } to fix cluster/gce/util.sh 2015-03-31 14:03:18 -07:00
Robert Bailey
fe00f7abd0 Merge pull request #6168 from brendandburns/docs
Auto-install gcloud and needed components, if necessary
2015-03-31 13:55:46 -07:00
Zach Loafman
6c219885e0 s/apiservers/api_servers/ in Salt
It looks like api_servers finally won this battle. Kill off the
last remaining places passing it, but allow the kubelet Salt to
accept apiservers for a period of time.

(This was bothering my OCD.)
2015-03-31 12:29:46 -07:00
Brendan Burns
98cdf04189 Auto-install gcloud if needed. 2015-03-31 12:10:35 -07:00
Victor Marmol
0c75f26a74 Merge pull request #6148 from zmerlynn/brctl_complaint
Fix "brctl: invalid command" message appearing in startup logs
2015-03-30 08:01:30 -07:00
Zach Loafman
b3636bba34 Fix "brctl: invalid command" message appearing in startup logs
We were actually failing to call brctl in configure-vm.sh. I finally
tracked it down to the attempt to delete the docker0 bridge. This
particular package was getting installed later by Salt anyways, so
all this PR is doing is moving the package install up from Salt to
bash.

Also adds some minor logging.
2015-03-29 18:30:33 -07:00
Zach Loafman
708553f0bb GCE node salt: Use the master FQDN, not the master IP
This will allow us to upgrade the master by full re-provision, without
even bothering to reserve the IP.
2015-03-28 13:44:45 -07:00
Daniel Smith
525bbfd175 Merge pull request #6103 from zmerlynn/remove_gce_node_names
Remove the --machines SaltStack configuration on GCE
2015-03-27 17:55:16 -07:00
Zach Loafman
68ccb97907 Remove the --machines SaltStack configuration on GCE
Per https://github.com/GoogleCloudPlatform/kubernetes/issues/6072#issuecomment-87074456, this is no longer necessary.
We now no longer need a static node list. Woo!
2015-03-27 14:44:19 -07:00
Brendan Burns
6fd376a04f Fix the scripts to optionally skip prompts and also return successfully no matter what. 2015-03-27 13:53:26 -07:00
Brendan Burns
1aa2b97792 Revert "Revert "Update gce starting guide to use get.k8s.io""
This reverts commit b369f2b48f.
2015-03-27 13:46:28 -07:00
Zach Loafman
b369f2b48f Revert "Update gce starting guide to use get.k8s.io" 2015-03-26 19:36:25 -07:00
Brendan Burns
61b624457d Update gce starting guide to use get.k8s.io
Also auto install gcloud if it's not present.
2015-03-26 16:08:56 -07:00
Max Forbes
ddb0a70481 Fix tiny salt logging line. 2015-03-26 14:37:51 -07:00
Brendan Burns
eea09ddfbb Fix the date command to work on OS X 2015-03-26 13:48:59 -07:00
Zach Loafman
ed567736ea Retry apt operations to death
Nodes are probably broken if update or install fails. Don't proceed
if we can't get past these. Also, instead of ignoring the error off
dpkg, use --force depends, which changes the errors to be kinder
warnings for anyone looking through the logs.
2015-03-24 16:11:40 -07:00
derekwaynecarr
ee53dfc741 Turn on namespace lifecycle plug-in 2015-03-24 10:36:06 -04:00
Robert Bailey
c3189657b6 Bump the default boot disk size for GCE from 10GB to 100GB so that there is
more space to store containers and image layers.
2015-03-20 13:06:35 -07:00
Zach Loafman
407d1fec45 Both @satnam6502 and E2E tests confirm: This code is no longer needed
Deletion is wonderful. The only weird thing was where to put the
message about the proxy URLs. Satnam suggested kubectl clusterinfo,
which seemed like a good option to put at the end of cluster turn-up.
2015-03-19 22:23:11 -07:00
Zach Loafman
57cd8165b0 Ensure salt-minion never starts by setting invoke-rc.d policy using
the /usr/sbin/policy-rc.d script and returning 101, per
https://people.debian.org/~hmh/invokerc.d-policyrc.d-specification.txt,
but only for the window while we're installing Salt.

This is a much more fool-proof method than what I was attempting
before. I hunted for how to do this before and clearly failed at my
Google-fu.

Fixes #5621
2015-03-18 16:15:24 -07:00
Vish Kannan
b6e7f470cb Merge pull request #5576 from vmarmol/auth
Add monitoring scope to default GCE config.
2015-03-17 17:22:52 -07:00
Victor Marmol
8e2dc04da8 Add monitoring scope to default GCE config.
This will allow Heapster to run GCM-based monitoring on the nodes.
2015-03-17 17:02:10 -07:00
Dawn Chen
dce75998d0 Upgrade to container-vm-20150315 2015-03-17 16:10:39 -07:00
Zach Loafman
f2de7b4dcc Add --can-ip-forward to master instance
Another piece missing in
https://github.com/GoogleCloudPlatform/kubernetes/pull/5390. The
master should have --can-ip-forward if you're routing to it.
2015-03-13 15:17:07 -07:00
Filipe Brandenburger
0948cb745f Merge pull request #5454 from jlowdermilk/get-password
Make get-password robust against invalid kubeconfig entries
2015-03-13 13:40:55 -07:00
Jeff Lowdermilk
8fef6fb343 Make get-password robust against invalid kubeconfig entries 2015-03-13 13:26:47 -07:00
Jeff Lowdermilk
9b55e1f176 Delete master route on kube-down 2015-03-13 11:00:19 -07:00
Satnam Singh
dfb9f2aa17 Revert "Revert "Actually update binaries during kube-push"" 2015-03-12 18:04:36 -07:00
Satnam Singh
bb2c3037e0 Revert "Actually update binaries during kube-push" 2015-03-12 17:09:50 -07:00
Satnam Singh
c3951d7cf6 Merge pull request #5415 from zmerlynn/fix_binary_push
Actually update binaries during kube-push
2015-03-12 16:51:28 -07:00
Zach Loafman
b02188b7d8 Actually update binaries during kube-push
This was a dumb mistake during a re-factor of configure-vm. I tested
this early, re-factored the tail of this file, spot checked kube-push
and failed to test kube-push properly. My bad.

Fixes #5361. Fixes #5408.
2015-03-12 16:44:32 -07:00
Brendan Burns
5d9fe6212c Add MASTER_IP_RANGE to e2e. 2015-03-12 14:22:03 -07:00
Zach Loafman
9fc5262c14 Infer KUBERNETES_MASTER from hostname rather than requiring it to be explicit
This allows GKE to have the same YAML on both the master and nodes
2015-03-12 11:51:21 -07:00
Satnam Singh
e16bcceceb Merge pull request #5390 from brendandburns/shell_sucks
Configure docker on the master like we do on workers.
2015-03-12 11:42:03 -07:00
Brendan Burns
17ff8fb421 Configure docker on the master like we do on workers. 2015-03-12 10:37:30 -07:00
Alex Robinson
bc655681fe Merge pull request #5352 from zmerlynn/conditional_disk
Don't always run mount-master-pd
2015-03-12 10:19:04 -07:00
Victor Marmol
c03b080328 Merge pull request #5332 from vishh/heapster_e2e
Adding a ginkgo version of monitoring e2e test
2015-03-12 08:37:45 -07:00
Zach Loafman
d4f06cea9f Don't always run mount-master-pd 2015-03-11 19:58:44 -07:00
Vishnu Kannan
e7aca5c337 Enable heapster based cluster monitoring by default on other cluster providers, expect for GKE. 2015-03-11 23:34:04 +00:00
Vishnu Kannan
663bdb91c9 Remove monitoring firewall setup methods. Heapster anf Grafana are now accessible via the API server proxy. 2015-03-11 23:20:45 +00:00
Vishnu Kannan
425dd7e3ee Adding a heapster ginkgo e2e test. 2015-03-11 21:47:47 +00:00
Zach Loafman
e780592315 Merge pull request #5264 from jlowdermilk/kube-up
Standalone kubeconfig for gce kube-up (mulligan)
2015-03-11 11:46:45 -07:00
derekwaynecarr
64eca7393a Update to use yaml quote 2015-03-11 11:07:36 -04:00
derekwaynecarr
468bf1da75 Enable common set of admission controllers across salt providers 2015-03-11 11:06:00 -04:00
Zach Loafman
759e82c29f Remove dep on yaml for GCE startup
Write out "yaml" in util.sh. Dying a little. :'(

Fixes #5258
2015-03-10 16:38:52 -07:00
Zach Loafman
7333d991fb Revert "Fix need for yaml in GCE kube-up by importing PyYAML into third_party" 2015-03-10 15:42:28 -07:00
Jeff Lowdermilk
7db006ab1a Generate standalone kubeconfig on kube-up, clear on kube-down.
Also tweaked the ginkgo tests to pull auth directly from a kubeconfig file
instead of the legacy kubernetes_auth file.
2015-03-10 14:23:34 -07:00
Zach Loafman
965f684e2f Adjust kube-env.py to use third_party PyYAML 2015-03-10 13:53:13 -07:00
Zach Loafman
b31b633f85 One additional cleanup: Send only the master name, rather the internal
IP address. The configure-vm script can resolve this relatively easily
on the node. This is less painful for GKE, which creates all the
resources in parallel.
2015-03-10 09:04:29 -07:00
Zach Loafman
120dba474e Change GCE to use standalone Saltstack config:
Change provisioning to pass all variables to both master and node. Run
Salt in a masterless setup on all nodes ala
http://docs.saltstack.com/en/latest/topics/tutorials/quickstart.html,
which involves ensuring Salt daemon is NOT running after install. Kill
Salt master install. And fix push to actually work in this new flow.

As part of this, the GCE Salt config no longer has access to the Salt
mine, which is primarily obnoxious for two reasons: - The minions
can't use Salt to see the master: this is easily fixed by static
config. - The master can't see the list of all the minions: this is
fixed temporarily by static config in util.sh, but later, by other
means (see
https://github.com/GoogleCloudPlatform/kubernetes/issues/156, which
should eventually remove this direction).

As part of it, flatten all of cluster/gce/templates/* into
configure-vm.sh, using a single, separate piece of YAML to drive the
environment variables, rather than constantly rewriting the startup
script.
2015-03-10 09:04:29 -07:00
Jeff Lowdermilk
a280e0da2d Revert "Standalone kubeconfig for gce kube-up" 2015-03-09 17:45:06 -07:00
Satnam Singh
89bc7bbea9 Merge pull request #5154 from jlowdermilk/kube-up
Standalone kubeconfig for gce kube-up
2015-03-09 16:22:51 -07:00
Jeff Lowdermilk
4173d369aa Generate standalone kubeconfig on kube-up, clear on kube-down.
Also tweaked the ginkgo tests to pull auth directly from a kubeconfig file
instead of the legacy kubernetes_auth file.
2015-03-09 16:02:00 -07:00
Dawn Chen
38178299bb Upgrade to latest containervm image: v20150305 2015-03-06 13:54:33 -08:00
roberthbailey
83c3c53ff6 Merge pull request #5014 from justinsb/aws_cluster_push
Copy download-or-bust helper from gce to aws
2015-03-04 16:26:01 -08:00
Justin Santa Barbara
05d4aea3bf Copy download-or-bust helper from gce to aws
During a push, we were wget-ing to <filename>.1, .2, etc, which wasn't working
2015-03-04 16:30:11 -05:00
Justin Santa Barbara
12e785c3b8 Implement restart-apiserver for AWS, fix comment 2015-03-04 15:35:29 -05:00
Dawn Chen
2a6b5a2262 Removed staled docker artifacts on GCE minions. 2015-03-02 23:24:29 -08:00
Satnam Singh
e918f36c2b Fix URL for Elasticsearch 2015-03-02 15:57:12 -08:00
Jeff Lowdermilk
66dfbe900a Merge pull request #4963 from roberthbailey/kubectl-proxy
Remove host ports from the update demo and update tests (take 2).
2015-03-02 15:16:04 -08:00
Satnam Singh
72183c064c Use proxy instead of load balancer 2015-03-02 13:44:41 -08:00
Robert Bailey
5799dd5f7d Remove host ports from the update demo and update tests (take 2). 2015-03-02 10:15:34 -08:00
Jerzy Szczepkowski
7763570579 Print grafana address print in kube-up.sh.
Print grafana address print in kube-up.sh. Resolved #4721.
2015-02-27 09:15:08 +01:00
Satnam Singh
19b927ea57 Name a cluster and use it to make forwarding rules for GCE 2015-02-23 17:04:33 -08:00
Alex Robinson
6a18b74fa3 Minor reordering of GCE kube-up subcommands to keep them logically grouped. 2015-02-23 13:57:09 -08:00
Alex Robinson
953982f47f Add the salt-overlay and /etc/salt directories to the GCE master-pd and reserve
the master's IP upon creation to make it easier to replace the master later.

This pulls out the parts of PR #3174 that don't break anything and will
make upgrading existing clusters in the future less painful.

Add /etc/salt to the master-pd
2015-02-23 13:56:11 -08:00
Satnam Singh
434b74da63 Delete cluster level logging services during kube down 2015-02-19 14:30:53 -08:00
Brendan Burns
eee9804e97 Strip whitespace that OS X inserts on wc calls. 2015-02-17 17:19:33 -08:00
Zach Loafman
fe5b257cfc Merge pull request #4427 from satnam6502/e2e_cluster_logging
Enabled Elasticsearch cluster level logging for e2e test clusters
2015-02-17 14:32:26 -08:00
Alex Robinson
3043ae9144 Merge pull request #4492 from jlowdermilk/e2e
Cleanup resources after services/guestbook e2e tests.
2015-02-17 12:04:46 -08:00
CJ Cullen
47622092fd Merge pull request #4164 from tkulczynski/mig
Use Managed Instance Group for managing Nodes in GCE
2015-02-17 12:01:48 -08:00
Tomek Kulczynski
bcadad2e2e Use Managed Instance Group instead of manually creating Nodes in GCE 2015-02-17 20:33:31 +01:00
Jeff Lowdermilk
8ad671b01e Cleanup resources after shell tests exit 2015-02-17 11:27:54 -08:00
Jeff Lowdermilk
aa32f1b2ce Retry #4337: Make gce kubeconfig context include project 2015-02-13 13:31:50 -08:00
Satnam Singh
6625136d80 Enabled Elasticsearch cluster level logging for e2e test clusters 2015-02-13 11:15:47 -08:00
Zach Loafman
e2ec52bfdf Revert "Make gce's kubeconfig context include the gce project" 2015-02-12 17:01:06 -08:00
Satnam Singh
edea91e519 Merge pull request #4337 from jlowdermilk/kubeconfig
Make gce's kubeconfig context include the gce project
2015-02-12 15:22:26 -08:00
Jeff Lowdermilk
41547a1152 Fix kube-up bug introduced by #4353 2015-02-11 17:44:28 -08:00
roberthbailey
0194ed8575 Merge pull request #4353 from erictune/fix_get_password
Don't fail get-password when no current-context.
2015-02-11 15:25:24 -08:00
Eric Tune
c348b30f62 Update util.sh 2015-02-11 14:32:41 -08:00
Eric Tune
549504dfff Don't fail get-password when no current-context. 2015-02-11 14:25:15 -08:00
Rajat Chopra
56462c020a democratize restart-apiserver method across clouds 2015-02-11 13:44:43 -08:00
Jeff Lowdermilk
3da5d27ab2 Make gce's kubeconfig context include the gce project
Change the .kubeconfig context that gce kube-up creates to project
+ instance prefix, so you can spin up clusters with the same name
in different compute projects without overwriting .kubeconfig.
2015-02-11 12:07:59 -08:00
Brendan Burns
49a9f8b512 Fix kube-up.sh for OS X. 2015-02-06 16:35:39 -08:00
Jeff Lowdermilk
8f6d9c1039 Use config output formatting to get password in gce kube-up
Gets rid of e2e dependency on pyyaml.
2015-02-05 14:54:45 -08:00
Zach Loafman
ffe6149d51 Merge pull request #4097 from jlowdermilk/fix-jenkins-e2e
Fix get-password for gce
2015-02-03 20:09:48 -08:00
Jeff Lowdermilk
06aa8bd164 Fixes get-password for gce 2015-02-03 19:38:24 -08:00
Zach Loafman
2f546ce649 Parameterize ENABLE_{NODE,CLUSTER}_{LOGGING,MONITORING} and LOGGING_DESTINATION
In config-{default,test.sh}. This will make it possible for e.g.
Jenkins to override LOGGING_DESTINATION. Also reorder the parameters
so they're in the same order across files for easier scanning.
2015-02-03 17:23:17 -08:00
Brendan Burns
baba7d6004 Merge pull request #4034 from jlowdermilk/kube-up
Use kubectl to manage config for gce clusters
2015-02-03 14:50:38 -08:00
Alex Robinson
793677e8e2 Merge pull request #4062 from dchen1107/image
Upgrade to container-vm-v20150129 image
2015-02-03 10:50:28 -08:00
Zach Loafman
ae27f29c56 Reinstate cluster logging URLs to the end of kube-up.sh
Adds labels to the services, waits for them to be created (which
should be instant, but just in case), query the forwarding rules like
as we did before.

Fixes #3893
2015-02-03 08:27:02 -08:00
Dawn Chen
f919b3e9c6 Upgrade to container-vm-v20150129 image 2015-02-02 16:57:43 -08:00
Jeff Lowdermilk
e0ec192869 Use kubeconfig to manage config for gce/e2e clusters 2015-02-02 15:02:25 -08:00
Tim Hockin
a1b51d9165 Maybe make services e2e test more resilient to GCE errors 2015-01-29 15:50:46 -08:00
Satnam Singh
72c1820055 Generate IP addresses for minions of large GCE clusters
Use env for for subnet size
2015-01-27 16:11:39 -08:00
Zach Loafman
a305269e18 Deferred creation of SkyDNS, monitoring and logging objects
This implements phase 1 of the proposal in #3579, moving the creation
of the pods, RCs, and services to the master after the apiserver is
available.

This is such a wide commit because our existing initial config story
is special:

* Add kube-addons service and associated salt configuration:
** We configure /etc/kubernetes/addons to be a directory of objects
that are appropriately configured for the current cluster.
** "/etc/init.d/kube-addons start" slurps up everything in that dir.
(Most of the difficult is the business logic in salt around getting
that directory built at all.)
** We cheat and overlay cluster/addons into saltbase/salt/kube-addons
as config files for the kube-addons meta-service.
* Change .yaml.in files to salt templates
* Rename {setup,teardown}-{monitoring,logging} to
{setup,teardown}-{monitoring,logging}-firewall to properly reflect
their real purpose now (the purpose of these functions is now ONLY to
bring up the firewall rules, and possibly to relay the IP to the user).
* Rework GCE {setup,teardown}-{monitoring,logging}-firewall: Both
functions were improperly configuring global rules, yet used
lifecycles tied to the cluster. Use $NODE_INSTANCE_PREFIX with the
rule. The logging rule needed a $NETWORK specifier. The monitoring
rule tried gcloud describe first, but given the instancing, this feels
like a waste of time now.
* Plumb ENABLE_CLUSTER_MONITORING, ENABLE_CLUSTER_LOGGING,
ELASTICSEARCH_LOGGING_REPLICAS and DNS_REPLICAS down to the master,
since these are needed there now.

(Desperately want just a yaml or json file we can share between
providers that has all this crap. Maybe #3525 is an answer?)

Huge caveats: I've gone pretty firm testing on GCE, including
twiddling the env variables and making sure the objects I expect to
come up, come up. I've tested that it doesn't break GKE bringup
somehow. But I haven't had a chance to test the other providers.
2015-01-21 12:25:50 -08:00
Vishnu Kannan
50c32fbba4 Adding a replication controller for all monitoring pods.
Removed auth for Grafana to facilitate usage via service proxy on the api-server.
Added a grafana service
Removed elasticsearch dependency for monitoring - faster startup times.
2015-01-16 18:37:46 +00:00
Zach Loafman
43cd9e91f6 Revert "Adding a replication controller for all monitoring pods." 2015-01-16 07:16:54 -08:00
Satnam Singh
d443dd8ea6 Merge pull request #3489 from vishh/monitoring_rc
Adding a replication controller for all monitoring pods.
2015-01-15 18:18:54 -08:00
Vishnu Kannan
ca2267e3e9 Adding a replication controller for all monitoring pods.
Removed auth for Grafana to facilitate usage via service proxy on the api-server.
Added a grafana service
Removed elasticsearch dependency for monitoring - faster startup times.
2015-01-16 00:56:51 +00:00
roberthbailey
0b9f6bc8bb Merge pull request #3528 from satnam6502/fixoutput
Report project and zone only once for GCE
2015-01-15 13:35:48 -08:00
Satnam Singh
1bff012c36 Convert basic.sh e2e test to Go 2015-01-15 11:41:29 -08:00
Satnam Singh
9ba6525597 Report project and zone only once 2015-01-15 11:21:42 -08:00
Dawn Chen
ba8b4518c1 Upgrade OSS k8s on GCE to latest containervm image: container-vm-v20150112 2015-01-14 16:17:57 -08:00
Satnam Singh
295bd3768d Launch Elasticsearch and Kibana automatically 2015-01-09 13:41:46 -08:00
Joe Beda
9aa48b7628 Move heapster data files to cluster/addons.
Also pretty up the JSON (make it real JSON) and streamline the sed in cluster/gce/init.sh.
2015-01-05 12:32:35 -08:00
Alex Robinson
8b38453501 Allow for easily specifying the type and size of minion disks on GCE.
Issue #3192
2015-01-03 16:57:16 -08:00
Tim Hockin
7dec65f535 Merge pull request #3156 from evenemento/master
Add missign network flag
2014-12-29 14:06:01 -08:00
Tim Hockin
59164ca844 Make DNS an option for cluster turnup 2014-12-29 09:18:12 -08:00
Maciej Chmielarski
d6a747481c Add missign network flag 2014-12-29 12:59:02 +01:00
Joe Beda
5038fc0ffa Merge pull request #3056 from zmerlynn/testtar
Allow parameterization by environment in cluster/gce/config-test.sh
2014-12-19 14:38:03 -08:00
Zach Loafman
94545889fc Allow parameterization by environment in cluster/gce/config-test.sh
Between this and careful use of "export HOME=/somewhere_else_for_auth/",
you can effectively get ghetto CLI profiles (for GCE tests).
2014-12-19 13:38:33 -08:00
Max Forbes
c3efef86d0 Add GKE as a provider. 2014-12-19 11:47:06 -08:00
bgrant0607
4943ee7b65 Merge pull request #3034 from a-robinson/pd-up
Store all of the master's persistent data on a separate "data" PD when running on GCE
2014-12-18 16:05:47 -08:00
Vishnu Kannan
aa7a311c34 Fix bug in gce monitoring setup. 2014-12-18 20:47:41 +00:00
Alex Robinson
f892e84e0a Store all of the master's persistent data on a separate "data"
persistent disk when running on GCE.

I'll follow up soon with a second PR that enables kube-push to
completely bring down the master VM and replace it with a new one.
2014-12-18 20:24:57 +00:00
CJ Cullen
90364b30b0 Only create a single firewall rule for all minions. 2014-12-17 17:10:07 -08:00
Joe Beda
2fc02cb06a Quote strings in bash populated YAML files.
Quoting is hard.  When writing strings into YAML files, wrap them in single quotes.  Also escape any embedded single quotes in those strings via a double signle quote ('').
2014-12-16 16:13:46 -08:00
Max Forbes
bea37d5b17 Fix up e2e tests. 2014-12-15 11:53:51 -08:00
deads2k
fd53795bc9 fix e2e for all providers except gce 2014-12-15 11:04:13 -05:00
Satnam Singh
91a75c7620 Add missing detect-project to detect-minions 2014-12-12 15:29:58 -08:00
Satnam Singh
1ce71d1e33 Make multiple attempts to sanity check (GCE) and validate (ALL) cluster 2014-12-12 13:53:57 -08:00
Satnam Singh
d0eeebaa66 Make kube-down more robust for GCE provider 2014-12-11 14:47:38 -08:00
Dawn Chen
d767e71475 Using container-vm-v20141208 as the default image on GCE. 2014-12-09 17:11:23 -08:00
Brendan Burns
8364fa5c93 Fix detect-minions. 2014-12-05 15:42:28 -08:00
Jeff Lowdermilk
a1faab9ffe Merge pull request #2730 from satnam6502/scripting
Add missing project argument to gcloud commands
2014-12-04 14:30:20 -08:00