うまいぼうぶろぐ

linuxとhttpdとperlのメモ

rancher v1.0 memo

version 1.0 時代のmemo 見つかったので引っ張り出してきた。
最新は1.4 なので色々変わってると思うけど。

http://rancher.com/rancher-os/

  • iso イメージからboot
  • 自動的にコンソールログイン、DHCPでIP取得
  • 作業はrancherユーザ。sudo でroot権限使う。
  • cloud-config.yaml を書いてros コマンドでinstall

- sshの公開鍵もこれに書く
- vCenterのコンソールからコピペは難しいので、作業用のためにrancherユーザにパスワード設定して、sshで入って作業するのもあり?

sudo ros install -c cloud-config.yml -d /dev/sda
sudo ros service list
sudo ros service enable open-vm-tools
sudo ros service up open-vm-tools
sudo ros service enable rancher-server
sudo ros service up rancher-server

cloud-config.yaml sample

#cloud-config
hostname: rancheros1-1
ssh_authorized_keys:
  - ssh-rsa "sshの公開鍵" user@host
rancher:
network:
  interfaces:
    eth0:
    address: x.x.x.x/y
    gateway: x.x.x.1
    mtu: 1500
    dhcp: false
  dns:
    nameservers:
      - y.y.y.1
      - y.y.y.2

# ホスト network 設定変更

sudo ros config set rancher.network.interfaces.eth1.address 1.1.1.1/24
sudo system-docker restart network

# nfs mount

amazon EFSじゃなくて自前のnfsを使う場合

```
NFS Server: NFS server ip address or hostname.
Export Base Directory: Exported shared directory on the NFS server.
NFS Version: The NFS version to use, current used version is 4.
Mount Option: Comma delimited list of default mount options, for example: ‘proto=udp’. Do not specify nfsvers option, it will be ignored
```

## volumeの設定

  • インフラストラクチャ - ストレージ - ボリュームを追加
  • 名前を適当に入力: nfs exportディレクトリのサブディレクトリとして作成される
  • "test" とすると nfs-server:/path/to/export/test でmountされる
  • 作成した段階ではinactive状態
  • インフラストラクチャ - コンテナ
  • ボリュームタブ 作成したtestをコンテナの/path/to/mount でmountしたい場合
  • test:/path/to/mount
  • nfsボリューム作ってない場合に↑をやると、localにtest というvolumeできてしまうので注意


# コンテナnetwork

  • コンテナ作成時のネットワークはデフォルトで"管理" 10.42.0.1/16 ? (英語だとmanaged)
  • 基本的には管理で良い
  • ホスト間でipsec貼られているのでホストに依存せずコンテナ間で疎通可能
  • ネットワーク: ホスト にするとコンテナホストとinterface状態になる
  • eth0、eth1、docker0 など全て引き継ぐ


## network 分離

Network Policy Manager カタログをデプロイすれば、サービス内、スタック内では許可、その他は拒否、というような設定が可能。

ちなみにスタックから起動せず、インフラストラクチャ - コンテナから起動したコンテナはどのスタックにも紐づかないので
"その他: 拒否" にしている場合はどのコンテナ間とも疎通は不可となる。