49
CumulusLinux運用中 BroadBandTower Cloud&SDN研究所 加藤 良輔 <[email protected]>

CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

CumulusLinux運用中

BroadBandTower Cloud&SDN研究所 加藤 良輔

<[email protected]>

Page 2: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

ブロードバンドタワー 会社概要

All rights reserved. ©BroadBand Tower, Inc. 2016 2

株式会社ブロードバンドタワー BroadBand Tower, Inc.

2000年2月9日

東京都千代田区内幸町1-3-2 内幸町東急ビル

23.61億円(2016年6月末日 現在)

コンピュータプラットフォーム事業 ファッションビジネスプラットフォーム事業

代表取締役 会長兼社長 CEO 藤原 洋

347.88億円(2016年 6月 連結)

JASDAQ:3776

会 社 名

設 立 年 月 日

所 在 地

資 本 金

事業セグメント

売 上 高

代 表 者

株 式 市 場

2016/12/8

Page 3: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

会社設立~現在

All rights reserved. ©BroadBand Tower, Inc. 2016 3

2011

2010

2009

2008

2015

2014

2013

2012

2003

2002

2001

2000

2007

2006

2005

2004

2016

第2サイトオープン

大証ヘラクレス上場(現・JASDAQ 証券コード3776) 連結子会社BBF設立 第3サイトオープン

連結子会社ブランチ・アウト事業開始

山口県防府市において太陽光発電事業を開始

クラウドセキュリティ認証制度「STAR認証」を国内企業として初の取得

第5サイトオープン Scality社製品「Scality RING」販売代理店契約締結、販売開始

連結子会社エーアイスクエア、グローバルIoTテクノロジーベンチャー設立

グローバルセンター・ジャパン株式会社(現ブロードバンドタワー)設立

第1サイト(データセンター)オープン

株式会社ブロードバンドタワーに社名変更

マネージドホスティングサービス「FlexHosting」(現 c9 Flex)サービスの提供開始、西梅田(関西)サイトオープン

アイシロン・システムズ社(現EMC社)製品「Isilon」の 販売代理店契約締結、販売開始

連結子会社BBFが三井物産株式会社と資本業務提携

ヤフー株式会社と資本業務提携

Dell EMC社 Cloud Service Provider Progam契約締結 パナソニック社製品「パナソニック データアーカイバー」販売代理店契約締結、販売開始

2016/12/8

Page 4: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

事業概要

All rights reserved. ©BroadBand Tower, Inc. 2016 4 2016/12/8

Page 5: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

自己紹介

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 5

加藤 良輔

2013年11月入社

Cloud&SDN研究所 所属

活動内容

2013年~ Cloud&SDN研究所発足のスタートアップメンバとして入社

2014年~ SDN研究所用ASの設計運用、実験系Internet Exchange拠点運用に携わる

2015年~ 複数クラウド接続サービスの設計・運用に携わる

2016年~ Interop Tokyo 2016 NOC サーバ担当等々 社外活動

好物

カメラ と おもちゃの鉄砲

Page 6: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

スイッチ紹介

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 6

Quanta T3048-LY9 [x 2]

QCT (Quanta Cloud Technology) 製ホワイトボックススイッチ

Trident II

48 100/1000/10GBASE-T and 6 QSFP+ ports

Capacity: 1.44Tbps

Max Forwarding Rate: 1071Mpps

CPU:Freescale P2020, MEM: 2GB DDR3

Cumulus Linux Installed.

Page 7: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

CumulusLinuxとは?

7

Page 8: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

CumulusLinuxとは?

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 8

CumulusLinux とは?

もはや言わずと知れた WhiteBox スイッチで動くLinuxOS

Debian GNU/Linuxベース

apt update -> apt install xxx もできる!

スイッチはLinux的に設定 (/etc/interfaces)

Switchd (独自)にて ASIC へ橋渡し

一部機能に OpenvSwith も存在

今回、BBTower Cloud&SDN研究所でも 試験的にCumulusLinuxの導入と運用を行うことに

Page 9: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

スイッチ設定概念

9

Page 10: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

スイッチ設定作法

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 10

デフォルト状態は全ポートが独立したインターフェイス

Linux Bridge 設定

vlan設定

※ ip link add link swp1 name swp1.1001 type vlan id 1001でも可

Page 11: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

個人の感想

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 11

まんまLinux だこれー!?

Page 12: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Traditional モード

通常のLinux Bridgeの操作

VLANが多くなると管理が大変となる

Cumulus 的には vlan-awareモードを推奨

VLAN変換箱を作る場合に使うとよいモード

スイッチ設定:Traditional モード

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 12

https://docs.cumulusnetworks.com/display/DOCS/Ethernet+Bridging+-+VLANs 参考:

auto br-VLAN100 iface br-VLAN100 bridge-ports swp1.100 swp2.100 bridge-stp on auto br-VLAN200 iface br-VLAN200 bridge-ports swp1.200 swp2.200 bridge-stp on

Page 13: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

vlan-awareモード (今回使用)

Cumulus2.5系でサポート (現在3.12) (実は 1カーネル(筐体?)につき1個のみ設定)

Cumulus独自の実装の機能

スイッチ設定:vlan-aware モード

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 13

https://docs.cumulusnetworks.com/display/DOCS/VLAN-aware+Bridge+Mode+for+Large-scale+Layer+2+Environments 参考:

auto bridge iface bridge bridge-vlan-aware yes bridge-ports swp1 swp2 bridge-vids 100 200 bridge-pvid 1 bridge-stp on

Page 14: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Cloud&SDN研究所にて稼動例

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 14

Whitebox Switch

Generic Switch

Generic Switch

サービス用VLAN 2-4000

サービス用VLAN 2-4000

研究所仮想基盤

研究所バックボーン

仮想基盤TORスイッチとして導入

沢山のVLANを通す

L2スイッチとしてはシンプルな構成

上から来たTaggedを下に渡すだけ

実はスイッチ的な設定は以下のみ

※ 実はCumulusはデフォルトVID3000-3999をリザーブしています為 推奨の設定ではありません

Page 15: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Linuxのブリッジ設定の向き

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 15

ネットワーク機器の考え方が逆

SW(JUNOS) SW(Cumulus)

Bridge br0 te-0/0/1

swp1

ポート操作でブリッジに登録する ブリッジ操作でポートを登録する

Page 16: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Linuxのブリッジ設定の向き (簡易設定例)

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 16

SW(JUNOS)

Bridge

SW(Cumulus)

br0

(雑に) 全VLANを通す設定

ポート単位でブリッジ設定するx48(気持ち)

ブリッジ単位で設定する

Page 17: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Cumulus自動構築

17

Page 18: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

CumulusLinuxとAnsible

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 18

Whiteboxスイッチの使い方

たくさんデプロイを想定 安価(であってほしい)スイッチですもの

・・・管理が辛くなってくる (弊社2台故まだまだですが)

構成管理ツールを使わない手はない

素で Linux + sshd 動いている

素で Python 入ってる →

Ansible を使うしかないじゃないか!

Page 19: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Ansibleの仕事

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 19

Ansible とは?

サーバ管理の構成管理/自動化ツール

指定された書式の手順書をインベントリに登録されたサーバにて実行

豊富なモジュールを駆使してサーバ、ネットワーク機器へ冪統性ある処理を実行

Cumulus Linux + Ansible でできるシナリオ

1. 作業ユーザ追加と管理権限の付与

2. ライセンス適用

3. デフォルトユーザ ”Cumulus” の無効化

4. 使う環境の監視/管理サービスの設定

5. Linux Bridge の初期構成 (モジュールもCumulus対応) 上記操作を一括にて行えます

Page 20: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

AnsibleからCumulusの操作 (触ったことある方向け)

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 20

Ansible Module for Cumulus Linux

Ansible で操作をする場合は以下のCumulus提供の操作モジュール

cl_license - Install Cumulus Linux license

cl_bond - Configures a bond port.

cl_bridge - Configures a bridge port.

cl_img_install - Install a different Cumulus Linux version.

cl_interface - Configures a front panel, loopback or management port.

cl_interface_policy - Configure interface enforcement policy.

> This is a Core Module いつの間にか公式のCoreModuleに登録されてしていました (以前は拡張モジュール扱い)

… 実際のところ、これ以外は完全にLinuxおよび各サービス用モジュール設定になります

Page 21: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Ansibleモジュールのごく一部分解説 (1)

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 21

cl_interface について

/etc/network/interface.d/ 以下に各interfaceの設定を置く

要: /etc/network/interface に source /etc/network/interface.d を記述

Debian GNU/Linux の設定としては筋の通る・・・というか、そのまま

ははーん、このモジュールはUbuntuにも使えますね?

Page 22: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Ansibleモジュールのごく一部分解説 (2)

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 22

cl_interface について

/etc/network/interface.d/ 以下に各interfaceの設定を置く

要: /etc/network/interface に source /etc/network/interface.d を記述

Debian GNU/Linux の設定としては筋の通る・・・というか、そのまま

ははーん、このモジュールはUbuntuにも使えますね?

だめでしたァァァア orz

cl_interface で呼び出す ifquery (Linux標準) に独自の拡張が含まれてる模様

Page 23: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

モジュールのごく一部分解説 (2)

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 23

Ubuntu版 ifquery Cumulus版 ifquery

手作業でInterface設定する場合は意識する必要はないが、Cumulus内のSystem寄りコマンドはCumulus内で扱いやすいようにここでもカスタマイズされている模様

Page 24: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

独自部分、一部紹介

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 24

cumulus:~$ zgrep Cumulus /usr/share/man/man*/* | sed "s/:.*$//g"|uniq

/usr/share/man/man1/netshow.1.gz

/usr/share/man/man5/apt-snapshot.conf.5.gz

/usr/share/man/man5/cl-acltool.5.gz

/usr/share/man/man5/ifupdown-addons-interfaces.5.gz

/usr/share/man/man5/interfaces.5.gz

/usr/share/man/man8/cl-acltool.8.gz

/usr/share/man/man8/clagctl.8.gz

/usr/share/man/man8/clagd.8.gz

/usr/share/man/man8/cl-cfg.8.gz

/usr/share/man/man8/cl-service-summary.8.gz

/usr/share/man/man8/dhcpd.8.gz

/usr/share/man/man8/dhcrelay.8.gz

/usr/share/man/man8/ifdown.8.gz

/usr/share/man/man8/ifquery.8.gz

/usr/share/man/man8/ifreload.8.gz

/usr/share/man/man8/ifup.8.gz

/usr/share/man/man8/iorw.8.gz

/usr/share/man/man8/ledmgrd.8.gz

/usr/share/man/man8/onie-select.8.gz

/usr/share/man/man8/phy-update.8.gz

/usr/share/man/man8/ptmctl.8.gz

/usr/share/man/man8/ptmd.8.gz

/usr/share/man/man8/pwmd.8.gz

/usr/share/man/man8/smonctl.8.gz

/usr/share/man/man8/smond.8.gz

/usr/share/man/man8/vxrd.8.gz

/usr/share/man/man8/vxrdctl.8.gz

/usr/share/man/man8/vxsnd.8.gz

/usr/share/man/man8/vxsndctl.8.gz /usr/share/man/man8/ztp.8.gz

cumulus:~$ sudo vtysh

Hello, this is Quagga (version 0.99.24+cl3u4).

Copyright 1996-2005 Kunihiro Ishiguro, et al.

cumulus#

3.12系をざっくり調べると ← の通り

幾つかのデーモンにもそれっぽい番号が↓

Page 25: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Cumulus+α 導入事例

25

Page 26: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

当研究所、Cumulus は Linux Switch故の

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 26

“スイッチ管理もクラウドらしく”

をコンセプトにデプロイ設計

Page 27: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Cloud&SDN研究所にての試験利用中

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 27

デプロイ後の初期設定+基本設定

サービス監視/一括操作

管理ネットワーク

Whitebox Switch

Generic Switch

Generic Switch

Cloud&SDN研究所仮想基盤

サービス用セグメント

Page 28: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

CumulusLinux管理構成

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 28

サーバOS (Linux) による スイッチ筐体の制御

デプロイ (展開) ツールによる設定の自動化

クラスタ管理ツールによる ステータスの相互確認

Consul

Page 29: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Ansibleの仕事

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 29

同上

Page 30: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Consulの仕事

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 30

Consul

Consul とは?

Vagrant などの Hashcorp謹製OSS toolの一つ

サーバ監視と設定の為の管理エージェント

問題発生時にエージェントからのイベントとアクション

インストール済み端末を一斉操作

Cumulus Linux + Ansible +Consul

1. Ansible による初期設定から自動インストール

2. インストール後はConsulサーバへ自分の情報を通知

3. 死活監視と待機

4. (Ansible が利用可能な最新のホスト情報を生成)

5. (インストール済みノードへコマンドを一括投入)

Page 31: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

管理されたWhitebox Switch運用のサイクル

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 31

1. 電源投入からの自動初期設定

2. 自動によるベースコンフィグ設定

3. ベースコンフィグからの自動クラスタ構成

4. (群体のオペレーションの繰り返し)

5. 故障もしくは経年による入れ替え

6. (1へ戻る)

Consul

Linux的に 自動設定

Page 32: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Ansible & Consul の違い

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 32

Ansible

手順書を元に全体のモデル化と設定反映

自動構成として利用するツール

初期状態からのデプロイ用として利用

Consul

作業対象の監視と一括操作を行うツール

コマンドを一括でライブに投入が可能

同役割の冗長系スイッチへ同じコマンドを投入可

全機器のステータスの表示

指定のサービスの全停止/再起動

機能不全検知時に指定のコマンドを実行

Consul

=ゼロタッチ”的”プロビジョニング

=Linuxの一括操作

※ 元々 CumulusとONIE自体でカバーできてはいますので…

Page 33: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

研究所 Ansible Playbook構成

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 33

1. 初期設定

1. Cumulus共通の初期設定

2. クラスタ設定

1. Consul登録

3. サービス/スイッチ設定

1. snmpd

2. rsyslogd

3. switchd

一つのPlaybook群でも良かったですが開発中故、細かく

Page 34: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Consul管理

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 34

クラスタ管理画面

冗長化された管理サーバ

登録されたクライアント一覧

サーバとしての柔軟な操作

一括の設定確認/変更

必要な情報の抽出

監視項目の動的追加

RestAPIによる操作

※スイッチクラスタ内の “t3048” に一致するスイッチのポート6が学習したMACアドレスを抽出

※管理サーバ3台の冗長構成と4台の試験用仮想スイッチ、および Quanta t3048-ly9

Page 35: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Consulによる監視

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 35

それっぽい監視もできています

Page 36: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Consul watch から Slack へ通知も

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 36

ステータス変動時に Slackへ通知

※ 細かいハンドラ書く元気は出z (ry

Page 37: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Cumulus Linuxで

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 37

“スイッチ管理をクラウドらしく”

そうなると今度は数が欲しくなりますね…

おぉ、ちょっと

いけそうですね。

Page 38: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Cumulus VX によるスイッチ開発 (1)

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 38

当研究所では現在 ”Cumulus VX” にて数の寂しさを紛らわしております。

$ consul members

Node Address Status Type Build Protocol DC

cumulus-vx1 10.22.96.111:8301 alive client 0.6.4 2 dc1

cumulus-vx2 10.22.96.112:8301 alive client 0.6.4 2 dc1

cumulus-vx3 10.22.96.113:8301 alive client 0.6.4 2 dc1

cumulus-vx4 10.22.96.114:8301 alive client 0.6.4 2 dc1

t3048-ly9-1 10.22.96.101:8301 alive client 0.6.4 2 dc1

t3048-ly9-2 10.22.96.102:8301 alive client 0.6.4 2 dc1

wbsw-ctrl1 10.22.96.1:8301 alive server 0.6.4 2 dc1

wbsw-ctrl2 10.22.96.2:8301 alive server 0.6.4 2 dc1

wbsw-ctrl3 10.22.96.3:8301 alive server 0.6.4 2 dc1

Page 39: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Cumulus VX によるスイッチ開発 (2)

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 39

Whitebox に乗る CumulusLinuxを仮想環境で使用できる「Cumulus VX」

VMware/KVM/Virtualbox 対応

スイッチとしても動作 (ASICに落とすハードウェア独特の switchd の中身 => exit () のみ)

大体の動作を確認することができる。

Vagrant (CumulusCommunity/cumulus-vx) も使用ができる

テスト・開発用に便利

手元のノートPCで Cumulus VX を作る

Ansible Playbook や ConsulのRestAPI を設計

Cumulus VX 宛に流して動作を確認する

Cumulus の実環境にデプロイする

手元のCumulus VX環境を廃棄する

Page 40: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Cumulus Linux VXで

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 40

“スイッチを今っぽく機能追加できそう”

ちょっと

っぽいですね。

Page 41: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

おまけ

41

Page 42: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Cumulus Linux 3.2 (Dec 2016) で

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 42

なんと独自CLI “NCLU” が実装されるらしい

参考: https://cumulusnetworks.com/blog/cumulus-linux-network-command-line-utlility/

Page 43: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 43

むせ返る先祖返り感。

生粋のネットワーク屋さんを取り込む感じで

Page 44: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

まとめ

44

Page 45: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Whitebox + Cumulus 長所/短所

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 45

長所

Whitebox Boot時のONIE自体も賢くデプロイがしやすい

ほぼ標準といってもよい環境が既にできている

SFPのベンダロックインがない

しかも意外とSFP/SFP+兼用が効く筐体であったり

新しい管理方法を試せる、もしくは製品の土台に使える

短所

スイッチ筐体保守とOSライセンス更新の2重苦 (個別に来る故、まとめたい)

潜むサーバOS独特の問題

OOM Killerによる恐怖ロシアンルーレット問題 (あるんでしょうか… 実は試せていません)

service networking reload 時の瞬断

トラブルに直面した時の覚悟と度胸と決断

数ポートが「微妙に」壊れていました・・・を見る時はどうする?捨てる?

Page 46: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Whitebox + Cumulus Linux

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 46

嬉しいこと

サーバらしい管理ができるスイッチとして使える

自動化ノウハウも既に存在するのでは

スイッチ運用の新しい選択ができる

サーバリソースと同じ方法で同じ監視基盤に乗せられる

Nagios/Zabbix以外の監視方法の選択も可能、今回はConsulにて

コントロール方法の選択

所感:

大量にデプロイして壊れたら差し替えられるくらいが丁度よい

こういうところもクラウドっぽく使いたい それこそ使い捨てくらいの・・・

値下げが効く幅が狭いと嬉しいなぁ…

単体で定価だとわりと遜色ないお値段

コストメリット皮算用で選ぶのは本質ではないのかもしれない

Page 47: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

Whitebox と Cumulus Linuxで

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 47

“クラウドらしくスイッチ管理してみましょう”

さぁ、

Page 48: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 48

以上、ご清聴ありがとうございました。

Page 49: CumulusLinux運用中 - Tower of Engineers · 2016-12-09 · 5. Linux Bridge の初期構成 (モジュールもCumulus対応) ... Install a different Cumulus Linux version. cl_interface

2016/12/8 All rights reserved. ©BroadBand Tower, Inc. 2016 49