본문 바로가기

Devops

(23)
[Kubernetes] 네임스페이스(Namespace) 살펴보기 네임스페이스 동일한 물리 클러스트를 기반으로 하는 논리적으로 구분된 가상 클러스터를 네임스페이스라고 한다. 여러개의 팀이나 많은 사용자가 있는 경우, 클러스터안에서 여러개의 어플리케이션을 실행해야 하는 경우 사용 root@master:~# kubectl get namespace NAME STATUS AGE default Active 10d kube-node-lease Active 10d kube-public Active 10d kube-system Active 10d root@master:~# kubectl get deploy No resources found in default namespace. root@master:~# kubectl get deploy -n kube-system NAME READY..
[Kubernetes] 쿠버네티스 Architecture와 기본 동작 Kubernetes Clustering Architecture 1. 로컬에서 이미지를 생성해서 Push를 수행한다. 2. Push된 이미지가 Docker Hub에 업로드 된다. 3. 4. kubectl 명령어를 실행해 Kubernets API 서버로 REST HTTP 요청을 전달하고 클러스터에 새로운 레플리케이션 컨트롤러 오브젝트 생성 5. 레플리케이션 컨트롤러는 새 파드를 생성하고 스케쥴러(Scheduler)가 워커 노드 중 하나에 스케쥴링 6. 해당 워커 노드의 Kubelet은 파드가 스케쥴링 된 것을 확인 7. 이미지가 로컬에 없기 때문에 Docker에게 레지스트리에서 특정 이미지를 Pull 하도록 지시 8. 이미지 다운 후 Docker는 컨테이너를 생성하고 실행 Master Node의 Schedu..
[Kubernetes] 쿠버네티스 설치(kubeadm) 및 cluster 구성하기 쿠버네티스를 공부하기 위해서는 제일 처음으로 할일이 여러 노드에 kubernates패키지를 설치하고 master 노드와 worker노드간의 연결을 설정하는 일이다. 집에 있는 Synology 718+의 VMM 으로 VM을 3개 만들어 그들간에 cluster를 구성해보려고 한다. 시작하기 전에 호환 되는 Linux는 Debian 및 Red Hat 기반 Linux 배포판. 머신당 2GB 이상의 RAM. 2 CPU 이상. 클러스터의 모든 시스템 간의 전체 네트워크 연결(공용 또는 사설 네트워크). 모든 노드에 대한 고유한 호스트 이름, MAC 주소 및 product_uuid. kubelet 위해서는 스왑을 사용하지 않도록 설정함. 마스터 노드 (Master Node) 노드들의 상태를 제어하고 관리 쿠버네티스의..
[Docker] Ubuntu에 Docker 설치하기 Docker 설치 전 확인 사항 ssh 연결 설정이 안되어있을 경우 아래와 같이 관련 모듈을 설치한다. apt-get update - (sudo) apt-get update ssh openssh-server 설치 - (sudo) apt-get install openssh-server ssh 클라이언트와 서버를 동시에 설치 - (sudo) apt-get install ssh 방화벽 해제 - (sudo) ufw enable - (sudo) ufw allow 22 - (sudo) ufw reload ssh 서비스 시작 - (sudo) service ssh start 제대로 구동 되었는지 확인 - (sudo) service ssh status - (sudo) ps -ef | grep sshd - (sudo) n..
[Docker] Docker Hub에 이미지 올리기 Docker hub 에 가입하고 로그인 도커 허브 Url은 다음과 같다. 일반적인 사이트 회원가입처럼 회원가입을 진행하고 로그인을 한다. https://hub.docker.com/ 계정을 생성하고 로그인을 하면 초기화면으로 진입한다. 새로운 Repository를 생성해본다 상단 Repositories 메뉴를 선택하고 Create Repository를 선택한다. 본인 계정 밑에 Repository 이름을 입력하고 Public/Private 유무를 체크한다. 우측에는 tip으로 tag 생성 방법 및 push로 로컬에 저장된 이미지를 허브로 올리는 방법이 명시되어 있다. Test application 도커 빌드 및 허브에 올리기 java8위에 올라가는 간단한 war파일을 이미지로 빌드해본다. docker se..
[Docker] Docker 명령어 정리 #2 도커 Log 확인 Usage: docker logs [OPTIONS] CONTAINER Fetch the logs of a container Options: --details Show extra details provided to logs -f, --follow Follow log output --since string Show logs since timestamp (e.g. 2013-01-02T13:23:37Z) or relative (e.g. 42m for 42 minutes) -n, --tail string Number of lines to show from the end of the logs (default "all") -t, --timestamps Show timestamps --until st..
[Docker] Docker 명령어 정리 #1 도커 컨테이너 리스트 보기 root@worker2:~# docker container ps --help Usage: docker container ls [OPTIONS] List containers Aliases: ls, ps, list Options: -a, --all Show all containers (default shows just running) -f, --filter filter Filter output based on conditions provided --format string Pretty-print containers using a Go template -n, --last int Show n last created containers (includes all states) (defau..