Commit Graph

234 Commits

Author SHA1 Message Date
Kubernetes Prow Robot 211d272f80
Merge pull request #7760 from tanjunchen/fix-up-unnecessary-newline
remove the unnecessary newline and unused vars
2019-10-13 09:18:36 -07:00
Kubernetes Prow Robot 34c7d5a64a
Merge pull request #7755 from tanjunchen/fix-up-static-error
fix-up staticcheck error
2019-10-13 08:20:35 -07:00
Kubernetes Prow Robot 0c66a304c3
Merge pull request #7754 from tanjunchen/fix-up-gosimple-error
fix-up gosimple check error
2019-10-12 11:18:44 -07:00
Thomas Jackson 14a60a53c9 Enable primary=mesh secondary=memberlist by default 2019-10-10 13:21:00 -07:00
Thomas Jackson 85db3dce27 make apimachinery 2019-10-10 13:13:38 -07:00
Thomas Jackson cd8c743d1c make gomod 2019-10-10 13:10:13 -07:00
Thomas Jackson 6acbfe661b Move gossip implementations into a plugin interface 2019-10-10 13:09:22 -07:00
Thomas Jackson 0650848489 Add boilerplate to new files 2019-10-10 13:09:22 -07:00
Thomas Jackson 98352ffe2e remove go-kit log 2019-10-10 13:09:22 -07:00
Thomas Jackson 0685357152 Move to fork 2019-10-10 13:09:22 -07:00
Thomas Jackson 421ee540b9 Add memberlist gossip option 2019-10-10 13:08:55 -07:00
tanjunchen 279c429abd remove the unnecessary newline and unused vars 2019-10-08 22:43:10 +08:00
Guangming Wang c295a49bb1 replace slice loop with append for simple and clear
Signed-off-by: Guangming Wang <guangming.wang@daocloud.io>
2019-10-08 20:21:09 +08:00
tanjunchen 28fdb358f8 fix-up staticcheck error 2019-10-08 13:53:04 +08:00
tanjunchen 43bf6bdab6 fix-up gosimple check error 2019-10-07 11:59:57 +08:00
Peter Rifel 4c66dd3918 Check for error when describing openstack instances 2019-09-27 12:51:19 -07:00
Kubernetes Prow Robot 942c8915db
Merge pull request #7496 from justinsb/label_controller
kops-controller
2019-09-27 03:43:35 -07: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
Peter Rifel c8d424dd87 Fix some staticcheck warnings 2019-09-25 06:35:25 -07:00
mikesplain 9e55b8230a Update copyright notices
Also cleans some white spaces
2019-09-09 14:47:51 -04:00
Justin SB 8e2dbb6a99
Bootstrap: protokube labels its own node with node-role label
As of k8s 1.16, the node-role label is protected for security reasons.
We will introduce a controller to set those labels generically.
However, we need these labels to run the controller (only) on master
nodes.

To solve this bootstrapping problem, we use protokube to apply the
master role node labels to the master node only.  This isn't a
security problem because we assume that protokube on the master is
highly trusted - we are still administering labels centrally.

Then kops-controller can use this label to target the master nodes,
and run a central label controller.
2019-09-08 20:51:00 -04: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
928234269 09f564da3b
fix typo "specifiction" -> "specification"
Signed-off-by: 928234269 <longfei.shang@daocloud.io>
2019-08-20 17:29:19 +08:00
ethan 0c6b86ac59
protokube/gce_volume.go: error info correction
Signed-off-by: ethan <guangming.wang@daocloud.io>
2019-08-06 22:03:14 +08:00
Kubernetes Prow Robot dd6b0314fc
Merge pull request #6897 from vainu-arto/set-priority-for-static-pods
Set priority for static pods
2019-07-12 00:41:07 -07:00
Thomas Jackson bf8efa89d6 Make an actual deep-copy of the state
Before this patch this was creating a shallow copy, as the KVState was
copied but the underlying map (Records) wasn't.

Related to #7134
2019-07-09 09:40:19 -07:00
Arto Jantunen 238fdaf1c1 Give etcd pods system-cluster-critical priority
Again unlikely to matter since master nodes aren't expected to run out of
capacity, done mostly for completeness (all pods should usually have a
priority defined if the cluster is running with PodPriority enabled).
2019-05-09 16:03:08 +03:00
Justin SB feec6820fe
Avoid concurrent write corruption to /etc/hosts
When we have multiple writers racing to write /etc/hosts, we could
have file corruption where we see a mix of both files.

We can't use a traditional atomic file write, because we are bind-mounting /etc/hosts.

Instead we write to /etc/hosts, pause, then re-read the contents.  If
the contents don't match, we repeat.  This will not result in fair
queuing, but will avoid corruption.
2019-05-07 11:41:36 -04:00
Justin SB 68e975cc74
/etc/hosts (gossip): Stronger logic
* Add a mutex around /etc/hosts updates (for a little extra safety)
* Don't write unchanged files
* Recover from out-of-sequence guard lines
* Add tests

Thanks to granular-ryanbonham for the suggestions & finding the issue!
2019-05-06 22:09:07 -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
xichengliudui 3cd5c71330 Using const() defines constants together (part:3) 2019-04-11 15:19:27 -04:00
Justin Santa Barbara 1965db6605 Deep-copy proto state to prevent concurrent modification
Fix #6635
2019-03-30 02:23:11 -04:00
Kubernetes Prow Robot 269a6f67a5
Merge pull request #6562 from appvia/etcd-backup-tls
If using etcd-backup and TLS is enabled, pass relevant options
2019-03-25 12:22:20 -07:00
Kubernetes Prow Robot 9ecabb9159
Merge pull request #6628 from AliyunContainerService/flags
add ALI flags
2019-03-25 09:23:09 -07:00
Kubernetes Prow Robot 93988d8fdd
Merge pull request #6359 from justinsb/integration_etcd
Enable etcd-manager / etcd3 / etcd-tls in kops 1.12
2019-03-19 10:28:23 -07:00
Lily e4cbd3c17c add ALI flags 2019-03-16 17:26:44 +08:00
LilyFaFa 12d54b6a1f support gossip for AliCloud 2019-03-15 15:26:12 +08:00
Justin SB 31f408c978
Support etcd-manager in kops 1.12
In 1.12 (kops & kubenetes):

* We default etcd-manager on
* We default to etcd3
* We default to full TLS for etcd (client and peer)
* We stop allowing external access to etcd
2019-03-14 23:13:06 -04:00
Kashif Saadat 31922758fb Pass TLS options to etcd-backup 2019-03-01 11:06:25 +00:00
Eric Greer 89a5fa58a4 removig unecessary package after squashing and patching to current master 2019-02-21 18:12:42 -08: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
Derek Lemon -T (delemon - AEROTEK INC at Cisco) 025a255dd8 Adding ability to retrieve openstack server by ID 2019-01-18 13:42:21 -07:00
Derek Lemon -T (delemon - AEROTEK INC at Cisco) c03f7eeced Additional logging for protokube openstack errors 2019-01-18 13:01:31 -07:00
Derek Lemon -T (delemon - AEROTEK INC at Cisco) eb256593bc Setting project ID as well in cloudconfig. Using loadbalancerID in cloudconfig. Retrieving instance IP from openstack in protokube. 2019-01-18 10:17:14 -07:00
Derek Lemon -T (delemon - AEROTEK INC at Cisco) 5cae86c2ce dep ensure and gofmt updates 2019-01-16 15:09:20 -07:00
Derek Lemon -T (delemon - AEROTEK INC at Cisco) 4f0169bb79 codegen 2019-01-16 09:30:40 -07:00
Jan Wozniak 6d3c9fe44f protokube: add support for OpenStack 2019-01-16 09:25:58 -07: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 SB 568484ff4b
Fix nsenter mounter in protokube
We don't have any shared directories, and certainly not root!
2018-10-18 22:01:09 -07:00
mooncake 5094996a32 fix typos issues in upup files
Signed-off-by: mooncake <xcoder@tenxcloud.com>
2018-10-07 10:28:01 +08:00
Justin Santa Barbara 62e8e17077 Code fixes for k8s 1.11 API changes 2018-09-28 20:14:45 -04:00
Ilya Shaisultanov 712528728c dns-controller: allow configuring DNS update interval 2018-09-06 13:29:51 -06:00
Justin Santa Barbara 9b70f75aa9 Remove gossip connection limit entirely
This simply turns off gossip connection limits, so we shouldn't ever have to manually configure them.

Follow on to #5077
2018-07-21 21:32:20 -04:00
k8s-ci-robot 2dbb6e84f6
Merge pull request #5077 from yancl/master
change gossip dns conn limit by ENV
2018-07-19 21:40:52 -07:00
Erik Berdonces Bonelo fdeed33719 Add --min-request-timeout flag in kube-APIServer 2018-07-13 10:29:30 +02:00
Justin Santa Barbara c6995e9a9a gossip: create zone in protokube
We were doing this implicitly previously by creating the etcd records.

As etcd-manager doesn't need to create gossip records, we instead
create a zone explicilty.
2018-06-14 17:43:49 -04:00
Rohith 67296c2db9 - fixing up the spelling mistakes found 2018-06-06 10:03:51 +01:00
Justin Santa Barbara d5a6b15b9b Fix typo: adddresses -> addresses 2018-05-31 13:14:34 -07:00
Justin Santa Barbara ba87c36f73 Support (optional) etcd-manager 2018-05-25 16:01:22 -04:00
liang 8d3ad44137 add err to log 2018-05-02 02:16:40 +00:00
liang ebfb3c241b change gossip dns conn limit by ENV 2018-04-28 15:50:19 +00:00
k8s-ci-robot 99cf4b63e9
Merge pull request #4960 from justinsb/dont_spurious_log_on_shared_volume_tag
Ignore shared-ownership tags on volumes
2018-04-11 01:40:55 -07:00
Justin Santa Barbara f0f9b9a028 Ignore shared-ownership tags on volumes
We were otherwise logging a spurious warning message
2018-04-10 23:58:17 -04:00
Justin Santa Barbara b1384b3bc0 Only do etcd backups on main
Because our implementation can't actually differentiate settings for
events & main, we only support backup of main for now.
2018-04-10 18:52:08 -04:00
andrewsykim 47c41463ce digitalocean: use pagination for all list requests 2018-04-05 11:12:20 -04:00
andrewsykim b0ef6a2f99 protokube: check for device symlinks 2018-04-04 16:08:30 -04:00
andrewsykim b480898af7 digitalocean: add protokube support 2018-04-01 21:47:31 -04:00
Justin Santa Barbara 90f5839341 protokube: match device /root/dev/X as /dev/X
We certainly expect them to be the same dev tree, and it's not clear
that either is more correct than the other.

Issue #4813
Issue #4837
2018-03-31 14:40:38 -04:00
Haoyun 7b42aea169
fix a grammar mistake
fix a grammar mistake delete the "," at the end of the function comment
```release-note
None
```
2018-03-24 13:18:00 +08:00
Rohith 3c7d9d8691 Protokube Channel and RBAC
- only performing the initialization of rbac on masters
- onlu performing the channels apply on a master node
2018-03-10 21:48:35 +00:00
k8s-ci-robot 37d4b53d0d
Merge pull request #4010 from gambol99/etcd_options
Etcd TLS Peer & CLient Auth
2018-02-27 22:27:56 -08:00
Mike Splain 45a57915e2 Fix bazel deprecation notice 2018-02-26 09:36:13 -05:00
Rohith a140d5b7f1 - fixing the protokube flag issue 2018-02-24 10:03:43 +00:00
Rohith d065111453 Etcd TLS Peer & CLient Auth 2018-02-24 10:02:41 +00:00
Justin Santa Barbara dde7600dae Initial support for standalone etcd-manager backups
The etcd-manager will (ideally) take over etcd management.  To provide a
nice migration path, and because we want etcd backups, we're creating a
standalone image that just backs up etcd in the etcd-manager format.

This isn't really ready for actual usage, but should be harmless because
it runs as a sidecar container.
2018-02-20 20:06:08 -05:00
Tim Hockin 79d5f793e7 Convert registry to k8s.gcr.io 2018-02-14 10:08:41 -08:00
Mike Splain f40dc50a25 Update BUILD files to account for some recent changes 2018-02-12 17:16:33 -05:00
Kashif Saadat ac25853cd5 - Add etcdClusterSpec Image & Version in bootstrap data for Master nodes
- Reuse execWithTee fn for ETCD Command (tee & mkfifo in different path for newer image versions)
2018-02-10 12:14:36 +00:00
Justin Santa Barbara 7ca593b994 exec target command, but still pipe it to tee
Equivalent of https://github.com/kubernetes/kubernetes/pull/57756
2018-01-25 10:15:24 -05:00
chrislovecnm 4dd3bb1dea Updating bazel BUILD files with new go_rules version 2017-12-29 15:03:14 -07:00
chrislovecnm 509b8e285f fixing goimports formatting 2017-12-18 11:09:04 -07:00
Kubernetes Submit Queue b44d894813
Merge pull request #3860 from justinsb/batching
Automatic merge from submit-queue.

Copy dnsprovider into our code, implement route53 batching

Fixes #3121
2017-12-15 15:44:12 -08:00
Kubernetes Submit Queue 576f3dc603
Merge pull request #4076 from justinsb/refactor_hosts
Automatic merge from submit-queue.

Refactor protokube hosts file into its own package
2017-12-15 05:35:12 -08:00
Kubernetes Submit Queue 490f860bc9
Merge pull request #4078 from justinsb/protokube_local_addresses
Automatic merge from submit-queue.

protokube: better discovery of local address
2017-12-15 05:03:47 -08:00
Justin Santa Barbara 6d166a41dd Refactor protokube hosts file into its own package
So we can bring this in without our gossip layer

This supports an imminent implementation that uses DNS-SD
2017-12-15 01:22:51 -05:00
Justin Santa Barbara 3472b0dc6d protokube: fix logging / logic around cluster-id
Remove superfluous if statement
2017-12-15 01:11:56 -05:00
Justin Santa Barbara 414b0172f0 protokube: better discovery of local address
Fix up the local IP address discovery logic, to recognize new
en-interfaces, and to better log what it is doing.  Plug it in for
baremetal installations.
2017-12-15 01:10:26 -05:00
Justin Santa Barbara f03cc5dbd9 Update dnsprovider imports to use our version 2017-12-13 20:43:01 -05:00
Justin Santa Barbara 1338ba13fc Fix filepath concatenation
Thanks @chrislovecnm
2017-11-30 12:08:02 -05:00
Justin Santa Barbara 3006795aae Initial support for nvme 2017-11-30 00:23:43 -05:00
Justin Santa Barbara aff2e6a114 Fix resources for etcd-events
etcd-events only requests 100m, otherwise we run out of cpu on a 1
core master.
2017-11-13 00:34:39 -05:00
Justin Santa Barbara 67b434fa6a Don't use gazelle proto generation for our code
We're still checking in the generated pb.go file, for now.
2017-11-06 17:28:40 -05:00
chrislovecnm 609e268a1d gazelle updates with new bazel version 2017-11-05 17:41:53 -07:00
chrislovecnm 1e418c3e13 more goimport updates 2017-11-04 10:03:02 -06:00
chrislovecnm 4711d1596e update to imports that apimachinery is doing now automatically 2017-10-27 14:28:48 -06:00