Set Status.DaemonEndpoints.KubeletEndpoint.Port to KUBELET_PORT
This commit is contained in:
@@ -32,6 +32,7 @@ type ACIProvider struct {
|
||||
memory string
|
||||
pods string
|
||||
internalIP string
|
||||
daemonEndpointPort int32
|
||||
}
|
||||
|
||||
// AuthConfig is the secret returned from an ImageRegistryCredential
|
||||
@@ -46,7 +47,7 @@ type AuthConfig struct {
|
||||
}
|
||||
|
||||
// NewACIProvider creates a new ACIProvider.
|
||||
func NewACIProvider(config string, rm *manager.ResourceManager, nodeName, operatingSystem string, internalIP string) (*ACIProvider, error) {
|
||||
func NewACIProvider(config string, rm *manager.ResourceManager, nodeName, operatingSystem string, internalIP string, daemonEndpointPort int32) (*ACIProvider, error) {
|
||||
var p ACIProvider
|
||||
var err error
|
||||
|
||||
@@ -91,6 +92,7 @@ func NewACIProvider(config string, rm *manager.ResourceManager, nodeName, operat
|
||||
p.operatingSystem = operatingSystem
|
||||
p.nodeName = nodeName
|
||||
p.internalIP = internalIP
|
||||
p.daemonEndpointPort = daemonEndpointPort
|
||||
|
||||
return &p, err
|
||||
}
|
||||
@@ -335,6 +337,16 @@ func (p *ACIProvider) NodeAddresses() []v1.NodeAddress {
|
||||
}
|
||||
}
|
||||
|
||||
// NodeDaemonEndpoints returns NodeDaemonEndpoints for the node status
|
||||
// within Kuberentes.
|
||||
func (p *ACIProvider) NodeDaemonEndpoints() *v1.NodeDaemonEndpoints {
|
||||
return &v1.NodeDaemonEndpoints{
|
||||
KubeletEndpoint: v1.DaemonEndpoint{
|
||||
Port: p.daemonEndpointPort,
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
// OperatingSystem returns the operating system that was provided by the config.
|
||||
func (p *ACIProvider) OperatingSystem() string {
|
||||
return p.operatingSystem
|
||||
|
||||
@@ -235,6 +235,12 @@ func (p *HyperProvider) NodeAddresses() []v1.NodeAddress {
|
||||
return nil
|
||||
}
|
||||
|
||||
// NodeDaemonEndpoints returns NodeDaemonEndpoints for the node status
|
||||
// within Kuberentes.
|
||||
func (p *HyperProvider) NodeDaemonEndpoints() *v1.NodeDaemonEndpoints {
|
||||
return nil
|
||||
}
|
||||
|
||||
// OperatingSystem returns the operating system for this provider.
|
||||
// This is a noop to default to Linux for now.
|
||||
func (p *HyperProvider) OperatingSystem() string {
|
||||
|
||||
@@ -44,6 +44,10 @@ type Provider interface {
|
||||
// within Kuberentes.
|
||||
NodeAddresses() []v1.NodeAddress
|
||||
|
||||
// NodeDaemonEndpoints returns NodeDaemonEndpoints for the node status
|
||||
// within Kuberentes.
|
||||
NodeDaemonEndpoints() *v1.NodeDaemonEndpoints
|
||||
|
||||
// OperatingSystem returns the operating system the provider is for.
|
||||
OperatingSystem() string
|
||||
}
|
||||
|
||||
@@ -1,11 +1,12 @@
|
||||
package vkubelet
|
||||
|
||||
import (
|
||||
"strings"
|
||||
"fmt"
|
||||
"log"
|
||||
"os"
|
||||
"os/signal"
|
||||
"strconv"
|
||||
"strings"
|
||||
"syscall"
|
||||
"time"
|
||||
|
||||
@@ -65,7 +66,13 @@ func New(nodeName, operatingSystem, namespace, kubeConfig, taint, provider, prov
|
||||
switch provider {
|
||||
case "azure":
|
||||
internalIP := os.Getenv("VKUBELET_POD_IP")
|
||||
p, err = azure.NewACIProvider(providerConfig, rm, nodeName, operatingSystem, internalIP)
|
||||
daemonEndpointPortEnv := os.Getenv("KUBELET_PORT")
|
||||
i64value, err := strconv.ParseInt(daemonEndpointPortEnv, 10, 32)
|
||||
daemonEndpointPort := int32(i64value)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
p, err = azure.NewACIProvider(providerConfig, rm, nodeName, operatingSystem, internalIP, daemonEndpointPort)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -140,6 +147,7 @@ func (s *Server) registerNode() error {
|
||||
Allocatable: s.provider.Capacity(),
|
||||
Conditions: s.provider.NodeConditions(),
|
||||
Addresses: s.provider.NodeAddresses(),
|
||||
DaemonEndpoints: *s.provider.NodeDaemonEndpoints(),
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user