본문 바로가기
  • 오늘처럼

소프트웨어 아키텍처74

Edge Computing 과 Kube Edge 클라우드 서비스 클라우드 컴퓨팅 혹은 클라우드 서비스는 스토리지, 어플리케이션, 네트워크 등의 컴퓨팅 리소스 및 자원에 대하여, 네트워크가 연결되어 있다면 언제 어디서든 편리하게 접속하여 이용할 수 있는 서비스를 의미한다. 효율성과 간편함 등의 장점으로 AWS나 GCP 같은 Public cloud와 vsphere 와 같은 Private cloud, 그 외에 이를 혼합하여 사용하는 hybrid cloud 와 같은 서비스는 편리함을 위한 중앙 집중적인 구조로 인하여 단점 또한 존재한다. 클라우드 서비스의 특성상 데이터 센터에 주 기능이 집중되므로, 센터는 대용량의 네트워크 리소스와 컴퓨팅 리소스를 필요로 한다. 이러한 중앙 집중형 처리 방식은 네트워크의 부하를 발생 시킬 수 있으며, 부하를 적절히 처리하지 .. 2020. 4. 10.
Docker registry 내부 구조 Docker registry 내부 구조 이번에는 private registry에 도커 이미지를 저장하였을 때 이미지가 저장되는 구조에 대해서 살펴본다. 먼저 간단한 registry를 구동하는데, registry 내부의 디렉토리 구조를 살펴보기 위하여 docker volume(-v) 옵션을 이용하여 registry 내부의 데이터 디렉터리 경로를 호스트 환경으로 노출시켜서 구동하도록 하자. $ docker run -d --name=registry -p 5000:5000 -v $PWD/registry:/var/lib/registry registry:latest docker registry의 기본적인 데이터 디렉토리 위치는 /var/lib/registry 이며 해당 경로는 registry config 파일을 수.. 2018. 6. 21.
Docker registry service 2 Docker registry config docker registry를 사용하면, private 한 환경에서 image registry를 구축할 수 있다. 이번에는 단순하게 registry를 사용하는 것 뿐만 아니라 registry 를 배포하고 설정을 변경하여 실제 개발/운영 환경에서 사용하기 위한 추가사항에 대하여 다루어본다. 1. Registry 를 항상 재시작 하도록 설정 Docker registry 컨테이너가 구동되는 호스트가 재부팅 되거나, 호스트 내에서 docker process 가 재시작 될 경우 자동으로 registry 컨테이너가 구동되도록 할 경우, container 구동(run)시에 '--restart=always' 옵션을 추가할 수 있다. public registry를 사용하지 않고,.. 2018. 6. 20.
Docker registry service Docker registry 컨테이너를 이용하여 어플리케이션의 실행환경을 가상화하기 위해서 도커 이미지가 필요한 만큼 이미지의 관리 또한 중요하다. 특히 개발/운영 환경에서 CI/CD 를 적용하여 이미지를 배포 하는 경우에는 이미지를 로컬 환경에 보관하는 것보다 저장가능한 다른 저장소에 보관하는 것이 좋다. 도커 측은 사용자가 컨테이너 생성을 위한 이미지를 저장하고 다른 사용자들과 공유할 수 있도록 컨테이너 이미지에 대한 저장소(이하 registry) 서비스를 제공하고 있다. 이를 통하여 사용자는 쉽게 이미지를 registry에 저장(push)하고 필요한 이미지를 받아올(pull) 수 있다. 이러한 registry 서비스는 공개유형에 따라 public, private 으로 구분 가능하다. public r.. 2018. 6. 17.
Docker image 1. 도커 이미지 구조 도커 이미지는 HostOS에서 컨테이너를 구동하기 위해 필요한 프로그램, 소스, 유틸리티 등의 모음이다. 이미지를 이용하여 컨테이너를 생성하게 되는데 이는 위의 그림처럼 자바에서의 '클래스', '인스턴스'의 개념으로 이해하면 쉽다. 흔히 자바를 공부할 때 붕어빵과 붕어빵틀의 예를 많이 보게된다. 자바 클래스를 이용하여 자바 인스턴스를 생성하는 것과 유사하게 도커 이미지를 이용하여 도커 컨테이너를 생성한다고 이해해도 좋다. 이러한 도커 이미지는 서로 다른 파일시스템으로 구성되어있다. '서로 다른 파일시스템' 이라는 말에 쉽게 이해가 되지 않을 수 있는데 이를 위해 구조적으로 나타내면 아래와 같다. 위의 경우 서로 다른 3개의 층으로 구성되어 있는 스택(층) 구조로 도커 이미지를 표현.. 2018. 6. 15.
Dockerfile Best Practice Dockerfile Best Practice 도커 컨테이너를 만들기 위해 사용되는 도커 이미지는 Dockerfile 을 통해서 생성할 수 있다. 물론 commit 명령어를 이용하여 동적으로 컨테이너로부터 이미지를 생성할 수도 있지만, 이미지의 효율적인 관리를 위해서 commit을 사용하는 것보다는 Dockerfile 을 이용하여 이미지를 생성하는 것이 좋다. 여기서는 Dockerfile을 작성할 때 유의해야 하는 사항들에 대하여 정리한다. (해당 내용은 https://docs.docker.com/develop/develop-images/dockerfile_best-practices/ 의 링크를 참조하였습니다.) 설치 구성의 최소화컨테이너는 효율적인 리소스 사용 및 배포의 자동화를 위해, 사용량을 고려하여.. 2018. 6. 14.