Commit Graph

1120 Commits

Author SHA1 Message Date
Kubernetes Prow Robot dd608e879b
Merge pull request #7770 from mitch000001/external-cloud-controller-feature-flag
Guard External cloud controller manager with its feature flag
2019-12-26 14:03:38 -08:00
John Gardiner Myers d127b9b1a1 Fix cmd/kops staticcheck failures 2019-12-25 14:59:27 -08:00
Peter Rifel 57e85f7c67 Update links printed by Kops to use new docs site 2019-12-23 18:47:58 -06:00
vvbogdanov87@gmail.com 1f439e4eb3 Fail if both all flag and args are specified 2019-12-23 08:07:33 +08:00
Ciprian Hacman 70f5b276f5 Fix --networking to use the value from InitDefaults() 2019-12-22 22:16:08 +02:00
Ciprian Hacman 8b15e5b03a Add --container-runtime cli flag 2019-12-22 22:16:04 +02:00
vvbogdanov87 526cdce3c7 Add all flag to export cluster command 2019-12-22 19:46:04 +08:00
Kubernetes Prow Robot ebd7a29612
Merge pull request #8169 from johngmyers/dns-controller-nonroot
Run dns-controller and kops-controller as non-root user
2019-12-22 02:09:32 -08:00
John Gardiner Myers 14bc441d8d Run dns-controller and kops-controller as non-root user 2019-12-21 21:28:44 -08:00
Kubernetes Prow Robot 015efe0b26
Merge pull request #8132 from zehuaiWANG/kops-change-main
kops-change-main
2019-12-19 22:17:45 -08:00
Justin Santa Barbara 2c770aa7a5
Merge branch 'master' into split-containerd 2019-12-19 07:03:33 -05:00
Kubernetes Prow Robot db11481e37
Merge pull request #8110 from vvbogdanov87/validate-cluster-kubeconfig
Add kubeconfig flag to validate cluster command
2019-12-17 06:41:59 -08:00
Kubernetes Prow Robot fc4b21d30a
Merge pull request #8122 from geojaz/fix/create_cluster_cmd_fix
Cleans up the create cluster CLI prompts
2019-12-16 21:45:58 -08:00
zehuaiWANG 3273e55c0d kops-change-main 2019-12-17 13:30:43 +08:00
zehuaiWANG ed6b976316 a little change 2019-12-16 19:50:02 +08:00
eric-hole d3e7448236 Cleans up the create cluster CLI docs
They were missing `\`'s and could use a refresh.
2019-12-15 23:26:20 -08:00
Ciprian Hacman 1a4d8bf49c Add support for containerd container runtime - tests 2019-12-15 21:37:57 +02:00
vvbogdanov87 c696bfc08f Add kubeconfig flag to validate cluster command
Signed-off-by: vvbogdanov87 <vvbogdanov87@gmail.com>
2019-12-15 10:20:48 +08:00
Jesse Haka 44183aef7f validate cluster twice 2019-12-12 08:48:15 +02:00
John Gardiner Myers 2e36124f77 Expose ValidateTickDuration for use by unit tests 2019-12-09 18:43:20 -08:00
Ciprian Hacman dfee0547c5 Make distro detection less strict 2019-12-09 11:10:54 +02:00
Ciprian Hacman f21df7cd6f Fix mounting Calico "flexvol-driver-host" in CoreOS 2019-12-08 16:43:29 +02:00
Kubernetes Prow Robot 7ec1a8f18c
Merge pull request #8053 from rifelpet/integration-test-nat-cf
Update integration test to cover CloudFormation output of NAT gateways
2019-12-06 19:53:08 -08:00
Peter Rifel bb3140deba Update integration test to cover CloudFormation output of NAT gateways 2019-12-06 14:04:35 -06:00
Kashif Saadat fcf6f0098c Canal Typha spec and apimachinery 2019-12-06 15:36:48 +00:00
John Gardiner Myers 4eccd3d53f Remove DrainAndValidateRollingUpdate feature flag 2019-12-05 22:50:04 -08:00
Kubernetes Prow Robot e11f394f05
Merge pull request #8002 from srikiz/DO-7956-FixEtcdNameLogic
[Issue-7956] - [Digital Ocean] Minor fix to have proper indexing for digital ocean regions
2019-12-05 07:42:32 -08:00
Kubernetes Prow Robot 094fe2a645
Merge pull request #7925 from johngmyers/optimize-validation
Pass the cloud object to validator from caller
2019-12-03 15:40:58 -08:00
Srikanth 9542b20bea Fix formatting 2019-11-26 00:04:16 +05:30
Kubernetes Prow Robot 2c446c6c34
Merge pull request #7997 from joshbranham/patch-1
cleanup whitespace in root.go
2019-11-25 08:25:33 -08:00
Srikanth 143bebc2eb Minor fix to have proper indexing for digital ocean regions that end with numbers other than one like sfo2 2019-11-25 08:23:14 +05:30
Srikanth 7467d1a6a4 Remove ununsed code 2019-11-24 12:56:46 +05:30
Srikanth 7b8eb2bfee Initial work for kops-controller to support digital ocean 2019-11-24 12:56:46 +05:30
Srikanth 90f3ebee57 Initial work 2019-11-24 12:56:23 +05:30
Josh Branham 017e1df085
clear whitespace 2019-11-23 18:37:27 -05:00
Peter Rifel 3dc06afa12 Fix goimports errors
It turns out we werent running verify-goimports in our CI jobs.

While we work to get that enabled, we can at least unblock the releases by doing a one-time fix of the failing goimports
2019-11-19 05:05:02 -08:00
John Gardiner Myers bd4e1277ae Pass the cloud object to validator from caller 2019-11-13 22:19:55 -08:00
Josh Branham 2f1ad0c638 Remove forcing disabled cgos Darwin 2019-11-11 20:28:35 -05:00
Justin Santa Barbara 5a0b199119
Merge branch 'master' into fix-roll-validation 2019-11-07 20:54:10 -05:00
Kubernetes Prow Robot e29a04e5af
Merge pull request #7854 from FayerZhang/master
fix golint failures
2019-11-07 11:37:43 -08:00
John Gardiner Myers 63e0c5e726 Add tests for cluster validation during rolling update 2019-11-04 16:26:39 -08:00
feifei.zhang@huawei.com 4b49412105 fix golint failures 2019-10-31 20:22:37 +08:00
Michael Wagner ad85ca0681 docs(addons): fix broken links 2019-10-29 15:51:49 +01:00
Jesse Haka 5e3b94ae17 use existing network and subnet 2019-10-27 08:21:25 +02:00
Justin SB c210eb8d15
Move kops-controller to daemonset
We also scale-down the old Deployment to have 0 replicas, to be sure
to stop it.

We can remove it later when we have proper pruning here.
2019-10-14 10:44:49 -04:00
Justin SB d3bad10aa9
Move kops-controller to use a yaml configuration file
This is more in keeping with componentconfig, and lets us add more
options easily in future.
2019-10-13 07:27:52 -07:00
Kubernetes Prow Robot ff1d94c7cb
Merge pull request #7692 from zetaab/kops_ctrl_openstack
Kops controller support for OpenStack
2019-10-11 09:13:41 -07:00
Thomas Jackson 85db3dce27 make apimachinery 2019-10-10 13:13:38 -07:00
Michael Wagner 92ffa79f06 chore(external-ccm): warn user about missing feature flag 2019-10-10 21:38:50 +02:00
Justin SB e5d710616a
Add test for float args
We likely need to change from floats to resource.Quantity, so we need
to estabilsh more test coverage before we can safely make the change.
2019-09-29 13:14:21 -04:00
Justin SB 49258971fc
Publish kops-controller container dump to S3/GCS
We then `docker load` it when using a KOPS_BASE_URL.

This should simplify the development process (particularly once we
also do this for dns-controller; at that point we won't need a
registry at all).

This should also fix the problems in CI, where the kops-controller
image isn't available.  We've been getting away with testing with the
previous version for dns-controller, which changes pretty slowly.  But
that's not a good idea for kops-controller, which is likely to be more
critical and evolve more rapidly.
2019-09-28 22:43:46 -04:00
Jesse Haka ed8dbc41d0 kops controller support for openstack 2019-09-28 10:06:39 +03:00
Justin SB cdaa7a3a48
Fix boilerplate: headers & packages 2019-09-25 12:48:14 -04:00
Justin SB 3ccc84dcf8
kops-controller container image
Based on distroless for security / stability
2019-09-25 12:04:36 -04:00
Justin SB 728e582360
Fill out kops controller functionality
k8s 1.16 requires that we move label setting away from the kubelet, to
a central controller.  kops-controller is that controller.
2019-09-25 12:04:34 -04:00
Justin SB 0fa65236aa
Scaffolded kops-controller with kubebuilder 2 2019-09-25 10:45:59 -04:00
Kubernetes Prow Robot 927094fcda
Merge pull request #7371 from justinsb/kops_validate_now_supports_wait
Add --wait argument to kops validate
2019-09-19 11:57:00 -07:00
Pascal Bourdier 0102567457 add cilium in error message
add cilium in error message like other networks
2019-09-16 14:27:17 +02:00
mikesplain 9e55b8230a Update copyright notices
Also cleans some white spaces
2019-09-09 14:47:51 -04:00
Justin SB 96aa37d03d
Remove unused ClientGetter from Drain code
This is no longer needed now we are using the k8s drain code.
2019-09-03 07:04:37 -07:00
Justin SB 97c83b677b
Replace resource.FilenameOptions with []string
It was hiding what was actually going on here, which just a slice.
2019-08-30 21:34:22 -07:00
Jesse Haka 59b0dd5aa5 move OpenStack from alpha to beta 2019-08-29 22:55:36 +03:00
Justin SB 17186ff7ba
Generated vendor & bazel from `make gomod`
Automatically generated vendor & BUILD.bazel files
2019-08-25 16:00:41 -04:00
Justin SB b1f8f84306
Code changes for 1.15 2019-08-25 16:00:39 -04:00
Justin SB b7dd6bec66
Remove kops-server
We will replace with CRDs
2019-08-25 16:00:39 -04:00
Justin SB e28b4192ab
cloudformation tests: use standard file comparison
This allows us to auto-fix the expected output also.
2019-08-22 09:14:49 -04:00
xichengliudui 931ebe2bc8 fix Typo 'the the' -> 'the' 2019-08-20 08:47:17 -04:00
Justin SB 6a6bd7d8a0
Add --wait argument to kops validate
With this argument, kops validate will poll until the timeout expires,
waiting for readiness.  On readiness or on timer expiration, it exits
as if wait was not present.
2019-08-16 09:50:29 -04:00
Kashif Saadat 4514215656 Set and mount the correct volume plugin dir based on OS 2019-08-01 17:54:08 +01:00
Austin Moore 29b46624e2
Fix test after rebase 2019-07-26 12:28:42 -04:00
Austin Moore 66a8d1de90
Add integration test for cross-zone-load-balancing 2019-07-26 12:21:43 -04:00
Austin Moore 938dc11a16
Expose --lifecycle-overrides flag as an env var called KOPS_LIFECYCLE_OVERRIDES 2019-07-26 12:21:42 -04:00
Laurent Crisci 970c978790
Fix template clusterName behavior
This commit will allow you to define clusterName from the template's values file.
Before that our clusterName value would be overriden by the cli flag ( whether defined or not ).

Now we have an approach where if the value is defined, it will have priority over the cli flag.
This commit will also align with the official documentation under https://github.com/kubernetes/kops/blob/master/docs/cluster_template.md
2019-07-24 18:49:25 +01:00
Kubernetes Prow Robot 0e27206973
Merge pull request #7290 from justinsb/rationalize_golden_output_comparison
Rationalize golden-output comparison
2019-07-23 00:20:55 -07:00
Kubernetes Prow Robot cdd3496c8a
Merge pull request #6229 from justinsb/gce_ipalias
GCE: support ipalias networking mode, named "gce"
2019-07-22 06:26:51 -07:00
Justin SB 512378b335
Rationalize golden-output comparison
Create a single helper function: AssertMatchesFile

Also a few output files that weren't consistent.
2019-07-21 23:08:48 -04:00
Justin SB 28648207b3
Replace use of cmdutil IsFilenameSliceEmpty
The function was trivial, and it is changed in a later k8s version.
2019-07-19 09:35:52 -04:00
Justin SB 62f7c26f98
Support "gce" networking mode, which uses ip aliases 2019-07-19 07:54:13 -04:00
Jesse Haka ddaa0dd502 Possibility to use openstack without lbaas 2019-06-24 08:56:34 +03:00
Peter Rifel adef332fe3 Add integration test for mixed instances / launch templates 2019-06-07 14:29:34 -07:00
Kubernetes Prow Robot 81c42c549a
Merge pull request #6747 from justinsb/faster_roll
Speed up rolling-update - longer timeout on validation, less scheduled holds
2019-05-20 06:09:15 -07:00
Justin SB 71ff24be2d
Support using kops CLI with CRDs
Not terribly useful yet, as we still need an S3 state store (or
comparable), but getting closer!
2019-05-16 15:48:03 -04:00
Justin SB 9df2e4bbfb
Speed up rolling-update - longer timeout on validation, less scheduled holds
We reduce the amount of time we wait on a purely scheduled basis
during a rolling-update, and instead increase the timeout on the
validation.

This will be a behavioural change - particularly for `--cloudonly`
mode, but that mode seems more useful when things are going wrong
anyway, when people will likely set _even lower_ timeouts.
2019-05-16 03:37:35 -07:00
Justin SB ba9a4afc43
apigroup -> kops.k8s.io: Tests & supporting changes
Autogenerated code, docs & test changes

Also a new test for the older "kops" apiGroup, to make sure that
continues to work.
2019-05-06 22:26:29 -04:00
Justin SB 044395c588
Call klog.InitFlags to enable logging 2019-05-06 13:00:31 -04:00
Justin SB 76d03b3f71
Generated files: glog -> klog 2019-05-06 12:56:03 -04:00
Justin SB 3e33ac7682
Change code from glog to klog
We don't call klog.InitFlags yet, because that will cause a flag
redefinition error until we get everyone to stop using glog.  That
will happen when we update to k8s 1.13.
2019-05-06 12:54:51 -04:00
Justin SB 78ebe93f9f
Update kubernetes dependencies to 1.13.5
Notable changes:

* openapi-gen moved to k8s.io/kube-openapi/cmd/openapi-gen
* templates moved to k8s.io/kubernetes/pkg/kubectl/util/templates
2019-05-06 09:58:37 -04:00
Rodrigo Menezes 4b1e92617a Add terraform support for additional CIDR blocks now that it has support. 2019-03-28 00:47:08 -07:00
Kubernetes Prow Robot 09e5cad1cb
Merge pull request #5955 from adamyy/export_kubecfg_add_kubeconfig_option
Add --kubeconfig flag to `kops export kubecfg`
2019-03-15 10:38:56 -07:00
Gennady Trafimenkov acf9c9f016 Update bazel configuration 2019-03-03 16:11:33 +03:00
Gennady Trafimenkov 15bd566746 Correcly handle CRLF in the manifest
kops replace/create/delete now correctly handle crlf in the manifest.

This fixes issue #6532
2019-03-03 14:33:49 +03:00
Jesse Haka ae3ad36a28 add router subnet specify option 2019-02-27 14:29:30 +02:00
Jesse Haka ded99c8ab1 specify subnet for lb 2019-02-27 14:24:56 +02:00
Kubernetes Prow Robot 423fe84913
Merge pull request #6530 from zetaab/dnsserver
specify dns servers to openstack subnet
2019-02-27 04:10:33 -08:00
Jesse Haka 71452d0ddd specify dns servers to openstack subnet 2019-02-25 22:54:07 +02:00
Eric Greer 31a4c40131 merge conflict resolution 2019-02-21 15:20:05 -08:00
Eric Greer 8362b1260e etcd memory requests can now be specified 2019-02-21 15:14:51 -08:00
Adam Yang 14862af0f3 fixed method signature 2019-02-20 13:45:06 -05:00
Adam Yang 90013239fd initial implementation 2019-02-19 22:26:59 -05:00
Jesse Haka 3482a34ef5 support both octavia and old lbaasv2 api 2019-02-05 16:45:44 +02:00
Kubernetes Prow Robot 00802943d8
Merge pull request #6218 from VibrentHealth/external_networking
Support "egress: External" to avoid configuring networking
2019-01-27 14:44:01 -08:00
Kubernetes Prow Robot 70484c009a
Merge pull request #6232 from justinsb/ask_kops_for_its_version
kops version: Add --short flag, use it to get version in scripts
2019-01-27 13:50:37 -08:00
Moustafa Baiou 2028841338
fix integration test for unmanaged egress
gofmt
2019-01-27 15:53:21 -05:00
Justin Santa Barbara 556ed2aace
Allow for "external" egress
We don't configure routing for a subnet when it is external.  In the
case when all subnets have external egress, we should not create any
route / network objects at all (e.g. no IGW)
2019-01-27 15:53:20 -05:00
Justin SB b40c9034bd
kops version: Add --short flag, use it to get version in scripts
We upload to a location that includes the version, but we need to
specify the version in KOPS_BASE_URL.  We expose an option to make
`kops version` more amenable to this scripting.
2019-01-22 22:27:33 -05:00
Sergiu Marsavela (smarsave) 8d2c8fc3d8 Correct error message and fix typo 2019-01-20 00:46:53 +01:00
Derek Lemon -T (delemon - AEROTEK INC at Cisco) 3a87b1e015 Setting volume type for etcd volumes iff it was specified via command line 2019-01-19 14:07:35 -07:00
Derek Lemon -T (delemon - AEROTEK INC at Cisco) a4503cf3a8 Openstack arguement to allow ingore-az in kubelet cloud config 2019-01-18 13:00:24 -07:00
Derek Lemon -T (delemon - AEROTEK INC at Cisco) 292b3a8589 Storage config for openstack cloud config 2019-01-18 11:39:39 -07:00
Derek Lemon -T (delemon - AEROTEK INC at Cisco) fc740dbba3 Adding ability to specify to create_cluster openstack external network by name 2019-01-17 11:43:08 -07:00
Derek Lemon -T (delemon - AEROTEK INC at Cisco) 4f0169bb79 codegen 2019-01-16 09:30:40 -07:00
Derek Lemon -T (delemon - AEROTEK INC at Cisco) 0f7768b2fa Adding etcd storage type required for master volumes. Updating readme 2019-01-16 09:29:02 -07:00
Justin SB 4aa2498203
Rationalize deserialiation code
Put it all through kopscodecs.Decode, so that we can rewrite the API
group more easily in a subsequent PR.
2018-12-21 13:59:50 -05:00
Kubernetes Prow Robot f5ce011fa0
Merge pull request #6242 from justinsb/bulk_fix_typos
Bulk spelling fixes
2018-12-21 07:45:14 -08:00
Kubernetes Prow Robot 7a629c7743
Merge pull request #5932 from rdrgmnzs/deps_for_1_12
Update to k8s 1.12 libraries
2018-12-20 15:42:36 -08:00
Justin SB 26bd75aecb
Bulk spelling fixes
Experimenting with my own spelling checker, these are the typos it caught.
2018-12-20 17:43:56 -05:00
Justin Santa Barbara f49aba4147
Consider pending pods to be a validation failure
Also log the names of the non-ready containers.
2018-12-20 10:08:40 -05:00
Peter Rifel f66a2abc40 Add --post-drain-delay to rolling-update cluster command 2018-12-14 21:09:55 -08:00
Josh Branham 85bfa15b36 Simplify 2018-12-13 21:46:46 -08:00
Josh Branham bff260d920 Print --name if env NAME unset 2018-12-13 21:34:28 -08:00
Kubernetes Prow Robot 1f38ac53b8
Merge pull request #6185 from rdrgmnzs/cluster-rotation-validation-timeout
Let a user specify the validation timeout when rotating a cluster.
2018-12-09 17:48:54 -08:00
Rodrigo Menezes 926a14fbd7 Let a user specify the validation timeout when rotating a cluster. 2018-12-08 14:54:30 -08:00
mikesplain 3c7756a4e5 Add -y for upgrade command 2018-12-06 12:56:48 -05:00
Rodrigo Menezes 2b9243ff8c Getting things ready for when we are ready for 1.12 2018-12-04 18:50:17 -08:00
Kenjiro Nakayama 4489d86aff Add cni to usage network option for kops create cluster 2018-12-01 11:53:48 +09:00
k8s-ci-robot c83ebe8915
Merge pull request #6091 from jaredallard/master
feat(cmd/kops/create_cluster): default to kubelet.anonymousAuth false on k8s versions >=1.10
2018-11-26 10:26:13 -08:00
Jared Allard 034bda589e
fix(cmd/kops/create_cluster) default to anonymousAuth false for >=1.11, warn >=1.10 2018-11-26 09:26:24 -08:00
Kenjiro Nakayama 60c152c89d Mention about possible state store vendors in error message 2018-11-25 13:32:31 +09:00
Jared Allard 19811d9759
chore(tests): fix them up 2018-11-24 17:03:50 -08:00
Jared Allard b36fda8e39
chore: ./hack/update-bazel.sh 2018-11-24 15:58:26 -08:00
Jared Allard beb78dd7e3
feat: set anonymousAuth to false on clusters >1.10, and recommend it on upgrade 2018-11-24 15:55:22 -08:00
Jared Allard 2182b879d9
fix(cmd/kops/create_cluster): set anonymousAuth to false not true, whoops 2018-11-24 11:08:09 -08:00
Jared Allard c15ab52cd4
Merge remote-tracking branch 'upstream/master' 2018-11-24 10:52:32 -08:00
k8s-ci-robot f4012407f8
Merge pull request #4762 from locationlabs/cni-ipvlan-vpc-k8s
Cni ipvlan vpc k8s support
2018-11-21 13:43:19 -08:00
Jared Allard 769995d92a
chore(cmd/kops/create_cluster): better comment 2018-11-17 00:41:52 -08:00
Jared Allard 19f9d2f4d1
Merge branch 'master' into master 2018-11-16 23:03:38 -08:00
Jared Allard 6e6329db05
feat(cmd/kops/create_cluster): default to kubelet anonymousAuth true 2018-11-16 22:15:20 -08:00
xichengliudui 6414b9e892 delete some code 2018-11-13 13:22:58 -05:00
k8s-ci-robot bac89b8de5
Merge pull request #5102 from tmjd/calico-v3-upgrade
Calico v3 upgrade
2018-11-13 12:55:18 -08:00
k8s-ci-robot 2e9690d407
Merge pull request #6048 from mooncak/fix_bug
Fix some typos
2018-11-10 01:13:59 -08:00
k8s-ci-robot b1296990b3
Merge pull request #6053 from xichengliudui/fix181107
Remove unnecessary code
2018-11-09 13:56:57 -08:00
k8s-ci-robot 5dce6b1e6f
Merge pull request #5875 from seanson/5700_add_flag_for_no_subnet_tags
#5700: Add command line flag for disabling Subnet ELB tags
2018-11-09 13:05:48 -08:00
xichengliudui 9979549050 Remove unnecessary code 2018-11-08 12:40:13 -05:00
Erik Stidham 79940f6644 Update bazel 2018-11-08 08:00:10 -06:00
Erik Stidham 3da3b415e0 Adding Calico V3
- Add Calico configuration field to specify MajorVersion
- Add Calico V3 manifest
- Default new installations to Calico V3
  - Set etcd to V3 when calico is specified for networking
- Validate that etcd is V3 when Calico MajorVersion is v3
- Using Calico v3.2.1
2018-11-07 14:00:54 -06:00
Chris Phillips af7377d530 fix use of --networking in create cluster 2018-11-07 08:08:44 -08:00
Chris Phillips 2b9a56f8e6 rename to LyftVPC. Removes all the settings from the NetworkingSpec 2018-11-07 08:08:44 -08:00
Chris Phillips 3a8078763a Adds support for Lyft's cni-ipvlan-vpc-k8s
https://github.com/lyft/cni-ipvlan-vpc-k8s

This cni solution is slightly different in that it doesn't require running a daemonset

It requires:
  * a config file in /etc/cni/net.d
  * the binaries in /opt/cni/bin
  * adding the --node-ip param to the kubelet

This code is modeled after the AmazonVPC cni bits.

I've left the setup of the required subnets as an exercise to the reader.
2018-11-07 08:08:13 -08:00
xichengliudui 5826e4f361 Remove unnecessary code 2018-11-07 00:57:10 -05:00