@@ -16,6 +16,7 @@ package rpc
1616import (
1717 "context"
1818 "net"
19+ "os"
1920
2021 "github.com/aws/aws-network-policy-agent/controllers"
2122 "github.com/aws/aws-network-policy-agent/pkg/logger"
4142)
4243
4344const (
44- npgRPCaddress = "127.0.0.1:50052 "
45+ npaSocketPath = "/var/run/aws-node/npa.sock "
4546 grpcHealthServiceName = "grpc.health.v1.np-agent"
4647)
4748
@@ -160,11 +161,17 @@ func (s *server) DeletePodNp(ctx context.Context, in *rpc.DeleteNpRequest) (*rpc
160161
161162// RunRPCHandler handles request from gRPC
162163func RunRPCHandler (policyReconciler * controllers.PolicyEndpointsReconciler ) error {
163- log ().Infof ("Serving RPC Handler on Address: %s" , npgRPCaddress )
164- listener , err := net .Listen ("tcp" , npgRPCaddress )
164+ log ().Infof ("Serving RPC Handler on Unix socket: %s" , npaSocketPath )
165+
166+ if _ , err := os .Stat (npaSocketPath ); err == nil {
167+ log ().Infof ("Removing stale socket file: %s" , npaSocketPath )
168+ os .Remove (npaSocketPath )
169+ }
170+
171+ listener , err := net .Listen ("unix" , npaSocketPath )
165172 if err != nil {
166- log ().Errorf ("Failed to listen gRPC port : %v" , err )
167- return errors .Wrap (err , "network policy agent: failed to listen to gRPC port " )
173+ log ().Errorf ("Failed to listen on unix socket : %v" , err )
174+ return errors .Wrap (err , "network policy agent: failed to listen on unix socket " )
168175 }
169176 grpcServer := grpc .NewServer ()
170177 rpc .RegisterNPBackendServer (grpcServer , & server {policyReconciler : policyReconciler })
0 commit comments