Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
k3s
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jacklull
k3s
Commits
a00db0a3
Commit
a00db0a3
authored
Nov 01, 2016
by
Mike Danese
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
kubeadm: move kubeadm over to apigroup defaulting
parent
c7e9ac6f
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
42 additions
and
28 deletions
+42
-28
BUILD
cmd/kubeadm/app/cmd/BUILD
+1
-0
init.go
cmd/kubeadm/app/cmd/init.go
+26
-21
join.go
cmd/kubeadm/app/cmd/join.go
+12
-6
BUILD
cmd/kubeadm/app/master/BUILD
+1
-0
discovery.go
cmd/kubeadm/app/master/discovery.go
+2
-1
No files found.
cmd/kubeadm/app/cmd/BUILD
View file @
a00db0a3
...
@@ -22,6 +22,7 @@ go_library(
...
@@ -22,6 +22,7 @@ go_library(
tags = ["automanaged"],
tags = ["automanaged"],
deps = [
deps = [
"//cmd/kubeadm/app/apis/kubeadm:go_default_library",
"//cmd/kubeadm/app/apis/kubeadm:go_default_library",
"//cmd/kubeadm/app/apis/kubeadm/v1alpha1:go_default_library",
"//cmd/kubeadm/app/master:go_default_library",
"//cmd/kubeadm/app/master:go_default_library",
"//cmd/kubeadm/app/node:go_default_library",
"//cmd/kubeadm/app/node:go_default_library",
"//cmd/kubeadm/app/preflight:go_default_library",
"//cmd/kubeadm/app/preflight:go_default_library",
...
...
cmd/kubeadm/app/cmd/init.go
View file @
a00db0a3
...
@@ -27,6 +27,7 @@ import (
...
@@ -27,6 +27,7 @@ import (
"github.com/spf13/cobra"
"github.com/spf13/cobra"
kubeadmapi
"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm"
kubeadmapi
"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm"
kubeadmapiext
"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1alpha1"
kubemaster
"k8s.io/kubernetes/cmd/kubeadm/app/master"
kubemaster
"k8s.io/kubernetes/cmd/kubeadm/app/master"
"k8s.io/kubernetes/cmd/kubeadm/app/preflight"
"k8s.io/kubernetes/cmd/kubeadm/app/preflight"
kubeadmutil
"k8s.io/kubernetes/cmd/kubeadm/app/util"
kubeadmutil
"k8s.io/kubernetes/cmd/kubeadm/app/util"
...
@@ -61,92 +62,96 @@ var (
...
@@ -61,92 +62,96 @@ var (
// NewCmdInit returns "kubeadm init" command.
// NewCmdInit returns "kubeadm init" command.
func
NewCmdInit
(
out
io
.
Writer
)
*
cobra
.
Command
{
func
NewCmdInit
(
out
io
.
Writer
)
*
cobra
.
Command
{
cfg
:=
&
kubeadmapi
.
MasterConfiguration
{}
versioned
:=
&
kubeadmapiext
.
MasterConfiguration
{}
api
.
Scheme
.
Default
(
versioned
)
cfg
:=
kubeadmapi
.
MasterConfiguration
{}
api
.
Scheme
.
Convert
(
versioned
,
&
cfg
,
nil
)
var
cfgPath
string
var
cfgPath
string
var
skipPreFlight
bool
var
skipPreFlight
bool
cmd
:=
&
cobra
.
Command
{
cmd
:=
&
cobra
.
Command
{
Use
:
"init"
,
Use
:
"init"
,
Short
:
"Run this in order to set up the Kubernetes master."
,
Short
:
"Run this in order to set up the Kubernetes master."
,
Run
:
func
(
cmd
*
cobra
.
Command
,
args
[]
string
)
{
Run
:
func
(
cmd
*
cobra
.
Command
,
args
[]
string
)
{
i
,
err
:=
NewInit
(
cfgPath
,
cfg
,
skipPreFlight
)
i
,
err
:=
NewInit
(
cfgPath
,
&
cfg
,
skipPreFlight
)
kubeadmutil
.
CheckErr
(
err
)
kubeadmutil
.
CheckErr
(
err
)
kubeadmutil
.
CheckErr
(
i
.
Run
(
out
))
kubeadmutil
.
CheckErr
(
i
.
Run
(
out
))
},
},
}
}
cmd
.
PersistentFlags
()
.
StringVar
(
cmd
.
PersistentFlags
()
.
StringVar
(
&
cfg
.
Secrets
.
GivenToken
,
"token"
,
""
,
&
cfg
.
Secrets
.
GivenToken
,
"token"
,
cfg
.
Secrets
.
GivenToken
,
"Shared secret used to secure cluster bootstrap; if none is provided, one will be generated for you"
,
"Shared secret used to secure cluster bootstrap; if none is provided, one will be generated for you"
,
)
)
cmd
.
PersistentFlags
()
.
StringSliceVar
(
cmd
.
PersistentFlags
()
.
StringSliceVar
(
&
cfg
.
API
.
AdvertiseAddresses
,
"api-advertise-addresses"
,
[]
string
{}
,
&
cfg
.
API
.
AdvertiseAddresses
,
"api-advertise-addresses"
,
cfg
.
API
.
AdvertiseAddresses
,
"The IP addresses to advertise, in case autodetection fails"
,
"The IP addresses to advertise, in case autodetection fails"
,
)
)
cmd
.
PersistentFlags
()
.
StringSliceVar
(
cmd
.
PersistentFlags
()
.
StringSliceVar
(
&
cfg
.
API
.
ExternalDNSNames
,
"api-external-dns-names"
,
[]
string
{}
,
&
cfg
.
API
.
ExternalDNSNames
,
"api-external-dns-names"
,
cfg
.
API
.
ExternalDNSNames
,
"The DNS names to advertise, in case you have configured them yourself"
,
"The DNS names to advertise, in case you have configured them yourself"
,
)
)
cmd
.
PersistentFlags
()
.
StringVar
(
cmd
.
PersistentFlags
()
.
StringVar
(
&
cfg
.
Networking
.
ServiceSubnet
,
"service-cidr"
,
kubeadmapi
.
DefaultServices
Subnet
,
&
cfg
.
Networking
.
ServiceSubnet
,
"service-cidr"
,
cfg
.
Networking
.
Service
Subnet
,
"Use alternative range of IP address for service VIPs"
,
"Use alternative range of IP address for service VIPs"
,
)
)
cmd
.
PersistentFlags
()
.
StringVar
(
cmd
.
PersistentFlags
()
.
StringVar
(
&
cfg
.
Networking
.
PodSubnet
,
"pod-network-cidr"
,
""
,
&
cfg
.
Networking
.
PodSubnet
,
"pod-network-cidr"
,
cfg
.
Networking
.
PodSubnet
,
"Specify range of IP addresses for the pod network; if set, the control plane will automatically allocate CIDRs for every node"
,
"Specify range of IP addresses for the pod network; if set, the control plane will automatically allocate CIDRs for every node"
,
)
)
cmd
.
PersistentFlags
()
.
StringVar
(
cmd
.
PersistentFlags
()
.
StringVar
(
&
cfg
.
Networking
.
DNSDomain
,
"service-dns-domain"
,
kubeadmapi
.
DefaultService
DNSDomain
,
&
cfg
.
Networking
.
DNSDomain
,
"service-dns-domain"
,
cfg
.
Networking
.
DNSDomain
,
`Use alternative domain for services, e.g. "myorg.internal"`
,
`Use alternative domain for services, e.g. "myorg.internal"`
,
)
)
cmd
.
PersistentFlags
()
.
StringVar
(
cmd
.
PersistentFlags
()
.
StringVar
(
&
cfg
.
CloudProvider
,
"cloud-provider"
,
""
,
&
cfg
.
CloudProvider
,
"cloud-provider"
,
cfg
.
CloudProvider
,
`Enable cloud provider features (external load-balancers, storage, etc), e.g. "gce"`
,
`Enable cloud provider features (external load-balancers, storage, etc), e.g. "gce"`
,
)
)
cmd
.
PersistentFlags
()
.
StringVar
(
cmd
.
PersistentFlags
()
.
StringVar
(
&
cfg
.
KubernetesVersion
,
"use-kubernetes-version"
,
kubeadmapi
.
Default
KubernetesVersion
,
&
cfg
.
KubernetesVersion
,
"use-kubernetes-version"
,
cfg
.
KubernetesVersion
,
`Choose a specific Kubernetes version for the control plane`
,
`Choose a specific Kubernetes version for the control plane`
,
)
)
cmd
.
PersistentFlags
()
.
StringVar
(
&
cfgPath
,
"config"
,
""
,
"Path to kubeadm config file"
)
cmd
.
PersistentFlags
()
.
StringVar
(
&
cfgPath
,
"config"
,
cfgPath
,
"Path to kubeadm config file"
)
// TODO (phase1+) @errordeveloper make the flags below not show up in --help but rather on --advanced-help
// TODO (phase1+) @errordeveloper make the flags below not show up in --help but rather on --advanced-help
cmd
.
PersistentFlags
()
.
StringSliceVar
(
cmd
.
PersistentFlags
()
.
StringSliceVar
(
&
cfg
.
Etcd
.
Endpoints
,
"external-etcd-endpoints"
,
[]
string
{}
,
&
cfg
.
Etcd
.
Endpoints
,
"external-etcd-endpoints"
,
cfg
.
Etcd
.
Endpoints
,
"etcd endpoints to use, in case you have an external cluster"
,
"etcd endpoints to use, in case you have an external cluster"
,
)
)
cmd
.
PersistentFlags
()
.
MarkDeprecated
(
"external-etcd-endpoints"
,
"this flag will be removed when componentconfig exists"
)
cmd
.
PersistentFlags
()
.
MarkDeprecated
(
"external-etcd-endpoints"
,
"this flag will be removed when componentconfig exists"
)
cmd
.
PersistentFlags
()
.
StringVar
(
cmd
.
PersistentFlags
()
.
StringVar
(
&
cfg
.
Etcd
.
CAFile
,
"external-etcd-cafile"
,
""
,
&
cfg
.
Etcd
.
CAFile
,
"external-etcd-cafile"
,
cfg
.
Etcd
.
CAFile
,
"etcd certificate authority certificate file. Note: The path must be in /etc/ssl/certs"
,
"etcd certificate authority certificate file. Note: The path must be in /etc/ssl/certs"
,
)
)
cmd
.
PersistentFlags
()
.
MarkDeprecated
(
"external-etcd-cafile"
,
"this flag will be removed when componentconfig exists"
)
cmd
.
PersistentFlags
()
.
MarkDeprecated
(
"external-etcd-cafile"
,
"this flag will be removed when componentconfig exists"
)
cmd
.
PersistentFlags
()
.
StringVar
(
cmd
.
PersistentFlags
()
.
StringVar
(
&
cfg
.
Etcd
.
CertFile
,
"external-etcd-certfile"
,
""
,
&
cfg
.
Etcd
.
CertFile
,
"external-etcd-certfile"
,
cfg
.
Etcd
.
CertFile
,
"etcd client certificate file. Note: The path must be in /etc/ssl/certs"
,
"etcd client certificate file. Note: The path must be in /etc/ssl/certs"
,
)
)
cmd
.
PersistentFlags
()
.
MarkDeprecated
(
"external-etcd-certfile"
,
"this flag will be removed when componentconfig exists"
)
cmd
.
PersistentFlags
()
.
MarkDeprecated
(
"external-etcd-certfile"
,
"this flag will be removed when componentconfig exists"
)
cmd
.
PersistentFlags
()
.
StringVar
(
cmd
.
PersistentFlags
()
.
StringVar
(
&
cfg
.
Etcd
.
KeyFile
,
"external-etcd-keyfile"
,
""
,
&
cfg
.
Etcd
.
KeyFile
,
"external-etcd-keyfile"
,
cfg
.
Etcd
.
KeyFile
,
"etcd client key file. Note: The path must be in /etc/ssl/certs"
,
"etcd client key file. Note: The path must be in /etc/ssl/certs"
,
)
)
cmd
.
PersistentFlags
()
.
MarkDeprecated
(
"external-etcd-keyfile"
,
"this flag will be removed when componentconfig exists"
)
cmd
.
PersistentFlags
()
.
MarkDeprecated
(
"external-etcd-keyfile"
,
"this flag will be removed when componentconfig exists"
)
cmd
.
PersistentFlags
()
.
BoolVar
(
cmd
.
PersistentFlags
()
.
BoolVar
(
&
skipPreFlight
,
"skip-preflight-checks"
,
false
,
&
skipPreFlight
,
"skip-preflight-checks"
,
skipPreFlight
,
"skip preflight checks normally run before modifying the system"
,
"skip preflight checks normally run before modifying the system"
,
)
)
cmd
.
PersistentFlags
()
.
Int32Var
(
cmd
.
PersistentFlags
()
.
Int32Var
(
&
cfg
.
API
.
BindPort
,
"api-port"
,
kubeadmapi
.
DefaultAPI
BindPort
,
&
cfg
.
API
.
BindPort
,
"api-port"
,
cfg
.
API
.
BindPort
,
"Port for API to bind to"
,
"Port for API to bind to"
,
)
)
cmd
.
PersistentFlags
()
.
Int32Var
(
cmd
.
PersistentFlags
()
.
Int32Var
(
&
cfg
.
Discovery
.
BindPort
,
"discovery-port"
,
kubeadmapi
.
DefaultDiscovery
BindPort
,
&
cfg
.
Discovery
.
BindPort
,
"discovery-port"
,
cfg
.
Discovery
.
BindPort
,
"Port for JWS discovery service to bind to"
,
"Port for JWS discovery service to bind to"
,
)
)
...
@@ -202,8 +207,8 @@ func NewInit(cfgPath string, cfg *kubeadmapi.MasterConfiguration, skipPreFlight
...
@@ -202,8 +207,8 @@ func NewInit(cfgPath string, cfg *kubeadmapi.MasterConfiguration, skipPreFlight
// joinArgsData denotes a data object which is needed by function generateJoinArgs to generate kubeadm join arguments.
// joinArgsData denotes a data object which is needed by function generateJoinArgs to generate kubeadm join arguments.
type
joinArgsData
struct
{
type
joinArgsData
struct
{
Cfg
*
kubeadmapi
.
MasterConfiguration
Cfg
*
kubeadmapi
.
MasterConfiguration
DefaultAPIBindPort
uint
DefaultAPIBindPort
int32
DefaultDiscoveryBindPort
uint
DefaultDiscoveryBindPort
int32
}
}
// Run executes master node provisioning, including certificates, needed static pod manifests, etc.
// Run executes master node provisioning, including certificates, needed static pod manifests, etc.
...
@@ -259,7 +264,7 @@ func (i *Init) Run(out io.Writer) error {
...
@@ -259,7 +264,7 @@ func (i *Init) Run(out io.Writer) error {
return
err
return
err
}
}
data
:=
joinArgsData
{
i
.
cfg
,
kubeadmapi
.
DefaultAPIBindPort
,
kubeadmapi
.
DefaultDiscoveryBindPort
}
data
:=
joinArgsData
{
i
.
cfg
,
kubeadmapi
ext
.
DefaultAPIBindPort
,
kubeadmapiext
.
DefaultDiscoveryBindPort
}
if
joinArgs
,
err
:=
generateJoinArgs
(
data
);
err
!=
nil
{
if
joinArgs
,
err
:=
generateJoinArgs
(
data
);
err
!=
nil
{
return
err
return
err
}
else
{
}
else
{
...
...
cmd/kubeadm/app/cmd/join.go
View file @
a00db0a3
...
@@ -25,6 +25,7 @@ import (
...
@@ -25,6 +25,7 @@ import (
"github.com/spf13/cobra"
"github.com/spf13/cobra"
kubeadmapi
"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm"
kubeadmapi
"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm"
kubeadmapiext
"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1alpha1"
kubenode
"k8s.io/kubernetes/cmd/kubeadm/app/node"
kubenode
"k8s.io/kubernetes/cmd/kubeadm/app/node"
"k8s.io/kubernetes/cmd/kubeadm/app/preflight"
"k8s.io/kubernetes/cmd/kubeadm/app/preflight"
kubeadmutil
"k8s.io/kubernetes/cmd/kubeadm/app/util"
kubeadmutil
"k8s.io/kubernetes/cmd/kubeadm/app/util"
...
@@ -45,25 +46,30 @@ var (
...
@@ -45,25 +46,30 @@ var (
// NewCmdJoin returns "kubeadm join" command.
// NewCmdJoin returns "kubeadm join" command.
func
NewCmdJoin
(
out
io
.
Writer
)
*
cobra
.
Command
{
func
NewCmdJoin
(
out
io
.
Writer
)
*
cobra
.
Command
{
cfg
:=
&
kubeadmapi
.
NodeConfiguration
{}
versioned
:=
&
kubeadmapiext
.
NodeConfiguration
{}
api
.
Scheme
.
Default
(
versioned
)
cfg
:=
kubeadmapi
.
NodeConfiguration
{}
api
.
Scheme
.
Convert
(
versioned
,
&
cfg
,
nil
)
var
skipPreFlight
bool
var
skipPreFlight
bool
var
cfgPath
string
var
cfgPath
string
cmd
:=
&
cobra
.
Command
{
cmd
:=
&
cobra
.
Command
{
Use
:
"join"
,
Use
:
"join"
,
Short
:
"Run this on any machine you wish to join an existing cluster."
,
Short
:
"Run this on any machine you wish to join an existing cluster."
,
Run
:
func
(
cmd
*
cobra
.
Command
,
args
[]
string
)
{
Run
:
func
(
cmd
*
cobra
.
Command
,
args
[]
string
)
{
j
,
err
:=
NewJoin
(
cfgPath
,
args
,
cfg
,
skipPreFlight
)
j
,
err
:=
NewJoin
(
cfgPath
,
args
,
&
cfg
,
skipPreFlight
)
kubeadmutil
.
CheckErr
(
err
)
kubeadmutil
.
CheckErr
(
err
)
kubeadmutil
.
CheckErr
(
j
.
Run
(
out
))
kubeadmutil
.
CheckErr
(
j
.
Run
(
out
))
},
},
}
}
cmd
.
PersistentFlags
()
.
StringVar
(
cmd
.
PersistentFlags
()
.
StringVar
(
&
cfg
.
Secrets
.
GivenToken
,
"token"
,
""
,
&
cfg
.
Secrets
.
GivenToken
,
"token"
,
cfg
.
Secrets
.
GivenToken
,
"(required) Shared secret used to secure bootstrap. Must match the output of 'kubeadm init'"
,
"(required) Shared secret used to secure bootstrap. Must match the output of 'kubeadm init'"
,
)
)
cmd
.
PersistentFlags
()
.
StringVar
(
&
cfgPath
,
"config"
,
""
,
"Path to kubeadm config file"
)
cmd
.
PersistentFlags
()
.
StringVar
(
&
cfgPath
,
"config"
,
cfgPath
,
"Path to kubeadm config file"
)
cmd
.
PersistentFlags
()
.
BoolVar
(
cmd
.
PersistentFlags
()
.
BoolVar
(
&
skipPreFlight
,
"skip-preflight-checks"
,
false
,
&
skipPreFlight
,
"skip-preflight-checks"
,
false
,
...
@@ -71,12 +77,12 @@ func NewCmdJoin(out io.Writer) *cobra.Command {
...
@@ -71,12 +77,12 @@ func NewCmdJoin(out io.Writer) *cobra.Command {
)
)
cmd
.
PersistentFlags
()
.
Int32Var
(
cmd
.
PersistentFlags
()
.
Int32Var
(
&
cfg
.
APIPort
,
"api-port"
,
kubeadmapi
.
DefaultAPIBind
Port
,
&
cfg
.
APIPort
,
"api-port"
,
cfg
.
API
Port
,
"(optional) API server port on the master"
,
"(optional) API server port on the master"
,
)
)
cmd
.
PersistentFlags
()
.
Int32Var
(
cmd
.
PersistentFlags
()
.
Int32Var
(
&
cfg
.
DiscoveryPort
,
"discovery-port"
,
kubeadmapi
.
DefaultDiscoveryBind
Port
,
&
cfg
.
DiscoveryPort
,
"discovery-port"
,
cfg
.
Discovery
Port
,
"(optional) Discovery port on the master"
,
"(optional) Discovery port on the master"
,
)
)
...
...
cmd/kubeadm/app/master/BUILD
View file @
a00db0a3
...
@@ -24,6 +24,7 @@ go_library(
...
@@ -24,6 +24,7 @@ go_library(
tags = ["automanaged"],
tags = ["automanaged"],
deps = [
deps = [
"//cmd/kubeadm/app/apis/kubeadm:go_default_library",
"//cmd/kubeadm/app/apis/kubeadm:go_default_library",
"//cmd/kubeadm/app/apis/kubeadm/v1alpha1:go_default_library",
"//cmd/kubeadm/app/images:go_default_library",
"//cmd/kubeadm/app/images:go_default_library",
"//cmd/kubeadm/app/util:go_default_library",
"//cmd/kubeadm/app/util:go_default_library",
"//pkg/api:go_default_library",
"//pkg/api:go_default_library",
...
...
cmd/kubeadm/app/master/discovery.go
View file @
a00db0a3
...
@@ -23,6 +23,7 @@ import (
...
@@ -23,6 +23,7 @@ import (
"time"
"time"
kubeadmapi
"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm"
kubeadmapi
"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm"
kubeadmapiext
"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1alpha1"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/apis/extensions"
clientset
"k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
clientset
"k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
...
@@ -79,7 +80,7 @@ func newKubeDiscoveryPodSpec(cfg *kubeadmapi.MasterConfiguration) api.PodSpec {
...
@@ -79,7 +80,7 @@ func newKubeDiscoveryPodSpec(cfg *kubeadmapi.MasterConfiguration) api.PodSpec {
Ports
:
[]
api
.
ContainerPort
{
Ports
:
[]
api
.
ContainerPort
{
// TODO when CNI issue (#31307) is resolved, we should consider adding
// TODO when CNI issue (#31307) is resolved, we should consider adding
// `HostIP: s.API.AdvertiseAddrs[0]`, if there is only one address`
// `HostIP: s.API.AdvertiseAddrs[0]`, if there is only one address`
{
Name
:
"http"
,
ContainerPort
:
kubeadmapi
.
DefaultDiscoveryBindPort
,
HostPort
:
cfg
.
Discovery
.
BindPort
},
{
Name
:
"http"
,
ContainerPort
:
kubeadmapi
ext
.
DefaultDiscoveryBindPort
,
HostPort
:
cfg
.
Discovery
.
BindPort
},
},
},
SecurityContext
:
&
api
.
SecurityContext
{
SecurityContext
:
&
api
.
SecurityContext
{
SELinuxOptions
:
&
api
.
SELinuxOptions
{
SELinuxOptions
:
&
api
.
SELinuxOptions
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment