SlideShare a Scribd company logo
そろそろSSH/Telnetを離れて
自動化したい
NetOpsCoding#4
株式会社サイバーエージェント
技術本部 サービスファシリティグループ
DCソリューション 十場 裕
CyberAgent, Inc. All Rights Reserved
自己紹介
氏名: 十場 裕
仕事: NWエンジニア +α
実質的には何でも屋
Slack: yjuba
以下のコマンドは好きですか?
- SSH
- Telnet
- Clogin (RANCID)
- Expect
手動で作業する時
自動化する時
手動で作業する時
SSH/Telnet
対話型のコマンドで構わない
自動化する時
SSH/Telnet + Expect / Clogin
対話型である必要はない
寧ろ対話したくない
言い換えると
手動で作業する時
→ 対象機器と対話が必要な時
自動化する時
→ 対象機器と対話が不要な時
実装したもの
Mgmt
Server
Router
Switch
Firewall
Load
Balancer
User
Tool
HTTP SSH
類似事例: kooshin氏
ネットワークAPIを試作してみた with Ruby/Rails/Redis/expect
http://qiita.com/kooshin/items/21f96c5c32c20a1968a0
$ curl -s -X GET http://192.0.2.100:8000/nodes/ | jq .
[
{
"name": "CiscoNexus001",
"addr": "192.0.2.201:22"
},
{
"name": "CiscoNexus002",
"addr": "192.0.2.202:22"
}
]
$ curl -s -X POST -d '{"commands": ["sh run int mgmt0"]}'
http://192.0.2.100:8000/nodes/CiscoNexus001 | jq .
[
{
"target": "CiscoNexus001",
"command": "sh run int mgmt0",
"result": [
"sh run int mgmt0¥r",
"",
"!Command: show running-config interface mgmt0",
"!Time: Wed Oct 19 11:58:09 2016",
"",
"version 7.0(3)I2(2)",
"",
"interface mgmt0",
" vrf member management",
" ip address 192.0.2.201/24"
]
}
]
$ cat config.toml
[global]
timeout = "3000ms"
user = “user"
password = “passwd"
enable = “enpasswd“
[nodes]
[nodes.CiscoNexus001]
addr = "192.0.2.201:22"
suffix = "CiscoNexus001# $"
pager = "terminal length 0"
[nodes.CiscoNexus002]
addr = “192.0.2.202:22"
suffix = "CiscoNexus002# $"
pager = "terminal length 0"
cmd_white_list = [
“show version”
]
Mgmt Server (仮称)
実装済みの機能
- コマンド実行順序の保証
- 実行可能なコマンドの制限 (ホワイトリスト)
- SSHセッションの使い回し
- コマンド実行履歴の保存
実装予定の機能
- 実行可能なコマンドの制限 (ブラックリスト)
- コマンド制限の正規表現対応

More Related Content

PPTX
AWS Direct Connectの構築を自動化(しようと)している話
PPTX
EC2起動終了を出退勤と連動させてみた
PDF
async/awaitダークサイド is 何
PPTX
Virtual boxからVM Importする
PDF
Async DeepDive basics
PDF
ReactをRailsとどっぷり使ってみた話と、フロントエンド×AWSのこれから
PDF
.NET Coreから概観する.NETのOSSへの取り組み
PDF
Endo kitura on_bluemix
AWS Direct Connectの構築を自動化(しようと)している話
EC2起動終了を出退勤と連動させてみた
async/awaitダークサイド is 何
Virtual boxからVM Importする
Async DeepDive basics
ReactをRailsとどっぷり使ってみた話と、フロントエンド×AWSのこれから
.NET Coreから概観する.NETのOSSへの取り組み
Endo kitura on_bluemix

What's hot (20)

PDF
PHP Application E2E with Capybara
PPTX
worker_threadsを使った実装の勘所
PPTX
BluemixでサクッとIoT ! ~ IoT Foundation, Node-RED や Azure Event Hub との連携もお助けヾ(o´∀`o)ノ
PDF
Thread affinity and CPS
PDF
SIROK技術勉強会 #1 「Reactってなんだ?」
KEY
capybara で快適なテスト生活を
PDF
JAWS-UG四国クラウドお遍路2014
PPTX
Devops4cloudlbuilder ja
PDF
20150523
PDF
Jaws ug shimane-1
PDF
うわ…私のEmacs力、低すぎ...?
PDF
Ansible の CI を drone/Dokcker で試してみた
PDF
俺とシビックテックとDiy
PPTX
モノづくりを楽しもう! ~ このデバイスとクラウドでできること
PPTX
ASP.NET MVCはNullReferenceExceptionを潰している件
PDF
CSS Nite LP26 CodeKitで始める次世代Web制作
PDF
Nodeとフロントエンド − 知っておかなければならない、今と未来の話 −
PDF
まだ DOM 操作で消耗してるの?
PDF
AmplifyのバグをAWSに報告して直してもらった話
PDF
Async Enhancement
PHP Application E2E with Capybara
worker_threadsを使った実装の勘所
BluemixでサクッとIoT ! ~ IoT Foundation, Node-RED や Azure Event Hub との連携もお助けヾ(o´∀`o)ノ
Thread affinity and CPS
SIROK技術勉強会 #1 「Reactってなんだ?」
capybara で快適なテスト生活を
JAWS-UG四国クラウドお遍路2014
Devops4cloudlbuilder ja
20150523
Jaws ug shimane-1
うわ…私のEmacs力、低すぎ...?
Ansible の CI を drone/Dokcker で試してみた
俺とシビックテックとDiy
モノづくりを楽しもう! ~ このデバイスとクラウドでできること
ASP.NET MVCはNullReferenceExceptionを潰している件
CSS Nite LP26 CodeKitで始める次世代Web制作
Nodeとフロントエンド − 知っておかなければならない、今と未来の話 −
まだ DOM 操作で消耗してるの?
AmplifyのバグをAWSに報告して直してもらった話
Async Enhancement
Ad

Viewers also liked (20)

PDF
スマホのセンサーでネットワークを操る ~Ansible TowerによるレガシーNW機器のAPI化~
PDF
JSNAPyとPyEZで作る次世代ネットワークオペレーションの可能性
PPTX
FWのポリシーテストを自動化してみた
PDF
物理ネットワーク受け入れテストツールNetTester あるいは私は如何にして心配するのを止めてネットワーク管理を・愛する・ようになったか
PDF
Sql server 2012 の新機能を 3 つの視点でご紹介(大阪版)
PDF
Microsoftにおけるネットワーク自動化とそれを支えるソフトウェア群について
PPTX
Instrumentation and Telemetry ガイダンス
PPTX
第1回 ネットワーク図について語る会 2015-08-27
PDF
インフラ屋の友:Tera Term
PDF
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜
PPTX
Net opscoding#4発表資料
PPTX
誰にでも分かる「IPネットワーク」の図の描き方がない!?
PDF
161027 net opscoding-junos-automation
PDF
ネットワークAPI のあれこれ (ENOG37)
PDF
Ansibleを使ってみよう ~Windowsターゲット編~
PDF
インターネットの舞台裏
PPTX
はじめてのAws lambda
PDF
ネットワーク運用自動化のためのサービス・運用設計
PDF
インフラ自動構築エンジン "Ansible"の勘所を1日でつかむ ~基礎入門編~
PDF
物理ネットワーク受け入れテストの自動化を考える
スマホのセンサーでネットワークを操る ~Ansible TowerによるレガシーNW機器のAPI化~
JSNAPyとPyEZで作る次世代ネットワークオペレーションの可能性
FWのポリシーテストを自動化してみた
物理ネットワーク受け入れテストツールNetTester あるいは私は如何にして心配するのを止めてネットワーク管理を・愛する・ようになったか
Sql server 2012 の新機能を 3 つの視点でご紹介(大阪版)
Microsoftにおけるネットワーク自動化とそれを支えるソフトウェア群について
Instrumentation and Telemetry ガイダンス
第1回 ネットワーク図について語る会 2015-08-27
インフラ屋の友:Tera Term
ルータコンフィグのGit管理のススメ 〜Git管理以外を自動化してみた〜
Net opscoding#4発表資料
誰にでも分かる「IPネットワーク」の図の描き方がない!?
161027 net opscoding-junos-automation
ネットワークAPI のあれこれ (ENOG37)
Ansibleを使ってみよう ~Windowsターゲット編~
インターネットの舞台裏
はじめてのAws lambda
ネットワーク運用自動化のためのサービス・運用設計
インフラ自動構築エンジン "Ansible"の勘所を1日でつかむ ~基礎入門編~
物理ネットワーク受け入れテストの自動化を考える
Ad

Similar to そろそろSSH/Telnetを離れて自動化したい (20)

PDF
私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた
PDF
このべん第二回 ~「できない子ほどかわいくしたい!ConoHa補完計画」勉強会
PPTX
サーバーレスで運用自動化
PDF
SSH力をつけよう
PDF
めんどうくさくないWardenハンズオン
PDF
Janog33.5
PDF
3分でサーバオペレーションコマンドを作る技術
PDF
Ansible 入門 #01 (初心者向け)
PPTX
LinAction Theme LPICの問題を解いてみる~ネットワーク編~
PDF
マルチプラットホームになった PowerShell 6 でクロスプラットホームする
PDF
マルチプラットホームになった PowerShell 6 でクロスプラットホームする
PPTX
Jenkins 2.0 (日本語)
PDF
No SSH (@nojima; KMC関東例会)
PDF
Docker hands on nifty sakura jul19
PPTX
July Tech Festa 2014発表資料
PDF
10分で作るクラスライブラリ
PPTX
PFIセミナーH271022 ~コマンドを叩いて遊ぶ コンテナ仮想、その裏側~
PDF
SSH Tips & Tricks
PPTX
簡易デプロイツール(スクリプト)を作ってみた話
PDF
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:講義No2
私たちはRESTCONFでネットワーク自動化的に何が嬉しくなるのか考えてみた
このべん第二回 ~「できない子ほどかわいくしたい!ConoHa補完計画」勉強会
サーバーレスで運用自動化
SSH力をつけよう
めんどうくさくないWardenハンズオン
Janog33.5
3分でサーバオペレーションコマンドを作る技術
Ansible 入門 #01 (初心者向け)
LinAction Theme LPICの問題を解いてみる~ネットワーク編~
マルチプラットホームになった PowerShell 6 でクロスプラットホームする
マルチプラットホームになった PowerShell 6 でクロスプラットホームする
Jenkins 2.0 (日本語)
No SSH (@nojima; KMC関東例会)
Docker hands on nifty sakura jul19
July Tech Festa 2014発表資料
10分で作るクラスライブラリ
PFIセミナーH271022 ~コマンドを叩いて遊ぶ コンテナ仮想、その裏側~
SSH Tips & Tricks
簡易デプロイツール(スクリプト)を作ってみた話
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:講義No2

そろそろSSH/Telnetを離れて自動化したい