Skip to content
This repository has been archived by the owner on Oct 29, 2021. It is now read-only.

nsmd: single gRPC server (and UNIX socket) for all clients #1953

Open
alex-yust opened this issue Dec 3, 2019 · 5 comments
Open

nsmd: single gRPC server (and UNIX socket) for all clients #1953

alex-yust opened this issue Dec 3, 2019 · 5 comments
Assignees
Labels
pinned Pin for stale-pod

Comments

@alex-yust
Copy link
Collaborator

alex-yust commented Dec 3, 2019

Overview

Currently, for every client a new gRPC server is created, which might be expensive.

The idea is to serve all requests with a single server using identity from request's SPIRE sertificate to distinguish the clients at nsmd.

@alex-yust alex-yust changed the title nsmd: single gRPC server (and UNIX socket) for all requests nsmd: single gRPC server (and UNIX socket) for all clients Dec 3, 2019
@denis-tingaikin
Copy link
Member

SPIRE sertificate to distinguish the clients at nsmd.

As we discussed with @lobkovilya for identity client we need to use changes from #1733

alex-yust added a commit to alex-yust/networkservicemesh that referenced this issue Dec 9, 2019
Signed-off-by: Alexander Yustus <alexander.yustus@xored.com>
alex-yust added a commit to alex-yust/networkservicemesh that referenced this issue Dec 9, 2019
Signed-off-by: Alexander Yustus <alexander.yustus@xored.com>
alex-yust added a commit to alex-yust/networkservicemesh that referenced this issue Dec 10, 2019
Signed-off-by: Alexander Yustus <alexander.yustus@xored.com>
alex-yust added a commit to alex-yust/networkservicemesh that referenced this issue Dec 12, 2019
Signed-off-by: Alexander Yustus <alexander.yustus@xored.com>
alex-yust added a commit to alex-yust/networkservicemesh that referenced this issue Dec 13, 2019
Signed-off-by: Alexander Yustus <alexander.yustus@xored.com>
alex-yust added a commit to alex-yust/networkservicemesh that referenced this issue Dec 16, 2019
Signed-off-by: Alexander Yustus <alexander.yustus@xored.com>
@alex-yust
Copy link
Collaborator Author

alex-yust commented Dec 17, 2019

In order to provide all clients with (shared) server socket it is necessary to

  1. add a folder with server socket that will be common for all clients
  2. mount the new folder into client pods (in addition to currently mounted individual workspace folder)

Since it is a somewhat architecture related feature, @edwarnicke could you please review/approve this modification?

The implemented solution in PR #1968 is that we create server socket for every client in its individual workspace but serve them all with one instance of NetworkServiceDiscovery, MonitorServer, NetworkServiceRegistry and NetworkServiceServer services.

@lobkovilya
Copy link
Collaborator

lobkovilya commented Dec 17, 2019

Another possible solution: we could avoid mounting networkservicemesh.io.sock using nsmdp. NSMgr claims where socket located in the host path. NSC/NSE mount that server socket wherever they want in container path. Mounting volumes to NSC/NSE using nsmdp looks excessive for networkservicemesh.io.sock.

Workspace will be mounted only to NSE and to NSC with memif support.

alex-yust added a commit to alex-yust/networkservicemesh that referenced this issue Dec 20, 2019
Signed-off-by: Alexander Yustus <alexander.yustus@xored.com>
alex-yust added a commit to alex-yust/networkservicemesh that referenced this issue Jan 8, 2020
Signed-off-by: Alexander Yustus <alexander.yustus@xored.com>
@stale
Copy link

stale bot commented Jan 16, 2020

This issue has been automatically marked as stale because it has not had activity in 30 days. It will be closed in 7 days if no further activity occurs. Thank you for your contributions.

@stale stale bot added the wontfix This will not be worked on label Jan 16, 2020
@nickolaev nickolaev removed the wontfix This will not be worked on label Jan 21, 2020
alex-yust added a commit to alex-yust/networkservicemesh that referenced this issue Jan 31, 2020
Signed-off-by: Alexander Yustus <alexander.yustus@xored.com>
alex-yust added a commit to alex-yust/networkservicemesh that referenced this issue Feb 3, 2020
Signed-off-by: Alexander Yustus <alexander.yustus@xored.com>
alex-yust added a commit to alex-yust/networkservicemesh that referenced this issue Feb 7, 2020
Signed-off-by: Alexander Yustus <alexander.yustus@xored.com>
alex-yust added a commit to alex-yust/networkservicemesh that referenced this issue Feb 11, 2020
Signed-off-by: Alexander Yustus <alexander.yustus@xored.com>
alex-yust added a commit to alex-yust/networkservicemesh that referenced this issue Feb 17, 2020
Signed-off-by: Alexander Yustus <alexander.yustus@xored.com>
@stale
Copy link

stale bot commented Feb 20, 2020

This issue has been automatically marked as stale because it has not had activity in 30 days. It will be closed in 7 days if no further activity occurs. Thank you for your contributions.

@stale stale bot added the wontfix This will not be worked on label Feb 20, 2020
@alex-yust alex-yust added the pinned Pin for stale-pod label Feb 21, 2020
@stale stale bot removed the wontfix This will not be worked on label Feb 21, 2020
alex-yust added a commit to alex-yust/networkservicemesh that referenced this issue Feb 21, 2020
Signed-off-by: Alexander Yustus <alexander.yustus@xored.com>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
pinned Pin for stale-pod
Projects
None yet
Development

No branches or pull requests

4 participants