From e0eca4049635c3ee1b8661a1e4b2a665f12e036e Mon Sep 17 00:00:00 2001 From: seoyhaein Date: Sat, 14 May 2022 20:15:29 +0900 Subject: [PATCH] =?UTF-8?q?=EA=B8=B0=EB=B3=B8=20=EC=84=A4=EB=AA=85=20?= =?UTF-8?q?=EC=A7=84=ED=96=89=EC=A4=91.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CONTAINER.md | 38 ++++++++++++++++++++++++++++++++++++++ README.md | 12 ++++++++++-- 2 files changed, 48 insertions(+), 2 deletions(-) create mode 100644 CONTAINER.md diff --git a/CONTAINER.md b/CONTAINER.md new file mode 100644 index 0000000..1164d66 --- /dev/null +++ b/CONTAINER.md @@ -0,0 +1,38 @@ +### podman 의 pod 에서 namespaces, ipc, net, pid, user, 그리고 uts 가 shared / isolated 된다는 의미? + +[참고 - podman pod create 옵션](https://github.com/containers/podman/blob/main/docs/source/markdown/podman-pod-create.1.md) + +- --share 옵션 에 대한 설명 + +``` +####--share=namespace A comma delimited list of kernel namespaces to share. +If none or "" is specified, no namespaces will be shared. The namespaces to choose from are ipc, net, pid, user, uts. + +--Option to specify the namespace to share in the pod. +--Specify multiple comma-separated lists. +--None or nothing is shared if an empty set is specified. +--Can be specified from 5 namespaces: ipc, net, ipd, user, uts. + +``` + +- 네임스페이스에 대해서 +https://www.44bits.io/ko/keyword/linux-namespace + +- network namespace [참고](https://url.kr/h2bm1f) +- ip netns 네트워크 네임스페이스 확인하기, 처음에 해당 명령어를 입력했을때는 아무것도 나오지 않을 것이다. +- First, check the network namespace that exists on the OS with the following command. Nothing is output. +- It means that the network namespace has not been created yet. + + +* 두가지를 생각해보자, 메모리를 공유하는 방안과 volume 을 공유하는 방안을 생각해보자. + + +Using gRPC for (local) inter-process communication +-- https://docs.microsoft.com/ko-kr/aspnet/core/grpc/interprocess?view=aspnetcore-6.0 + +#### 일단 이부분은 추후에 살펴보는데 podman binding 콛에서 소켓 받는 부분을 참고해도 도움될듯하다. podman binding 이 경우는 소켓연결한후 restful 방식으로 진행하는데 +#### 여기서 소켓 받는 부분을 참고 하고 그 후 grpc 로 접근하는 방법을 생각해봐도 될듯하다. 단순히 아이디어 차원에서 가능할지 모르겠다. + +https://www.mpi-hd.mpg.de/personalhomes/fwerner/research/2021/09/grpc-for-ipc/ + + diff --git a/README.md b/README.md index b890226..7601e57 100644 --- a/README.md +++ b/README.md @@ -586,5 +586,13 @@ a process: /dev/shm 일종의 공유 메모리 https://blog.naver.com/ncloud24/221387977381 https://freewin.tistory.com/234 -읽어보기 -https://linuxtut.com/en/61f1291f6ee804531328/ \ No newline at end of file +##### 5/15 일 할일 pod 로 연결된 container 들 에서 volume mount 하고 +- 그런데 네임스페이스에 마운트도 있다. 이경우 마운트도 share 되는지 확인해보자. +- https://docs.podman.io/en/latest/markdown/podman-pod-create.1.html 여기서 mount 관련해서 찾아보자. +- https://kubernetes.io/ko/docs/tasks/access-application-cluster/communicate-containers-same-pod-shared-volume/ + +아래 문서 확인. +반드시 내일 전체 읽어보기 +https://docs.podman.io/en/latest/markdown/podman-pod-create.1.html + +To share a volume, use the --volumes-from option when running the target container. You can share volumes even if the source container is not running. By default, Podman mounts the volumes in the same mode (read-write or read-only) as it is mounted in the source container. \ No newline at end of file