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
a3fb9b44
Unverified
Commit
a3fb9b44
authored
Feb 05, 2018
by
test
Committed by
Andrew Rynhard
Feb 23, 2018
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
kubeadm: use localhost for API server liveness probe
parent
b4fb4c7a
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
30 additions
and
1 deletion
+30
-1
BUILD
cmd/kubeadm/app/util/staticpod/BUILD
+2
-0
utils.go
cmd/kubeadm/app/util/staticpod/utils.go
+11
-1
utils_test.go
cmd/kubeadm/app/util/staticpod/utils_test.go
+17
-0
No files found.
cmd/kubeadm/app/util/staticpod/BUILD
View file @
a3fb9b44
...
@@ -13,6 +13,7 @@ go_test(
...
@@ -13,6 +13,7 @@ go_test(
deps = [
deps = [
"//cmd/kubeadm/app/apis/kubeadm:go_default_library",
"//cmd/kubeadm/app/apis/kubeadm:go_default_library",
"//cmd/kubeadm/app/constants:go_default_library",
"//cmd/kubeadm/app/constants:go_default_library",
"//cmd/kubeadm/app/features:go_default_library",
"//vendor/k8s.io/api/core/v1:go_default_library",
"//vendor/k8s.io/api/core/v1:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
...
@@ -26,6 +27,7 @@ go_library(
...
@@ -26,6 +27,7 @@ go_library(
deps = [
deps = [
"//cmd/kubeadm/app/apis/kubeadm:go_default_library",
"//cmd/kubeadm/app/apis/kubeadm:go_default_library",
"//cmd/kubeadm/app/constants:go_default_library",
"//cmd/kubeadm/app/constants:go_default_library",
"//cmd/kubeadm/app/features:go_default_library",
"//cmd/kubeadm/app/util:go_default_library",
"//cmd/kubeadm/app/util:go_default_library",
"//pkg/kubelet/types:go_default_library",
"//pkg/kubelet/types:go_default_library",
"//vendor/k8s.io/api/core/v1:go_default_library",
"//vendor/k8s.io/api/core/v1:go_default_library",
...
...
cmd/kubeadm/app/util/staticpod/utils.go
View file @
a3fb9b44
...
@@ -29,6 +29,7 @@ import (
...
@@ -29,6 +29,7 @@ import (
"k8s.io/apimachinery/pkg/api/resource"
"k8s.io/apimachinery/pkg/api/resource"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/util/intstr"
"k8s.io/apimachinery/pkg/util/intstr"
"k8s.io/kubernetes/cmd/kubeadm/app/features"
kubeadmapi
"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm"
kubeadmapi
"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm"
kubeadmconstants
"k8s.io/kubernetes/cmd/kubeadm/app/constants"
kubeadmconstants
"k8s.io/kubernetes/cmd/kubeadm/app/constants"
...
@@ -184,7 +185,16 @@ func WriteStaticPodToDisk(componentName, manifestDir string, pod v1.Pod) error {
...
@@ -184,7 +185,16 @@ func WriteStaticPodToDisk(componentName, manifestDir string, pod v1.Pod) error {
func
GetProbeAddress
(
cfg
*
kubeadmapi
.
MasterConfiguration
,
componentName
string
)
string
{
func
GetProbeAddress
(
cfg
*
kubeadmapi
.
MasterConfiguration
,
componentName
string
)
string
{
switch
{
switch
{
case
componentName
==
kubeadmconstants
.
KubeAPIServer
:
case
componentName
==
kubeadmconstants
.
KubeAPIServer
:
if
cfg
.
API
.
AdvertiseAddress
!=
""
{
// In the case of a self-hosted deployment, the initial host on which kubeadm --init is run,
// will generate a DaemonSet with a nodeSelector such that all nodes with the label
// node-role.kubernetes.io/master='' will have the API server deployed to it. Since the init
// is run only once on an initial host, the API advertise address will be invalid for any
// future hosts that do not have the same address. Furthermore, since liveness and readiness
// probes do not support the Downward API we cannot dynamically set the advertise address to
// the node's IP. The only option then is to use localhost.
if
features
.
Enabled
(
cfg
.
FeatureGates
,
features
.
SelfHosting
)
{
return
"127.0.0.1"
}
else
if
cfg
.
API
.
AdvertiseAddress
!=
""
{
return
cfg
.
API
.
AdvertiseAddress
return
cfg
.
API
.
AdvertiseAddress
}
}
case
componentName
==
kubeadmconstants
.
KubeControllerManager
:
case
componentName
==
kubeadmconstants
.
KubeControllerManager
:
...
...
cmd/kubeadm/app/util/staticpod/utils_test.go
View file @
a3fb9b44
...
@@ -24,6 +24,7 @@ import (
...
@@ -24,6 +24,7 @@ import (
"k8s.io/api/core/v1"
"k8s.io/api/core/v1"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/util/intstr"
"k8s.io/apimachinery/pkg/util/intstr"
"k8s.io/kubernetes/cmd/kubeadm/app/features"
kubeadmapi
"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm"
kubeadmapi
"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm"
kubeadmconstants
"k8s.io/kubernetes/cmd/kubeadm/app/constants"
kubeadmconstants
"k8s.io/kubernetes/cmd/kubeadm/app/constants"
...
@@ -62,6 +63,22 @@ func TestComponentProbe(t *testing.T) {
...
@@ -62,6 +63,22 @@ func TestComponentProbe(t *testing.T) {
expected
:
"127.0.0.1"
,
expected
:
"127.0.0.1"
,
},
},
{
{
name
:
"default apiserver advertise address with http"
,
cfg
:
&
kubeadmapi
.
MasterConfiguration
{
API
:
kubeadmapi
.
API
{
AdvertiseAddress
:
"1.2.3.4"
,
},
FeatureGates
:
map
[
string
]
bool
{
features
.
SelfHosting
:
true
,
},
},
component
:
kubeadmconstants
.
KubeAPIServer
,
port
:
1
,
path
:
"foo"
,
scheme
:
v1
.
URISchemeHTTP
,
expected
:
"127.0.0.1"
,
},
{
name
:
"default apiserver advertise address with https"
,
name
:
"default apiserver advertise address with https"
,
cfg
:
&
kubeadmapi
.
MasterConfiguration
{
cfg
:
&
kubeadmapi
.
MasterConfiguration
{
API
:
kubeadmapi
.
API
{
API
:
kubeadmapi
.
API
{
...
...
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