소용환의 생각저장소


Free Software, Cloud Computing, and Troubleshooting

소용환의 생각저장소


Free Software, Cloud Computing, and Troubleshooting

Docker Swarm 다시 보기

Docker의 Label과 관련된 몇 가지 재미있는 기능들

지난 세 편의 Swarm에 대한 글에서 다루지 못했던 몇 가지 중요한 개념과 기능에 대해서 정리한 글이다. 원래 조금 더 많은 내용을 준비했었는데, 일단 다 줄이고, 재미있는 짜투리 소재 두 가지, Docker의 Label 지원과 이를 Swarm에서 이용하는 것과 Global Mode Service에 대하여 간단히 정리하였다. [읽기]

Docker Swarm의 고가용성

서비스 가용성을 보장하기 위한 Swarm 클러스터 구성 방법

Docker의 기본 Orchestration 도구인 Swarm의 기본적인 구성에 대하여 설명한 “Getting Started with Docker Swarm”, 그리고 그 위에 Service를 올리고 관리하는 방식에 대해 정리한 “Docker Swarm에 Service 올려보기“에 이어, 이번 글에서는 이러한 기능을 안정적으로 제공할 수 있도록 고가용성 환경을 꾸미는 방법에 대해 정리하였다. [읽기]

Docker Swarm에 Service 올려보기

Docker Swarm 방식으로 서비스 생명주기 관리하기

이번 글에서는, “Getting Started with Docker Swarm“에서 만들어둔 Docker Swarm에 Service를 올려보려고 한다. 시험을 위한 엉터리 Service긴 하지만, Service와 Task가 무엇인지, 그리고 필요에 따라 어떻게 Service를 수평으로 확장하고 다시 줄이는지, Image 교체 등 Service의 업데이트는 어떤 방식으로 처리하게 되는지 알아보고, 이와 함께 Swarm Node에 대한 유지보수를 진행할 때 Swarm은 그 위에 올라가 있는 서비스를 어떻게 다루는지 등에 대해 정리한다. [읽기]

Getting Started with Docker Swarm

나무토막 모아서 뗏목 만들기

지난 글에서는 여러 Docker Host 들을 손쉽게 관리하기 위한 기술 중 하나로 Docker Machine에 대해 살펴봤다. Docker Machine은 그 초점이 기계를 어떻게 빨리 뿌리고 거둘 것인지에 있는 인프라 관점, 저수준의 관리기능을 제공하는 도구라면, 오늘의 주제인 Docker Swarm은 여러 대의 Docker Host 들을 엮어서 마치 하나인 것처럼 다룰 수 있게 해주는 Clustering 도구, 또는 유식한 말로 Orchestration 도구이다. [읽기]

Docker Machine 다시 보기

A Little More About Docker Machine

Docker Engine을 탑재한 Dockerized Host, Docker Node를 손쉽게 펼쳤다가, 다시 모았다가 하는 용도로 Docker Machine을 적절히 활용할 수 있을지 확인하기 위해 빠른 걸음으로 Docker Machine의 기능을 살펴봤었다. 기왕 보기 시작한 김에, 조금 더 자세히 문서와 CLI 도구의 세부 기능을 들여다 보았다. [읽기]

Docker Machine으로 Docker Node 뿌리기

Docker is Not In My BackYard, But on the Cloud!

Docker를 개인 목적이 아닌 어느 정도 규모가 있는 서비스를 위해 사용하려고 한다면, Container가 구동될 복수의 Host Node를 어떻게 쉽게 관리할 것인지 등에 대한 약간의 인프라 관점의 접근이 필요하다. 이번 글에서는 클라우드를 포함한 원격지에 Docker Node를 손쉽게 구성하는 방법, Docker Machine에 대해 정리하려고 한다. [읽기]

DevOps Service: Travis CI

Continuous Integration 도구의 대명사

지속적 통합 분야에서 가장 유명한 서비스는 아마도 Travis CI인 것 같다. 내 경우에는 소프트웨어 시험이 아닌 이 블로그의 빌드 테스트를 위해 처음 사용하기 시작했었는데, Go 프로그래밍을 시작한 이후에는 소프트웨어 빌드 시험을 위해서도 사용하고 있다. 작년 후반에 만들었던 “현천” 프로젝트의 OAuth2 인증 서비스인 UART의 기반을 업그레이드하다가, 기반환경 및 Travis CI를 이용한 시험 과정에서 문제가 생겨서 하루를 꼬박 이 화면에서 살았다. 생각난 김에, 오늘을 기준으로 이 서비스의 화면을 기록으로 남긴다. [읽기]

Docker Cloud에서 자동빌드하기

Setting Automated Build on Docker Cloud

”‘쓸만한’ Docker Image 만들기 - Part 2“에서 Docker Cloud에 Image를 올리는 과정에 대해서 정리하면서, Docker Hub, Docker Cloud 등의 화면을 잠깐 봤다. 떡 본 김에 제사 지낸다고, Docker Cloud에 Image를 올린 김에 Docker Cloud가 제공하는 자동빌드 서비스를 한 번 써봤다. 이 글은, Github의 특정 저장소에 Commit이 일어나면, 이에 반응하여 Docker Image를 자동으로 만들어내도록 설정하는 과정에 대하여 정리한다. [읽기]

'쓸만한' Docker Image 만들기 - Part 2

Build and Push a Docker Image For Go Development

“Hello World 급” Image 작성을 맛봤던 “Docker: 나의 첫 Docker Image”, 그리고 Alpine Linux를 활용하여 C Library를 포함한 “운영체계급” 기반 Image를 만들었던 ‘쓸만한’ Docker Image 만들기 - Part 1에 이어, 이번에는 실제 사용을 고려한 Go 언어 개발환경을 위한 Docker Image를 만들고 그것을 Registry에 등록하는 과정을 정리한다. [읽기]

'쓸만한' Docker Image 만들기 - Part 1

Build an Usable Docker Image with Alpine Linux

설날 연휴가 시작되기 전, Docker: 나의 첫 Docker Image라는 글을 통해 아주 기본적인 Docker Image를 만들어서 그것을 기반으로 Container를 실행하는 예에 대한 글을 올렸다. 이번에는, 예시가 아닌 실제로 활용할 수 있는 Image를 만들고 그것을 Docker Registry에 등록하는 과정에 대하여 기록하려고 한다. 이 글에는 그 과정 중, Alpine Linux를 기반으로 Docker Image를 만드는 과정을 담았다. [읽기]

Docker: 나의 첫 Docker Image

Build and Push my own Docker Image

프로그램이 메모리에 올라와 제어를 넘겨 받으면 프로세스가 되고, Disk 위의 Kernel Image가 메모리에 올라오면 컴퓨터가 살아난다. 이렇게, 컴퓨터 세상은 깨어 있는 무언가와 그것을 뒷받힘하는 자고 있는 무언가의 쌍으로 이루어져 있다. Docker 역시 이 프랙털 안에 있는데, 메모리에 올라와 깨어 움직이는 Container와, 이것이 본으로 삼는, 저장소에서 잠을 자는 Image가 그것이다. 이 글은, Container의 본이 되는 Image를 만들고 저장하는 방식에 대하여 정리한다. [읽기]

Docker: Getting Started with Docker

Docker 시작하기

예상하지 못했던 여유가 생겨서, 미루고 또 미뤘던 주제를 하나 정리하려고 한다. 이미 많은 사람들에게 친숙한 기술용어가 되어버린 Container, 그리고 그 시대를 이끌고 있는 대표주자인 Docker가 그것인데, 이번 글에서는 Docker의 개념에 대하여 대충 정리하고, 다음 글에서는 Ubuntu 환경에서 Docker를 설치하여 맛을 보는 과정을 짧게 정리하려고 한다. [읽기]

돌아보기: 가상화와 클라우드 컴퓨팅

Look back: About Virtualization And Cloud Computing

희미한 기억 속에 남아있는 2009년의 기록, 가상화와 클라우드 컴퓨팅에 관하여. 아마, 한참을 “우리도 가상화와 클라우드 세상을 겨냥한 사업을 해야 한다”고 주장하던 시기에 작성했던 글인 것 같다. 당시 어느 기관지에 기고했던 글의 초안인 것도 같고. [읽기]

Vyatta 네트워크 문제 추적 Part 3 - DUMP

tcpdump를 이용한 거대 Dump의 효율적인 분석방법

네트워크와 관련된 문제를 분석할 때 Packet을 Capture해서 분석하는 것 만큼 효과적인 방법이 있을까? 이 글의 소재가 되는 (제목이 아직은 잘못 붙여진) “Vyatta Network Interface Down Issue” 역시, 결과적으로는 통신 내용을 확인하는 Packet Dump 분석을 통해 증상이나마, 증상이나마 확인할 수 있었다. [읽기]