Commit Graph

346 Commits (917a34a2aa5d0abfe17231c05803fcdc713b68c1)

Author SHA1 Message Date
Chris Kühl 7fcc40bb27 docs: replace Rocket with rkt 2016-02-09 13:52:25 +01:00
k8s-merge-robot 68a165cda9 Merge pull request #20681 from justinsb/aws_sync_kubeup_gce_step3
Auto commit by PR queue bot
2016-02-09 02:08:48 -08:00
Michael Nikitochkin 55e2906f79 AWS: Allow to configure master ip and services mask
Fix script for case when neeed to setup cluster
in an existen VPC and subnet with ip mask example: 10.0.0.0/8.

Fixed bug to detect ip of master if provided MASTER_RESERVED_IP.

For some reason detecting master ip was moved to volumes and only when MASTER_RESERVED_IP=auto.
If specify IPv4 for MASTER_RESERVED_IP like `52.1.1.1`, than we could
not detect ip even during last steps of setuping cluster.
step the KUBE_MASTER_IP is reseted because there are no tag for the
volume.
2016-02-07 21:59:00 +01:00
Justin Santa Barbara 63743e9c1c AWS kube-up: Use the cert we generated in kubeconfig 2016-02-06 22:52:01 -05:00
Justin Santa Barbara 270fae4d66 kube-up: Support multiple additional IPs for SSL cert
And pass the public IP when setting up AWS
2016-02-06 22:52:01 -05:00
Justin Santa Barbara fd5c44c72e kube-up: Finish refactor of AWS to reuse GCE script
We override key functions in the GCE script with AWS equivalents.
2016-02-06 22:52:01 -05:00
k8s-merge-robot 9d981b696c Merge pull request #20642 from justinsb/aws_sync_kubeup_gce_step2
Auto commit by PR queue bot
2016-02-06 11:56:47 -08:00
k8s-merge-robot 5b046cccdb Merge pull request #20448 from justinsb/aws_fix_e2e_detect_master
Auto commit by PR queue bot
2016-02-04 16:24:20 -08:00
Justin Santa Barbara 732e76fb4e kube-up: Refactor SSL cert helpers into common
Next step in the the GCE/AWS harmonization
2016-02-04 09:10:41 -05:00
Justin Santa Barbara 0f6b3611d8 AWS: Fix e2e usage of find-tagged-master-ip
In the e2e tests detect-master is called directly.  In turn, it calls
find-tagged-master-ip, which assumed that find-master-pd has already already
been called.  But this wasn't true in the e2e case.

We add a call to find-master-pd; it is idempotent.
2016-02-01 22:49:31 +00:00
k8s-merge-robot 30375b21d6 Merge pull request #19776 from justinsb/aws_sync_kubeup_gce
Auto commit by PR queue bot
2016-02-01 14:44:18 -08:00
k8s-merge-robot 0aca70016c Merge pull request #20066 from justinsb/aws_move_build_runtime_config
Auto commit by PR queue bot
2016-02-01 09:48:27 -08:00
Alex Robinson f684e80b1f Merge pull request #20067 from justinsb/aws_test_defaults
AWS: Change config-test defaults to match GCE
2016-01-30 17:42:28 -08:00
Justin Santa Barbara c556e8f0f5 kube-up: Refactor kube-env into common; use in AWS
Use kube-env on the AWS master also
2016-01-28 10:31:51 -08:00
Justin Santa Barbara 4d88a4ed2c kube-up: move sha1sum-file into common
Also hash the tar files in AWS kube-up
2016-01-28 10:19:38 -08:00
Justin Santa Barbara a70412099a AWS: add retries around apt-get install
Related to issue #17309
2016-01-28 10:19:38 -08:00
Justin Santa Barbara ae75a7d259 kube-up: move build-runtime-config from AWS & GCE into common 2016-01-28 10:19:38 -08:00
Justin Santa Barbara 0df6f5d8c5 kube-up: move yaml-quote from GCE & AWS to common 2016-01-28 10:19:38 -08:00
k8s-merge-robot 6c63acdd3d Merge pull request #19398 from justinsb/aws_elasticip_for_master
Auto commit by PR queue bot
2016-01-26 04:34:28 -08:00
k8s-merge-robot 8c821700f3 Merge pull request #19389 from justinsb/internal_cidr
Auto commit by PR queue bot
2016-01-26 03:58:48 -08:00
Justin Santa Barbara a4d6801655 AWS: Change config-test defaults to match GCE
KUBE_ENABLE_DAEMONSETS & KUBE_ENABLE_DEPLOYMENTS default to true in
config-test in GCE, so we should do the same in AWS for e2e sanity.
2016-01-24 10:43:43 -05:00
Justin Santa Barbara 8a7afc459c AWS: Call build-runtime-config where it is used
build-runtime-config was being called in verify-prereqs, which didn't
match how GCE called it, and didn't seem to actually work.

Instead call it just before the master configuration is built.  Also
call it just before the node configuration is built, even though the
nodes don't _currently_ require the runtime_config.
2016-01-24 10:43:15 -05:00
Justin Santa Barbara d8460d5920 AWS: Pass non-masquerade-cidr through kube-up
Set the environment variable NON_MASQUERADE_CIDR.

Docs in cluster/aws/options.md
2016-01-22 21:01:44 -05:00
Rudi Chiarito bc0dd97a70 ECR credential provider 2016-01-22 15:03:25 -05:00
Justin Santa Barbara 274e589aa6 AWS: Use an elastic IP for the master by default
If we don't use an elastic IP, the IP address will be lost if we lose
the master for any reason, and a replacement master will not have the
same IP.  But the master IP is set both in client kubeconfig files and
the master SSL certificate.  Hence the default should be to allocate an
elastic IP for the master.

One complication: AWS doesn't allow tags on elastic IPs, so it is hard
to track the elastic IP so we can delete it as part of kube-down.
Instead, we take the master EBS volume with the elastic IP.  This is a
little odd, but works because the master volume & the master elastic IP
really need to be assigned to the same machine, so might be thought of
as a pair.

Also, we now delete the master EBS volume as part of kube-down, as
people expect kube-down to clean-up everything it creates.
2016-01-21 22:01:55 -05:00
Alex Mohr f788e1e11a Merge pull request #19446 from justinsb/aws_reboot_master_on_failure
AWS: Create a cloudwatch alarm to reboot the master on failure
2016-01-21 15:05:14 -08:00
Alex Mohr d8be60ee57 Merge pull request #19777 from justinsb/echo_sleep_is_silly
kube-up scripts: don't 'echo sleep'
2016-01-21 10:44:38 -08:00
Alex Mohr eaa61a72b0 Merge pull request #17919 from justinsb/multizone_gce
Ubernetes Lite support for GCE
2016-01-21 10:22:34 -08:00
Justin Santa Barbara 2958ea253a GCE: Allow for reuse of master
This is for internal use at the moment, for testing Ubernetes Lite, but
arguably makes the code a little cleaner.

Also rename KUBE_SHARE_MASTER -> KUBE_USE_EXISTING_MASTER
2016-01-20 15:37:00 -05:00
Justin Santa Barbara dcd7e813f7 AWS: Update AMIs for Ubuntu Vivid
Update to the latest AMIs for Vivid, as sourced from:
http://cloud-images.ubuntu.com/locator/ec2/
2016-01-18 16:47:06 -05:00
Justin Santa Barbara d2e65a89d0 kube-up scripts: don't 'echo sleep'
'echo sleep 5' just prints 'sleep 5'; replace with 'sleep 5'.
2016-01-17 21:29:01 -05:00
Josh Ellithorpe 76e8a8b08d Fix issues with Python3 and bring up a dev cluster 2016-01-12 11:08:42 -08:00
Justin Santa Barbara d91ad0bb6f AWS: Create a cloudwatch alarm to reboot the master on failure
This is an easier alternative to keep a master running than trying to
dynamically find & attach master volumes.

To actually work, it requires that users create the EC2ActionsAccess IAM
role as required by CloudWatch, see e.g.
http://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/UsingIAM.html
2016-01-09 14:53:29 -05:00
Justin Santa Barbara 57265a4c74 AWS: Pass NUM_NODES in instance-data
The bootstrap scripts already assume it is set.
2016-01-05 23:10:43 -05:00
Justin Santa Barbara f9a6ac077e Ubernetes Lite: Volumes can dictate zone scheduling
For AWS EBS, a volume can only be attached to a node in the same AZ.
The scheduler must therefore detect if a volume is being attached to a
pod, and ensure that the pod is scheduled on a node in the same AZ as
the volume.

So that the scheduler need not query the cloud provider every time, and
to support decoupled operation (e.g. bare metal) we tag the volume with
our placement labels.  This is done automatically by means of an
admission controller on AWS when a PersistentVolume is created backed by
an EBS volume.

Support for tagging GCE PVs will follow.

Pods that specify a volume directly (i.e. without using a
PersistentVolumeClaim) will not currently be scheduled correctly (i.e.
they will be scheduled without zone-awareness).
2015-12-31 12:27:01 -05:00
Michael Nikitochkin 2272de1f67 AWS: Fixed compacting script of cloud init for MacOS
In MacOS there is error during setup a new cluster:

```
+ sed -i -e 's/^[[:blank:]]*#.*$//' -e '/^[[:blank:]]*$/d' /sometmpfile
sed: -e: No such file or directory
```

Because sed version of MacOS does not support modern features.
2015-12-16 09:20:57 +01:00
Thomas Ploch 189f2436e3 [AWS] Wrong assignment of `KUBE_MASTER_IP` with Elastic IP
Currently when using a custom elastic IP, the ENV var `KUBE_MASTER_IP` gets
the output of `$(assign-elastic-ip $ip $master_id)` assigned.

This is wrong since the command returns a string:
`Attaching IP 99.999.999.999 to instance i-9999999`

This patch fixes the assignment by calling `get_instance_public_ip` again.
2015-12-12 13:53:01 +01:00
k8s-merge-robot 0f399211f7 Merge pull request #18258 from antoineco/ec2
Auto commit by PR queue bot
2015-12-10 11:14:49 -08:00
Justin Santa Barbara 428e4156e2 AWS: Strip more comments from instance user-data
To stay under the 16KB limit
2015-12-07 22:27:33 -05:00
Antoine Cotten 926148c5ee Add warning about AWS EC2 't2' instance type 2015-12-06 19:56:13 +01:00
k8s-merge-robot b69018eab2 Merge pull request #17844 from eosrei/kube-util-minion-node
Auto commit by PR queue bot
2015-12-02 03:06:27 -08:00
k8s-merge-robot bb86936765 Merge pull request #17803 from davidsiefert/master
Auto commit by PR queue bot
2015-12-01 02:15:11 -08:00
k8s-merge-robot 7bcd7759fa Merge pull request #17814 from themez/master
Auto commit by PR queue bot
2015-12-01 00:22:51 -08:00
jiangyaoguo a739fc44c4 keep kubeproxy hostname consistent with kubelet 2015-11-28 10:47:29 +08:00
Brad Erickson 0bd16e0437 Minion->Node rename: kube-util hosting provider helper functions 2015-11-26 09:31:46 -08:00
ThemeZ 3342e4e1d3 Correct s3 url base for region "cn-north-1" 2015-11-26 11:37:28 +08:00
David Siefert 94d32588f4 Extracting more functions for reuse out of kube-up 2015-11-25 17:29:30 -06:00
Brad Erickson 53172a5356 Minion->Node rename: NUM_NODES 2015-11-25 00:45:10 -08:00
Brad Erickson e67be19a5b Minion->Node rename: OLD_NODE_TAG, NODE_TAG 2015-11-25 00:45:09 -08:00
Brad Erickson bd06c19aa8 Minion->Node rename: NODE_SIZE 2015-11-25 00:45:09 -08:00