DevOps/AWS Architecture

    [ Docker && Kubernetes ] - 쿠버네티스를 이용한 컨테이너 오케스트레이션: 쿠버네티스 소개

    [ Docker && Kubernetes ] - 쿠버네티스를 이용한 컨테이너 오케스트레이션: 쿠버네티스 소개

    쿠버네티스 쿠버네티스는 가장 대표적인 컨테이너 오케스트레이션 시스템입니다. 사실상 표준이라고 할 수 있습니다. 컨테이너 오케스트레이션 시스템이란? 이는 컨테이너의 배포, 관리, 확장, 네트워킹을 자동화하는 기술이라고 할 수 있습니다. 기존에 Docker / Docker Compose는 한대의 머신 안에서 컨테이너를 관리하기 위한 도구로 사용했었습니다. 다만 컨테이너 오케스트레이션 시스템에서는 여러대의 머신 -> 클러스터 상에서 컨테이너를 관리하게 됩니다. User라는 서비스가 있다고 해보면 User라는 컨테이너의 Scaling작업, Rollout과 같은 작업을 하기도 합니다. 또한 버전관리와 관련된 Rollback과 관련된 기능을 제공합니다. 그리고 CPU, memory, GPU와 같은 유휴자원같은 것을..

    [ Docker && Kubernetes ] - 도커 컨테이너 다루기:도커 컴포즈를 이용하여 Grafana_MySQL 구성

    [ Docker && Kubernetes ] - 도커 컨테이너 다루기:도커 컴포즈를 이용하여 Grafana_MySQL 구성

    1. Grafana 구성하기 바로 위에 명시되어 있는대로 실습을 해보도록 하겠습니다. 공식문서는 아래 2개를 참고하였습니다. https://hub.docker.com/_/mysql mysql - Official Image | Docker Hub Quick reference Supported tags and respective Dockerfile links 8.0.30, 8.0, 8, latest, 8.0.30-oracle, 8.0-oracle, 8-oracle, oracle 8.0.30-debian, 8.0-debian, 8-debian, debian 5.7.39, 5.7, 5, 5.7.39-oracle, 5.7-oracle, 5-oracle 5.7.39-debian, 5.7-debian, 5- hub...

    [ Docker && Kubernetes ] - 도커 컨테이너 다루기:명시적으로 여러 컨테이너 관리하기

    [ Docker && Kubernetes ] - 도커 컨테이너 다루기:명시적으로 여러 컨테이너 관리하기

    도커 컴포즈 이는 간단하게 docker-compose.yml YAML파일을 통해서 명시적으로 관리할 수 있게 도와줍니다. 프로젝트 단위로 격리된 환경을 제공할 수도 있고, 프로젝트 단위에서 도커 네트워크와 볼륨도 관리가 가능하게 됩니다. 그리고 서비스들간의 의존성도 손쉽게 관리할 수 있다는 장점이 있게 됩니다. 그리고 서비스 S1이 S2를 호출할 때, 내부 도메인을 사용하면 좋을것 입니다. 이를 위해서 저희는 이전에 bridge network를 통해서 net_alias설정을 통해서 진행해 주었었습니다. 도커 컴포즈에서는 각각의 서비스명으로 해당 서비스를 네트워크 상에서 호출할 수 있습니다. 이를 서비스 디스커버리라고 합니다. 또한 컨테이너의 수평 확장이 쉽게 되는데, 만약 웹서비스를 하는 서비스를 S1이..

    [ Docker && Kubernetes ] - 도커 컨테이너 다루기:도커 데몬 디버깅

    [ Docker && Kubernetes ] - 도커 컨테이너 다루기:도커 데몬 디버깅

    도커 데몬 디버깅 다음과 같이 우선 docker system events명령어를 치게되면 스트리밍 형식으로 도커의 이벤트가 표시되게 됩니다. nginx컨테이너를 실행하면 이에 맞는 로그가 뜨는 것을 볼 수 있고 아래와 같이 끄게 되면 이에 맞는 이벤트 로그가 뜨는 것을 보실 수 있습니다. 또한 위와같이 docker conatiner의 디스크 사용량도 docker system df명령어로 확인할 수 있게 됩니다. 또한 -v옵션을 주게되면 더 자세히 볼 수 있게 됩니다. 또한 docker system prune명령어를 치게되면, 정지되어 있는 컨테이너, 사용하지 않는 네트워크, 댕글링 이미지들, 댕글링 빌드 캐시들을 삭제하게 됩니다. 또한 docker stats명령어를 통해 컨테이너 ID, 메모리 사용량, ..