이전 게시글에서는 Mount, pid, namespace, ipc, cgroup를 사용한 격리 방법에 대해 작성하였습니다.이번에는 네트워크 네임스페이스를 통해 격리하고 컨테이너 간의 통신 방법에 대해 작성하겠습니다. 네트워크 네임스페이스란?[BLOG]네트워크 네임스페이스는 논리적인 네트워크 네임스페이스를 만들고 라우팅, 가상IP 등 네트워크 구성요소를 조합하여 논리적으로 네트워크를 격리시킵니다. 네트워크를 논리적으로 격리시킴으로써 호스트 네트워크에 직접적인 영향을 최소화합니다. RED BLUE 네트워크 네임스페이스 간 통신 Step 1) veth (가상 이더넷) 생성# veth 생성$ ip link add veth0 type veth peer name veth1# 생성한 veth를 확인합니다$ ip ..
Linux
Docker?- 도커(Docker)는 가상실행 환경을 제공해주는 오픈소스 플랫폼입니다. 도커에서는 이 가상실행 환경을 '컨테이너(Container)'라고 합니다. - 도커는 컨테이너라는 단위로 패키징되고, 가상화보다 가볍고 효율적이기도 합니다.- 또 MSA 환경에서 빼놓을 수 없는 개념입니다. Container?- Container는 어플리케이션과 그 실행에 필요한 의존성을 포함하는 경량화된 독립 실행 환경입니다.- 호스트 OS와 커널을 공유하면서도 프로세스, 파일 시스템, 네트워크를 다른 컨테이너와 격리하여 실행합니다.- 일관된 환경을 제공하여 개발, 테스트, 배포 과정에서 개발자들의 단골 멘트인 "내 컴퓨터에서는 작동했는데" 문제를 해결하고 이식성을 높입니다. Docker와 Container컨테이너..
Symbolic Link는 Linux 서버 운영 시 유용하게 사용됩니다.여러 어플리케이션에서 로컬 패스처럼 사용할 수도 있고, 사용 범위가 넓습니다. link가 더 이상 필요하지 않아 삭제해야할 때 까딱 잘못하면 원본 데이터가 지워지는 불상사가 생길 수 있습니다.안전하게 symbolic link를 제거하는 방법을 설명합니다. Case1. NAS가 /data/test에 마운트되어 있고, /data를 삭제해야하는 경우NAS 마운트 여부 확인NAS 마운트 해제mount를 해제하지 않고, /data를 지우는 경우 NAS 내부 데이터도 모두 삭제되므로 반드시 umount Case2. NAS는 별도 경로에 mount 되어있으나, 삭제 대상에 symbolic link가 걸려있는 경우NAS가 연결된 링크 포인트 확인u..
최근 미팅에 참석하니, 환경상 인프라 3대 이상 사용은 어렵고,인스턴스 이중화가 아니더라도 Tomcat이라도 무중단이 되었으면 좋겠다고 하였다.(마치 blue green 처럼...) 생각한 구성은 이랬다. Instance : WEB-WAS(1ea), DB(1ea)SW : nginx, tomcat, redis, mysql Tomcat 1,2 을 두고 톰캣에 auto deploy 설정을 해놓고,배포가 필요할 때 꺼져있는 톰캣에 war 파일을 업로드해주면 가능할 것 같았다.Session 저장은 redis에 할 것이기 때문에 크게 신경쓰지 않았다. Tomcat 2대에 auto deploy 설정해준다. nginx.conf 설정을 해준다. 실제 배포를 해보니 넘어가는 순간 WAS 커넥션이 유실되어 5..