CoreOS 3

Consul & Registrator

consul cluster 구성하기1. consul 설치$ wget https://releases.hashicorp.com/consul/0.7.0/consul_0.7.0_linux_amd64.zip$ unzip consul_0.7.0_linux_amd64.zip$ sudo cp consul /usr/local/bin 2. consul server 실행 (@instance1) * -bind에는 실행 중인 인스턴스의 IP를 적는다.$ consul agent -server -bootstrap-expect 1 -data-dir /tmp/consul -node=agent1 -bind=172.31.4.225 3. consul client 실행 (@instance2) * -bind에는 실행 중인 인스턴스의 IP를 적..

MicroService 2016.10.05

CoreOS fleet unit 작성 및 실행

fleet은 systemd를 클러스터 레벨에서 제어하는 클러스터 매니저입니다. 클러스터 내에서 서비스를 실행하기 위해서는 먼저 systemd unit을 submit 해야합니다.Unit file 작성Redis 컨테이너를 실행하는 Unit file을 작성합니다. 이 때 docker 명령문에서 -d 옵션을 사용하지 않도록 주의해야 합니다. -d 옵션으로 인해 컨테이너가 detached 되면 unit이 종료되기 때문입니다. /etc/systemd/system/redis@.service[Unit] Description=Redis After=docker.service Requires=docker.service [Service] TimeoutStartSec=0 ExecStartPre=-/usr/bin/docker k..

MicroService 2016.08.12

CoreOS etcd cluster 사이즈 변경하기

CoreOS 설치Document를 보고 AWS EC2 환경에 CoreOS 클러스터를 구축하였습니다. CloudFormation으로 구축하니 클릭 몇번으로 환경이 구성되어 굉장히 편리하네요. 각 인스턴스의 UserData는 아래와 같이 구성되었습니다. 만약 UserData를 변경하고 싶다면 인스턴스를 Stop한 경우에만 가능하다고 하네요. Cluster 사이즈 변경etcd의 discovery값은 etcd 클러스터 개수에 기반하여 생성된 값입니다. 그렇다면 etcd 클러스터 사이즈를 늘리기 위해서는 인스턴스들을 정지시키고 User Data를 모두 변경해줘야 할까요? Document를 조금 더 읽어보니 etcdctl 명령어를 사용하면 downtime없이 클러스터를 추가하거나 삭제하는 것이 가능하다고 하네요. ..

MicroService 2016.08.10