This is an automated email from the ASF dual-hosted git repository.

xianjin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-uniffle.git


The following commit(s) were added to refs/heads/master by this push:
     new 7ccf298f [operator] add RSS_IP for coordinator (#523)
7ccf298f is described below

commit 7ccf298f15030825ea8706b4d54da949af44d549
Author: advancedxy <[email protected]>
AuthorDate: Tue Jan 31 15:09:59 2023 +0800

    [operator] add RSS_IP for coordinator (#523)
    
    ### What changes were proposed in this pull request?
    `NODE_NAME` and `RSS_IP` env variables are set in coordinator's container.
    
    ### Why are the changes needed?
    In a complex K8S env, there might be multiple interfaces/ips in the 
container env. Uniffle cannot detect which
    ip should be used automatically. It's better to specify the correct 
container ip here.
    Also we are passing RSS_IP to shuffle server, coordinator and shuffle 
server should align this behavior.
    
    This PR fixes #522
    
    ### Does this PR introduce _any_ user-facing change?
    NO
    
    ### How was this patch tested?
    Manually verify
---
 .../pkg/controller/sync/coordinator/coordinator.go     | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git 
a/deploy/kubernetes/operator/pkg/controller/sync/coordinator/coordinator.go 
b/deploy/kubernetes/operator/pkg/controller/sync/coordinator/coordinator.go
index d31aba65..5ce3a562 100644
--- a/deploy/kubernetes/operator/pkg/controller/sync/coordinator/coordinator.go
+++ b/deploy/kubernetes/operator/pkg/controller/sync/coordinator/coordinator.go
@@ -287,6 +287,24 @@ func generateMainContainerENV(rss 
*unifflev1alpha1.RemoteShuffleService) []corev
                        Name:  controllerconstants.ServiceNameEnv,
                        Value: controllerconstants.CoordinatorServiceName,
                },
+               {
+                       Name: controllerconstants.NodeNameEnv,
+                       ValueFrom: &corev1.EnvVarSource{
+                               FieldRef: &corev1.ObjectFieldSelector{
+                                       APIVersion: "v1",
+                                       FieldPath:  "spec.nodeName",
+                               },
+                       },
+               },
+               {
+                       Name: controllerconstants.RssIPEnv,
+                       ValueFrom: &corev1.EnvVarSource{
+                               FieldRef: &corev1.ObjectFieldSelector{
+                                       APIVersion: "v1",
+                                       FieldPath:  "status.podIP",
+                               },
+                       },
+               },
        }
        for _, e := range rss.Spec.Coordinator.Env {
                if !defaultENVs.Has(e.Name) {

Reply via email to