Commit Graph

918 Commits

Author SHA1 Message Date
Justin Santa Barbara 126c508426 Fix model: numbers must be quoted 2016-07-09 01:41:04 -04:00
Justin Santa Barbara 6c6410dc81 Merge pull request #87 from justinsb/fix_35_part2
Report less-scary message when IAM instance profile is not ready yet
2016-07-09 01:25:28 -04:00
Justin Santa Barbara 13e514aeac Merge pull request #93 from justinsb/fix_24
Allow configurable RootDeviceSize & RootDeviceType
2016-07-09 01:25:20 -04:00
Justin Santa Barbara 5edef741b9 Merge pull request #99 from justinsb/node_role_name
Change node role tag to match master pattern
2016-07-09 01:25:09 -04:00
Justin Santa Barbara b42765816e Change node role tag to match master pattern
It's not currently used, and we hadn't updated it to match the better
pattern.

k8s.io/role=master can only be in one role
k8s.io/role/master=1 allows for multiple roles
2016-07-08 22:02:32 -04:00
Justin Santa Barbara 992a3e7d7f Support `kops get/edit instancegroup`
This lets us start to manage instancegroups through the CLI

Issue #66
2016-07-08 01:21:15 -04:00
Justin Santa Barbara 13b8e81bd6 Allow configurable RootDeviceSize & RootDeviceType
This allows for a larger EBS root volume (and we now default to 20GB,
just like kube-up did).

We remove the BlockDeviceMappings support because it wasn't used and
made things a lot more complicated.  We always map the ephemeral
devices.

Issue #24
2016-07-08 01:11:14 -04:00
Justin Santa Barbara 6264714e14 Merge pull request #86 from justinsb/docs_4
First pass at docs describing how kops boots k8s
2016-07-07 21:02:38 -04:00
Justin Santa Barbara 9d1770ad31 Merge pull request #89 from justinsb/format_expose_secret
When exposing secrets, output a blank line afterwards
2016-07-07 15:28:40 -04:00
Justin Santa Barbara 29dbbe3af3 When exposing secrets, output a blank line afterwards
Otherwise it becomes hard to copy and paste
2016-07-07 11:52:52 -04:00
Justin Santa Barbara d1ef7580a9 Report less-scary message when IAM instance profile is not ready yet
IAM instance profile creation is very async, and this causes dependent
resources to fail.  That's fine - we have good retry logic - but we
should output a less frightening error message.

Issue #35
2016-07-07 10:22:44 -04:00
Justin Santa Barbara 7bb75d2e43 First pass at docs describing how kops boots k8s 2016-07-07 10:06:04 -04:00
Justin Santa Barbara b7fa910cb8 Merge pull request #83 from justinsb/log_more_clusters_cannot_span_regions
More info on "clusters cannot span multiple regions"
2016-07-07 09:51:18 -04:00
Justin Santa Barbara 4bf51a825b More info on "clusters cannot span multiple regions" 2016-07-07 09:49:23 -04:00
Justin Santa Barbara 901b82e78a Merge pull request #82 from justinsb/fix_73
Avoid a race between etcd start and volume mount
2016-07-07 02:22:29 -04:00
Justin Santa Barbara f82a407e73 Avoid a race between etcd start and volume mount
If the instance restarted but lost the volume mount, there might be a
short or indefinite delay before protokube can mount the volume again.
But the etcd manifest would probably still be in
/etc/kubernetes/manifests from the previous run.

To ensure that kubelet doesn't run etcd until the volume is actually
mounted, we use a symlink to a directory on the volume itself.  Thus
kubelet can't start etcd until we put the volume there.  We can also
delete the symlink before mounting, so we have full control.

Issue #73
2016-07-07 02:21:14 -04:00
Justin Santa Barbara 8f12f3e4fe Merge pull request #79 from justinsb/instancetypes_g2_i2_x1
More instance type support: g2, i2, x1 families
2016-07-07 00:37:55 -04:00
Justin Santa Barbara a6ba62abe9 More instance type support: g2, i2, x1 families 2016-07-06 23:27:08 -04:00
Justin Santa Barbara f89c80c52c Merge pull request #78 from justinsb/fix_restart_1
Make sure that we enable systemd services
2016-07-06 23:25:07 -04:00
Justin Santa Barbara df4dadff98 Merge pull request #77 from justinsb/fix_76
Add support for r3 family
2016-07-06 23:24:59 -04:00
Justin Santa Barbara 09dd3002ff Make sure that we enable systemd services
We were previously just starting them, which works fine for the new
machine and machine termination case, but doesn't work when doing a
machine restart (e.g. init 6)

Issue #70
2016-07-06 23:04:51 -04:00
Justin Santa Barbara 40cbdc4d00 Add support for r3 family
Fix #76
2016-07-06 22:02:56 -04:00
Justin Santa Barbara fecce6cbfe Merge pull request #62 from justinsb/docs_2
docs: suggest more strongly to export KOPS_STATE_STORE
2016-07-06 21:58:58 -04:00
Justin Santa Barbara fcd644441e Merge pull request #61 from justinsb/typo_1
Fix typo in error message
2016-07-06 16:42:47 -04:00
Justin Santa Barbara 957d30a157 Merge pull request #68 from justinsb/fix_elb_pagesize
Fetch ELB tags in chunks of 20
2016-07-06 13:47:30 -04:00
Justin Santa Barbara 274a8eff3c Fetch ELB tags in chunks of 20
ELB DescribeTags has a limit of 20 ELBs / call.  So we paginate the
DescribeLoadBalancers call with page size = 20 also.
2016-07-06 13:46:16 -04:00
Justin Santa Barbara b032be9a79 Merge pull request #65 from justinsb/issue_63
Add tests for SSH key fingerprint
2016-07-06 11:19:48 -04:00
Justin Santa Barbara 7347f1815a Parse SSH public keys with 'odd' whitespace
e.g. a key with \r instead of spaces

Fix #63
2016-07-06 11:18:09 -04:00
Justin Santa Barbara a91cc6e9a4 Add tests for SSH key fingerprint
Issue #63
2016-07-06 10:47:20 -04:00
Justin Santa Barbara 8b204f6d82 Merge pull request #64 from justinsb/issue_63
Quote public key in error message
2016-07-06 10:23:22 -04:00
Justin Santa Barbara 4dc869756f Quote public key in error message
Just in case it contains invalid characters

Issue #63
2016-07-06 10:22:09 -04:00
Justin Santa Barbara 48cabafd7c docs: suggest more strongly to export KOPS_STATE_STORE
Otherwise it's not entirely clear that you really want to do this, and
that it's not just for the formatting of the examples!
2016-07-06 10:16:20 -04:00
Justin Santa Barbara b6035bffaf Fix typo in error message
Fingerpring -> Fingerprint
2016-07-06 10:04:13 -04:00
Justin Santa Barbara 0a6460424a Merge pull request #60 from justinsb/fix_panic_in_dryrun
Fix panic when IAMInstanceProfile not found
2016-07-06 09:58:23 -04:00
Justin Santa Barbara db4b190831 Fix panic when IAMInstanceProfile not found 2016-07-06 09:51:44 -04:00
Justin Santa Barbara e953d76f9f Merge pull request #51 from justinsb/fix_48
Only warn if a _different_ ephemeral device is attached
2016-07-06 03:07:05 -04:00
Justin Santa Barbara fa3157e512 Merge pull request #54 from justinsb/fix_tests
Update & get tests working again
2016-07-06 03:06:59 -04:00
Justin Santa Barbara 9538d84eff Merge pull request #56 from justinsb/formatting_43
Fix formatting in error message
2016-07-06 03:06:53 -04:00
Justin Santa Barbara 981cbe0189 Merge pull request #55 from justinsb/fix_22
Fix #22
2016-07-06 03:06:45 -04:00
Justin Santa Barbara e3e6b5449b Merge pull request #57 from justinsb/fix_35
Wait for InstanceProfile to be readable after creation
2016-07-06 03:06:36 -04:00
Justin Santa Barbara 6f49a50886 Wait for InstanceProfile to be readable after creation
This should avoid spurious errors when creating dependent resources,
which fail if we try to create before the InstanceProfile is fully
created.

Issue #35
2016-07-06 01:01:24 -04:00
Justin Santa Barbara d8e8cd80ab Fix formatting in error message
Issue #43 (not a fix though, just something observed in that issue)
2016-07-06 00:45:32 -04:00
Justin Santa Barbara 2f84573e2b DebugPrint should handle the case where the resource cannot be found
We print "unknown resource" instead

Issue #22
2016-07-06 00:40:51 -04:00
Justin Santa Barbara 7b57329f34 Don't panic if asked to Open an empty resource
Return an error instead

Issue #22
2016-07-06 00:37:18 -04:00
Justin Santa Barbara c956bdada5 Update & get tests working again
They're still hitting the AWS APIs, have terrible coverage and are slow.
But it's a start!
2016-07-06 00:33:07 -04:00
Justin Santa Barbara a9198ee5a4 Merge pull request #52 from justinsb/fix_49
Remove glide from readme
2016-07-06 00:22:46 -04:00
Justin Santa Barbara 8d89dc5e9a Merge pull request #53 from justinsb/docs_choose_name
docs: provide more hints about how to choose a cluster name
2016-07-05 23:27:15 -04:00
Justin Santa Barbara 538c6ca007 docs: provide more hints about how to choose a cluster name
Make it clearer that the cluster name should be a DNS name.

Fix #28
2016-07-05 22:49:28 -04:00
Justin Santa Barbara 59479a7bd3 Remove glide from readme
It isn't required to build the code, now that we checked in the vendor
directory.

Fix #49
2016-07-05 22:35:38 -04:00
Justin Santa Barbara 05af11b72e Only warn if a _different_ ephemeral device is attached
When we retry a task, we run the Run method again.  But in this case,
the run method actually populated some default values.  Only warn if the
values we are populating are different, to avoid spurious warnings.

We probably need a stronger lifecycle - for example having a Validate
method would probably be helpful.

Fix #48
2016-07-05 22:05:42 -04:00