일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 명령어
- OpenStack
- PAT
- 네트워크
- Docker Swarm
- PaaS
- nodejs
- 쿠버네티스
- 도커
- gns3
- 이론
- 실습
- Javascript
- express
- RAPA
- kubernetes
- network
- MongoDB
- IaaS
- git
- docker
- node.js
- Docker-compose
- worker
- RAID
- mysql
- 클라우드
- dockerfile
- 개념
- 용어정리
- Today
- Total
목록전체 글 (173)
융융이'Blog
Docker의 Cilent-Server 아키텍처 도커를 이용하여 환경을 구축을 하다보면 위 그림과 비슷한 형태의 아키텍처를 따른다. Docker 시스템 유닛은 크게 3개로 분리되어, Client, Host(Daemon), Registry를 이룬다. 대부분의 현대 CI 도구들(travis, circle, gocd, jenkins)등이 agent를 통해 docker관련 Task를 수행을 하기 때문에 docker daemon은 호스트머신에서 동작하면서 컨테이너로 동작하는 agent들이 docker-client역할을 하는 경우가 많다. 그래서 데브옵스 개발자들은 쉽게 daemon과 client의 분리를 고려하며 docker container에서 agent가 호스트 머신에 위치한 docker daemon에게 어떻..
이 둘을 비교한다는 것은 Dokcer Swarm 과 Kubernetes를 비교하는 것을 말한다. 도커 = 이미지 생성, 관리, 탄력적인 확장성, 격리, 이식성 쿠버네티스 = 오케스트레이션 중점, 복잡한 앱, 확장성과 복구성이 중요한 앱 도커란? 도커는 '컨테이너 기반의 오픈소스 가상화 플랫폼' 이다. 컨테이너는 애플리케이션 & OS앱을 구동하는 환경을 격리한 공간을 뜻한다. 자원을 필요한 만큼 격리하여 컨테이너에 할당(Host 운영체제와 자원 공유) 효율적 배포가 빠름 쿠버네티스란? 쿠버네티스는 '컨테이너 오케스트레이션 툴' 이다. 다른 컨테이너 오케스트레이션 툴로 'Docker Swarm', 'ECS', 'Nomad' 등이 있다. ..
여러 서버 중 일부에 장애가 생겨도 제 기능을 유지하도록 하는 합의 알고리즘이다. 합의 알고리즘(Conensus Algorithm) 합의 알고리즘이란 다수의 참여자들이 통일된 의사결정을 하기 위해 사용하는 알고리즘이다. 서버에서 명령을 실행하기 위해 다른 서버의 합의를 요청한다. 각 서버에 문제가 없는 경우 동일한 명령을 처리하고, 동일한 결과를 생성하고, 동일한 상태에 도달한다. 장애 허용 분산 시스템(fault-tolerance distributed system) 시스템 중 일부에 오류가 발생해도 정상적으로 작동할 수 있도록 하는 시스템이다. 마치 4발 자전거에서 바퀴 하나가 고장나도 굴러가는 것처럼 말이다. 뗏목 알고리즘의 진행 상태 시스템과 로그 각 서버에 상태 시스템과 로그가 있다. 여기서 상태..
실제 서버를 운용하는 데 있어서 많은 컨테이너를 관리를 해야한다. 특히, 트래픽 처리할 수 있는 실용적인 시스템을 구축하려면 보다 많은 컨테이너가 각기 다른 호스트에 배치되어 이를 처리 하도록 해야 할 것이다. 이를 위한 첫 번째 대안으로 바로 도커 수웜(Docker Swarm)이다. 도커스웜은 여러 도커 호스트를 클러스터로 묶어주는 컨테이너 오케스트레이션 도구의 한 종류이다. ### 실습 준비하기 1대의 manager 노드 3대의 worker 노드(worker01~03) manager : 211.183.3.100 woker1 : 211.183.3.101 woker2 : 211.183.3.102 woker3 : 211.183.3.103 manager 노드에서 토큰 발행 docker swarm init -..
도커 스웜은 도커 컨테이너를 위한 클러스터링, 스케줄링 툴이다. 스웜을 이용하면 여러 개의 서버와 컨테이너 관리를 쉽게 할 수 있다. 도커 스웜 노드 도커 스웜에는 manager 노드와 worker 노드가 있다. 매니저 노드(manager node) 매니저 노드는 아래의 업무를 통해 도커 클러스터를 관리한다. 클러스터의 상태를 유지 : 뗏목 알고리즘 사용 스케줄링 서비스 : 작업자 노드(worker)에게 컨테이너를 배포한다. 특정 노드에게만 배포하거나, 모든 노드에 하나씩 배포할 수도 있다. 스웜 모드 제공 : docker swarm init 작업자 노드(worker node) 도커에서 일반적으로 컨테이너를 실행하는 노드를 작업자 노드라고 한다. drain : Task(컨테이너를 배포하고 관리)하는 권한..
여러 컨테이너 생성(up) 작성한 docker-compose.yml 파일을 바탕으로 여러 개의 컨테이너를 생성하여 실행할 때는 docker-compose up 명령을 사용한다. ===> docker-compose up [옵션] [서비스명] ex) 한번에 10개의 컨테이너를 생성한다.(dokcer-compose.yml에서 port: 8001-8010으로 범위 설정이 가능하다.) docker-compose up --scale server_a=10여러 컨테이너 강제 정지/삭제(kill/rm) docker-compose kill -s SIGINT 여러 리소스의 일괄 삭제(down) 실행중인 컨테이너를 중지후 삭제, docker 이미지, 네트워크, 데이터볼륨을 일관적으로 삭제할 수 있다. docker-compos..
Docker-compose는 기존 Dockerfile에서의 배포 과정을 보다 편하게 설정하기 위해서 등장했다. Dockerfile은 이미지 커스텀마이징에 중점을 뒀다면 Docker-compose는 배포환경 커스텀마이징에 중점을 두었다고 볼 수 있다. 물론 Docker-compose를 통해서 기존 이미지를 커스텀이 가능하긴 하다.(CMD, RUN... 등 설정 가능) docker-compose 의 설치 sudo curl -L "https://github.com/docker/compose/releases/download/1.26.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/b..
실습 내용 Dockerfile을 활용하여 이미지를 생성하고 그 이미지를 docker-compose 활용하여 container을 만든다. xpressengine 서버를 구축한다.(php, apache2) DB 서버를 구축한다. (mariadb) 둘이 연동을 하고 index.html에서 redirect을 통해서 웹서버에 접속을 한다. index.html 파일의 내용은 /var/www/html/index.html 로 접속시 현재 디렉토리 아래의 xe-core/index.php 파일이 열리도록 redirect 하기 위한 내용을 추가 Dockerfile ubuntu 설치, apache2, php 설치, xe-core를 다운로드 컨테이너 배포시 apache2 가 실행되어야 한다. FROM ubuntu:18.04 E..