Skip to content

Commit 0903a7d

Browse files
committed
Add --server-k3s-extra-args for disabling traefik etc
Signed-off-by: Alex Ellis (OpenFaaS Ltd) <alexellis2@gmail.com>
1 parent bb4baf4 commit 0903a7d

File tree

2 files changed

+26
-7
lines changed

2 files changed

+26
-7
lines changed

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -326,6 +326,7 @@ k3sup plan \
326326
devices.json \
327327
--user ubuntu \
328328
--servers 3 \
329+
--server-k3s-extra-args "--disable traefik"
329330
--background > bootstrap.sh
330331
```
331332

@@ -338,7 +339,7 @@ chmod +x bootstrap.sh
338339

339340
Watch a demo with dozens of Firecracker VMs: [Testing Kubernetes at Scale with bare-metal](https://youtu.be/o4UxRw-Cc8c)
340341

341-
The initial version of `k3sup plan` has a reduced set of flags such as `--k3s-extra-args`, but contributions are welcomed from users and sponsors.
342+
The initial version of `k3sup plan` has a reduced set of flags. Flags such as `--k3s-version` and `--datastore` are not available, but feel free to propose an issue with what you need.
342343

343344
### Create a multi-master (HA) setup with external SQL
344345

cmd/plan.go

Lines changed: 24 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,8 @@ Input file format, in JSON:
4444

4545
command.Flags().String("ssh-key", "", "Path to the private key for SSH login")
4646
command.Flags().String("tls-san", "", "SAN for TLS certificates, can be a comma-separated list")
47+
command.Flags().String("server-k3s-extra-args", "", "Extra arguments to be passed into the k3s server")
48+
command.Flags().String("agent-k3s-extra-args", "", "Extra arguments to be passed into the k3s agent")
4749

4850
// Background
4951
command.Flags().Bool("background", false, "Run the installation in the background for all agents/nodes after the first server is up")
@@ -70,6 +72,9 @@ Input file format, in JSON:
7072
return err
7173
}
7274

75+
serverK3sExtraArgs, _ := cmd.Flags().GetString("server-k3s-extra-args")
76+
agentK3sExtraArgs, _ := cmd.Flags().GetString("agent-k3s-extra-args")
77+
7378
servers, _ := cmd.Flags().GetInt("servers")
7479
kubeconfig, _ := cmd.Flags().GetString("local-path")
7580
contextName, _ := cmd.Flags().GetString("context")
@@ -92,6 +97,17 @@ Input file format, in JSON:
9297
var primaryServer Host
9398
script := "#!/bin/sh\n\n"
9499

100+
serverExtraArgsSt := ""
101+
if len(serverK3sExtraArgs) > 0 {
102+
serverExtraArgsSt = fmt.Sprintf(` \
103+
--k3s-extra-args "%s"`, serverK3sExtraArgs)
104+
}
105+
agentExtraArgsSt := ""
106+
if len(agentK3sExtraArgs) > 0 {
107+
agentExtraArgsSt = fmt.Sprintf(` \
108+
--k3s-extra-args "%s"`, agentK3sExtraArgs)
109+
}
110+
95111
for i, host := range hosts {
96112
if serversAdded == 0 {
97113

@@ -102,12 +118,14 @@ Input file format, in JSON:
102118
--user %s \
103119
--cluster \
104120
--local-path %s \
105-
--context %s%s
121+
--context %s%s%s
106122
`,
107123
host.IP,
108124
user,
109125
kubeconfig,
110-
contextName, tlsSanStr)
126+
contextName,
127+
tlsSanStr,
128+
serverExtraArgsSt)
111129

112130
script += fmt.Sprintf(`
113131
echo "Fetching the server's node-token into memory"
@@ -125,8 +143,8 @@ export NODE_TOKEN=$(k3sup node-token --host %s --user %s)
125143
--server-host %s \
126144
--server \
127145
--node-token "$NODE_TOKEN" \
128-
--user %s%s%s
129-
`, host.IP, primaryServer.IP, user, tlsSanStr, bgStr)
146+
--user %s%s%s%s
147+
`, host.IP, primaryServer.IP, user, tlsSanStr, serverExtraArgsSt, bgStr)
130148

131149
serversAdded++
132150
} else {
@@ -136,8 +154,8 @@ export NODE_TOKEN=$(k3sup node-token --host %s --user %s)
136154
--host %s \
137155
--server-host %s \
138156
--node-token "$NODE_TOKEN" \
139-
--user %s%s
140-
`, host.IP, primaryServer.IP, user, bgStr)
157+
--user %s%s%s
158+
`, host.IP, primaryServer.IP, user, agentExtraArgsSt, bgStr)
141159
}
142160

143161
if nodeLimit > 0 && i+1 >= nodeLimit {

0 commit comments

Comments
 (0)