Commit Graph

218 Commits (270fae4d667ca605604972aa9d362a562b4140e8)

Author SHA1 Message Date
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
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 ae75a7d259 kube-up: move build-runtime-config from AWS & GCE into 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 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
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
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
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
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
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
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
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
Brad Erickson 8431993a44 Minion->Node rename: NODE_SG_ID, NODE_SG_NAME 2015-11-25 00:45:09 -08:00
Brad Erickson 1846cfc129 Minion->Node rename: NODE_ROOT_DISK_SIZE, NODE_ROOT_DISK_TYPE, etc
NODE_SCOPES
2015-11-25 00:45:09 -08:00
Brad Erickson fc04b55088 Minion->Node rename: NODE_NAMES, NODE_NAME, NODE_PORT 2015-11-25 00:45:09 -08:00
Brad Erickson 83ed2fa22e Minion->Node rename: NODE_DISK_SIZE, NODE_DISK_TYPE, NODE_HOSTNAME, etc
NODE_IDS
NODE_ID
NODE_IMAGE_PROJECT
NODE_IMAGE
2015-11-25 00:45:09 -08:00
Brad Erickson a36d3390bf Minion->Node rename: KUBERNETES_NODE_MEMORY, VAGRANT_NODE_NAMES, etc
ENABLE_NODE_PUBLIC_IP
NODE_ADDRESS
NODE_BLOCK_DEVICE_MAPPINGS
NODE_CONTAINER_ADDRS
NODE_CONTAINER_NETMASKS
NODE_CONTAINER_SUBNET_BASE
NODE_CONTAINER_SUBNETS
NODE_CPU
2015-11-25 00:43:52 -08:00
Brad Erickson ae314ad246 Minion->Node rename: KUBE_NODE_IP_ADDRESSES, KUBE_NODE_IP_ADDRESS 2015-11-25 00:43:52 -08:00
Brad Erickson 68539ae8a4 Minion->Node rename: KUBE_NODE_IMAGE 2015-11-25 00:43:51 -08:00
Brad Erickson 6b91b45eff Minion->Node rename: IAM_PROFILE_NODE, KUBE_ENABLE_NODE_PUBLIC_IP, etc
KUBE_GCE_NODE_IMAGE, KUBE_GCE_NODE_PROJECT, KUBEMARK_NUM_NODES
2015-11-25 00:43:51 -08:00
k8s-merge-robot 440bdd27d5 Merge pull request #17087 from justinsb/aws_delete_ebs
Auto commit by PR queue bot
2015-11-12 01:17:40 -08:00
Justin Santa Barbara d5f62ca67b AWS: Don't use JSON parsing in kube-up
We use the AWS CLI support for --query and --filter instead; should be
more reliable and clearer.

Also set the output format to text, so we don't have to set it every
time and don't risk problems if we forget to set it.

Fixes #16747

We do still have to use JSON parsing in one place: ELB does not support
--filter, so we have to use Python there.
2015-11-10 23:30:42 -05:00
Christian Stewart d61d57adec
Remove ENABLE_EXPERIMENTAL_API and similar in favor of KUBE_RUNTIME_CONFIG.
Addresses #15968

This patch removes KUBE_ENABLE_EXPERIMENTAL_API and similar calls in
favor of specifying desired features in KUBE_RUNTIME_CONFIG. Changes
have also been made to e2e scripts to re-enable using
KUBE_RUNTIME_CONFIG rather than EXPERIMENTAL_API env vars.

This also introduces KUBE_ENABLE_DAEMONSETS and KUBE_ENABLE_DEPLOYMENTS.

Signed-off-by: Christian Stewart <christian@paral.in>
2015-11-10 21:36:34 -05:00
k8s-merge-robot 6fbae33eb1 Merge pull request #16918 from justinsb/aws_fix_kubedown_no_instances
Auto commit by PR queue bot
2015-11-10 11:11:56 -08:00
k8s-merge-robot 157f663f5b Merge pull request #16867 from justinsb/aws_log_upload_urls
Auto commit by PR queue bot
2015-11-07 00:00:28 -08:00
k8s-merge-robot b719d7a45e Merge pull request #15070 from justinsb/aws_print_region_if_not_matching
Auto commit by PR queue bot
2015-11-06 10:31:29 -08:00
Justin Santa Barbara 84bab0dae5 AWS: kube-down was failing with no instances
The new delete-ASG logic wasn't correct if there were no instances
2015-11-06 10:43:13 -05:00
Justin Santa Barbara 5bde574eca AWS: Log the download URLs after we upload to S3
This is helpful if you want to manually update a cluster.
2015-11-05 14:39:18 -05:00
Justin Santa Barbara 2d5671aec2 AWS: Fix kube-up comments per code review 2015-11-03 13:12:17 -05:00