summaryrefslogtreecommitdiff
path: root/cloud/pkg/edgecontroller/controller/upstream.go
diff options
context:
space:
mode:
Diffstat (limited to 'cloud/pkg/edgecontroller/controller/upstream.go')
-rw-r--r--cloud/pkg/edgecontroller/controller/upstream.go5
1 files changed, 5 insertions, 0 deletions
diff --git a/cloud/pkg/edgecontroller/controller/upstream.go b/cloud/pkg/edgecontroller/controller/upstream.go
index edeec1c2b..93e56a64f 100644
--- a/cloud/pkg/edgecontroller/controller/upstream.go
+++ b/cloud/pkg/edgecontroller/controller/upstream.go
@@ -88,6 +88,7 @@ type UpstreamController struct {
kubeClient kubernetes.Interface
messageLayer messagelayer.MessageLayer
crdClient crdClientset.Interface
+ TunnelPort int
// message channel
nodeStatusChan chan model.Message
@@ -402,6 +403,7 @@ func (uc *UpstreamController) updatePodStatus() {
// createNode create new edge node to kubernetes
func (uc *UpstreamController) createNode(name string, node *v1.Node) (*v1.Node, error) {
node.Name = name
+ node.Status.DaemonEndpoints.KubeletEndpoint.Port = int32(uc.TunnelPort)
return uc.kubeClient.CoreV1().Nodes().Create(context.Background(), node, metaV1.CreateOptions{})
}
@@ -524,6 +526,9 @@ func (uc *UpstreamController) updateNodeStatus() {
nodeStatusRequest.Status.VolumesAttached = getNode.Status.VolumesAttached
getNode.Status = nodeStatusRequest.Status
+
+ getNode.Status.DaemonEndpoints.KubeletEndpoint.Port = int32(uc.TunnelPort)
+
node, err := uc.kubeClient.CoreV1().Nodes().UpdateStatus(context.Background(), getNode, metaV1.UpdateOptions{})
if err != nil {
klog.Warningf("message: %s process failure, update node failed with error: %s, namespace: %s, name: %s", msg.GetID(), err, getNode.Namespace, getNode.Name)