Upgrade to Pro — share decks privately, control downloads, hide ads and more …

docker swarm 触ってみた #dockerlt

docker swarm 触ってみた #dockerlt

2015-10-14 Docker実践LT 於 groovesさん

# docker swarm触ってみた

hoshinotsuyoshi 2015/10/14

------

# 私

rails エンジニア的な

------

# 問題意識

------

```
[おれ@とあるサーバ] $ crontab -l | wc -l
200
```

------
![200%](https://i.gyazo.com/8daddd3068d1688e080f68601170f016.png)

# SPOF(単一障害点)

------

# docker swarmとは

------

# swarmとは
* docker謹製クラスタ管理ツール
* 俺「コンテナの気持ちをわかってそう、よさ気!」
* と思った

------

![original 200%](https://i.gyazo.com/70a06437932916dd24d7be072685735a.png)

------

# swarmとは
* 良い日本語情報
http://www.slideshare.net/zembutsu/introduction-to-docker-swarm

------

# swarmとは

ブログ書いた(手前味噌)
http://hoppie.hatenablog.com/entry/2015/09/30/194106

------

# 今回

------

![original 100%](https://i.gyazo.com/00361a32f96165f81c685dc3c5a39e22.png)

------

```
AMI: ami-f2338ff2 CoreOS-stable-723.3.0-hvm
CoreOS: 723.3.0
docker: 1.6.2
etcd: 2.0.12
docker swarm: 0.4.0
```

------

# docker toolboxつかわない

------

# cloud-config

https://gist.github.com/hoshinotsuyoshi/dce5e957aa9ebfec816c

* 80行程度

------

# swarm join

```
ExecStart=/usr/bin/docker run
--name=swarm-join
swarm join
--advertise=$private_ipv4:2375
etcd://$private_ipv4:2379/swarm
```

------

# swarm manage

```
ExecStart=/usr/bin/docker run
--net=host
--name=swarm-manage
swarm manage
-H :4000
--replication
--strategy=binpack
--advertise $private_ipv4:4000
etcd://$private_ipv4:2379/swarm
```

------
# デモ

## swarmのリーダー
$ etcdctl get /swarm/docker/swarm/leader

## ふつうのdocker info
docker info

------
# デモ

## tcp越しのdocker info (swarm)
$ docker -H :4000 info

## managerのdocker info
$ docker -H $(etcdctl get /swarm/docker/swarm/leader) info

------

# (時間あれば binpackストラテジーのdemoとか)

------

おわり

hoshino tsuyoshi

October 14, 2015
Tweet

More Decks by hoshino tsuyoshi

Other Decks in Technology

Transcript

  1. swarm&manage ExecStart=/usr/bin/docker run --net=host --name=swarm-manage swarm manage -H :4000 --replication

    --strategy=binpack --advertise $private_ipv4:4000 etcd://$private_ipv4:2379/swarm