Skip to content
This repository was archived by the owner on Jul 30, 2021. It is now read-only.

Commit 16393a8

Browse files
Levi BlackstoneLevi Blackstone
authored andcommitted
cmd/render: Infer etcd-servers from service-cidr for self-hosted etcd
Automatically set —etcd-servers to —service-cidr base IP + 15. For example, if —service-cidr=10.42.0.0/24, —etcd-servers=http://10.42.0.15:2379.
1 parent 37713ee commit 16393a8

File tree

1 file changed

+15
-4
lines changed

1 file changed

+15
-4
lines changed

cmd/bootkube/render.go

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -97,10 +97,6 @@ func validateRenderOpts(cmd *cobra.Command, args []string) error {
9797
}
9898

9999
func flagsToAssetConfig() (c *asset.Config, err error) {
100-
etcdServers, err := parseURLs(renderOpts.etcdServers)
101-
if err != nil {
102-
return nil, err
103-
}
104100
apiServers, err := parseURLs(renderOpts.apiServers)
105101
if err != nil {
106102
return nil, err
@@ -152,6 +148,21 @@ func flagsToAssetConfig() (c *asset.Config, err error) {
152148
return nil, err
153149
}
154150

151+
var etcdServers []*url.URL
152+
if renderOpts.selfHostedEtcd {
153+
etcdServerUrl, err := url.Parse(fmt.Sprintf("http://%s:2379", etcdServiceIP))
154+
if err != nil {
155+
return nil, err
156+
}
157+
158+
etcdServers = append(etcdServers, etcdServerUrl)
159+
} else {
160+
etcdServers, err = parseURLs(renderOpts.etcdServers)
161+
if err != nil {
162+
return nil, err
163+
}
164+
}
165+
155166
// TODO: Find better option than asking users to make manual changes
156167
if serviceNet.IP.String() != defaultServiceBaseIP {
157168
fmt.Printf("You have selected a non-default service CIDR %s - be sure your kubelet service file uses --cluster-dns=%s\n", serviceNet.String(), dnsServiceIP.String())

0 commit comments

Comments
 (0)