SlideShare a Scribd company logo
1 of 10
Copyright©2018 NTT corp. All Rights Reserved.
ネットワーク機器の設定自働化に向けた
Stackstorm機能の活用
NTT ソフトウェアイノベーションセンタ
福田晴元
Copyright(c)2018 NTT Corp. All Rights Reserved.
Copyright©2018 NTT corp. All Rights Reserved. 2
• 本日話題とするStackstormの機能は、
「execution pause」と「execution resume」の停
止・再開機能です。
• 物理機器の増設や更改といった、物理接続や接続変更後の
機器設定時に、これら機能を利用すると想定しています。
• 新設や接続変更の伴う工事では、想定外の状態となる可能性が0で
はないため、安全のために一時停止する機能を備える必要がある
と考えます。
• 既に構築済みのネットワーク上に、お客様のオーダーに従って設
定を投入するといった、日常的に行われるネットワーク工事では
上記機能の利用機会は少なく、Inquiries機能の利用が想定されま
す。
対象とするネットワーク工事
Copyright©2018 NTT corp. All Rights Reserved. 3
• Stackstormでは:
• Actionと呼ぶコード(Python等)を実行できます。
• 複数のActionをつなげて一連の操作をWorkflowとして記述
(MistralやActionChain)し、このWorkflowを実行できます。
※StackstormではWorkflowをActionの一種と扱うが、以降では説明のた
めにAction(Python等の実コード)とWorkflow(YAMLで記述する
MistralやActionChain)と分けた呼び方をします。
StackstormのActionとWorkflow
Action
「サーバを起動」
Action
「コンテナを起動」
Action
「Slackにメッセージ送信」
Action
「サーバを起動」
Action
「コンテナを起動」
Action
「Slackにメッセージ送信」
Workflow
Copyright©2018 NTT corp. All Rights Reserved. 4
予め想定できない状況への対応方法として利用できそう。。。
• Inquiries機能
• 予めWorkflow内に停止ポイントを記述することができ、アク
ション(core.ask)として実装
• Workflowの途中で操作者に問い合わせができ、結果に応じた
処理をWorkflowに記述して実行できる。
(例:承認しますか? OK:続行, NG:終了)
• Execution pause|resume機能
• Workflow内に記述することなく、API操作により実行中
Workflowを一時停止・再開することが可能
Stackstormが備える「停止・再開」機能
Copyright©2018 NTT corp. All Rights Reserved. 5
• APIを利用し、execution idを指定して、pause,
resumeを実行
• PUT/api/v1/executions/{id}
• Query_parametersとして、statusに”pausing”もしくは
”resuming”を設定してPUT
• Workflow(MistralやActionChain)のみに実行可能
• 実行中のPython等のActionは停止できない(最後まで実行)。
Execution pause|resume
running
pausing
paused
resuming
pause
resume
Python等のAction
実行完了待ち
Copyright©2018 NTT corp. All Rights Reserved. 6
WFの構成例
ルートWF
子WF
Python Action
Python Action
Python Action
Python Action
子WF
Python Action
Python Action
Python Action
Python Action
子WF
Python Action
Python Action
Python Action
Python Action
子WF
Python Action
Python Action
Python Action
Python Action
sample1
Copyright©2018 NTT corp. All Rights Reserved. 7
• Workflowを多段に構成した場合:
• 最上段(ルート)のWorkflowを停止(pause)した場合、子ワークフ
ローへ伝わり停止する。
• 中段のWorkflowを停止(pause)した場合には、親と子のワークフ
ローへ伝播する。
• 再開(resume)操作は、親ワークフローへ伝播しない。
と書いてあるようだが。。。(resumeも親へ伝播する場合がある)
Execution pause|resume
⇒ これらの情報から、pause/resume操作は、
最上段のWorkflowへのAPI操作がよいと思われる。
※Cancelは全てのWFに行なうこと。
Copyright©2018 NTT corp. All Rights Reserved. 8
• ルートWFの判別方法
• GET/api/v1/executions を利用して情報を取得
• WFやActionは、parentやchildrenのキーを持ち、呼出し関係を管
理している。
• parentのキーがなく、childrenのキーのみとなり、
liveaction/action_is_workflowの値がTrueであるもの。
• 実行中・実行済みWFの構造把握
• GET/api/v1/executions/{ルートWFのID}/children で子W
F以下を全て取得
• ルートWFからchildrenキーを追いかけて構造把握(でよい?)
参考)WFの構造把握
いままでのところを、実際に試してみましょう。
Copyright©2018 NTT corp. All Rights Reserved. 9
実演するWFの構成
ルートWF
子WF
Python Action
Python Action
Python Action
Python Action
子WF
Python Action
Python Action
Python Action
Python Action
子WF
Python Action
Python Action
Python Action
Python Action
子WF
Python Action
Python Action
Python Action
Python Action
ルートWF
子WF
Python Action
Python Action
Python Action
Python Action
子WF
Python Action
Python Action
Python Action
Python Action
子WF
Python Action
Python Action
Python Action
Python Action
子WF
Python Action
Python Action
Python Action
Python Action
sample1 sample2
Copyright©2018 NTT corp. All Rights Reserved. 10
• Mistral Workflowで、子Actionもしくは子
Workflowを並列に実行した場合に問題が発生する場合
がある。
• WFのchildren情報が一部のみ含まれる。
• 実行中・実行済みWFの構造把握(修正)
• GET/api/v1/executions/{ルートWFのID}/children で子
WF以下を全て取得
• ルートWFからchildrenキーを追いかけて構造を把握、かつ、
リーフとなるアクションを探し出し、parentキーを追いかけて
構造を補完
(リーフとなるアクション(parentキーのみのアクション)を探
し出し、parentキーを追いかけて構造を把握するのみでよいと
思われるが、現時点で未試験です)
利用上の問題点

More Related Content

Similar to NW機器の設定自働化に向けたST2機能の活用

HeapStats: Introduction and Technical Preview
HeapStats: Introduction and Technical PreviewHeapStats: Introduction and Technical Preview
HeapStats: Introduction and Technical PreviewYuji Kubota
 
次世代の企業ITインフラを支えるエンジニアとは
次世代の企業ITインフラを支えるエンジニアとは次世代の企業ITインフラを支えるエンジニアとは
次世代の企業ITインフラを支えるエンジニアとはTrainocate Japan, Ltd.
 
OpManager導入事例 日テレITプロデュース様
OpManager導入事例 日テレITプロデュース様OpManager導入事例 日テレITプロデュース様
OpManager導入事例 日テレITプロデュース様ManageEngine, Zoho Corporation
 
Rancher/k8sを利用した運用改善の取り組み(Rancher Day 2019)
Rancher/k8sを利用した運用改善の取り組み(Rancher Day 2019)Rancher/k8sを利用した運用改善の取り組み(Rancher Day 2019)
Rancher/k8sを利用した運用改善の取り組み(Rancher Day 2019)Michitaka Terada
 
しばちょう先生が語る!オラクルデータベースの進化の歴史と最新技術動向#2
しばちょう先生が語る!オラクルデータベースの進化の歴史と最新技術動向#2しばちょう先生が語る!オラクルデータベースの進化の歴史と最新技術動向#2
しばちょう先生が語る!オラクルデータベースの進化の歴史と最新技術動向#2オラクルエンジニア通信
 
20190319 xtech recochoku_15m_pub
20190319 xtech recochoku_15m_pub20190319 xtech recochoku_15m_pub
20190319 xtech recochoku_15m_pubDai Fujikawa
 
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編Fixstars Corporation
 
10/2勉強会資料 ~IaaSを知る前にサーバを知ろう~
10/2勉強会資料 ~IaaSを知る前にサーバを知ろう~10/2勉強会資料 ~IaaSを知る前にサーバを知ろう~
10/2勉強会資料 ~IaaSを知る前にサーバを知ろう~Dai Iwai
 
2015 0228 OpenStack swift; GMO Internet Services
2015 0228 OpenStack swift; GMO Internet Services2015 0228 OpenStack swift; GMO Internet Services
2015 0228 OpenStack swift; GMO Internet ServicesNaoto Gohko
 
OSSで作るOpenStack監視システム
OSSで作るOpenStack監視システムOSSで作るOpenStack監視システム
OSSで作るOpenStack監視システムsatsuki fukazu
 
ベアメタルOpenStackで始めるクラウド環境構築
ベアメタルOpenStackで始めるクラウド環境構築ベアメタルOpenStackで始めるクラウド環境構築
ベアメタルOpenStackで始めるクラウド環境構築Nobuyuki Tamaoki
 
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化シスコシステムズ合同会社
 
【Photon勉強会】1時間でわかるプラグイン開発とその実際(2017/3/23講演)
【Photon勉強会】1時間でわかるプラグイン開発とその実際(2017/3/23講演)【Photon勉強会】1時間でわかるプラグイン開発とその実際(2017/3/23講演)
【Photon勉強会】1時間でわかるプラグイン開発とその実際(2017/3/23講演)Photon運営事務局
 
OpenStack Summit November 2014 Paris出張報告
OpenStack Summit November 2014 Paris出張報告OpenStack Summit November 2014 Paris出張報告
OpenStack Summit November 2014 Paris出張報告Mitsuhiro SHIGEMATSU
 
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」Nobuyuki Tamaoki
 
DBTS2015 Tokyo DBAが知っておくべき最新テクノロジー
DBTS2015 Tokyo DBAが知っておくべき最新テクノロジーDBTS2015 Tokyo DBAが知っておくべき最新テクノロジー
DBTS2015 Tokyo DBAが知っておくべき最新テクノロジーMasaya Ishikawa
 

Similar to NW機器の設定自働化に向けたST2機能の活用 (20)

QFabric for Cloud Builders
QFabric for Cloud BuildersQFabric for Cloud Builders
QFabric for Cloud Builders
 
HeapStats: Introduction and Technical Preview
HeapStats: Introduction and Technical PreviewHeapStats: Introduction and Technical Preview
HeapStats: Introduction and Technical Preview
 
次世代の企業ITインフラを支えるエンジニアとは
次世代の企業ITインフラを支えるエンジニアとは次世代の企業ITインフラを支えるエンジニアとは
次世代の企業ITインフラを支えるエンジニアとは
 
OpManager導入事例 日テレITプロデュース様
OpManager導入事例 日テレITプロデュース様OpManager導入事例 日テレITプロデュース様
OpManager導入事例 日テレITプロデュース様
 
Rancher/k8sを利用した運用改善の取り組み(Rancher Day 2019)
Rancher/k8sを利用した運用改善の取り組み(Rancher Day 2019)Rancher/k8sを利用した運用改善の取り組み(Rancher Day 2019)
Rancher/k8sを利用した運用改善の取り組み(Rancher Day 2019)
 
PostgreSQLの運用・監視にまつわるエトセトラ
PostgreSQLの運用・監視にまつわるエトセトラPostgreSQLの運用・監視にまつわるエトセトラ
PostgreSQLの運用・監視にまつわるエトセトラ
 
しばちょう先生が語る!オラクルデータベースの進化の歴史と最新技術動向#2
しばちょう先生が語る!オラクルデータベースの進化の歴史と最新技術動向#2しばちょう先生が語る!オラクルデータベースの進化の歴史と最新技術動向#2
しばちょう先生が語る!オラクルデータベースの進化の歴史と最新技術動向#2
 
20190319 xtech recochoku_15m_pub
20190319 xtech recochoku_15m_pub20190319 xtech recochoku_15m_pub
20190319 xtech recochoku_15m_pub
 
devsummit_nifcloud_vmware
devsummit_nifcloud_vmwaredevsummit_nifcloud_vmware
devsummit_nifcloud_vmware
 
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編
CPU / GPU高速化セミナー!性能モデルの理論と実践:理論編
 
10/2勉強会資料 ~IaaSを知る前にサーバを知ろう~
10/2勉強会資料 ~IaaSを知る前にサーバを知ろう~10/2勉強会資料 ~IaaSを知る前にサーバを知ろう~
10/2勉強会資料 ~IaaSを知る前にサーバを知ろう~
 
2015 0228 OpenStack swift; GMO Internet Services
2015 0228 OpenStack swift; GMO Internet Services2015 0228 OpenStack swift; GMO Internet Services
2015 0228 OpenStack swift; GMO Internet Services
 
OSSで作るOpenStack監視システム
OSSで作るOpenStack監視システムOSSで作るOpenStack監視システム
OSSで作るOpenStack監視システム
 
ベアメタルOpenStackで始めるクラウド環境構築
ベアメタルOpenStackで始めるクラウド環境構築ベアメタルOpenStackで始めるクラウド環境構築
ベアメタルOpenStackで始めるクラウド環境構築
 
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
シスコ装置を使い倒す!組込み機能による可視化からセキュリティ強化
 
【Photon勉強会】1時間でわかるプラグイン開発とその実際(2017/3/23講演)
【Photon勉強会】1時間でわかるプラグイン開発とその実際(2017/3/23講演)【Photon勉強会】1時間でわかるプラグイン開発とその実際(2017/3/23講演)
【Photon勉強会】1時間でわかるプラグイン開発とその実際(2017/3/23講演)
 
OpenStack Summit November 2014 Paris出張報告
OpenStack Summit November 2014 Paris出張報告OpenStack Summit November 2014 Paris出張報告
OpenStack Summit November 2014 Paris出張報告
 
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
 
NIFcLab Tech Laboratoryはじめます(もうすぐ)
NIFcLab Tech Laboratoryはじめます(もうすぐ)NIFcLab Tech Laboratoryはじめます(もうすぐ)
NIFcLab Tech Laboratoryはじめます(もうすぐ)
 
DBTS2015 Tokyo DBAが知っておくべき最新テクノロジー
DBTS2015 Tokyo DBAが知っておくべき最新テクノロジーDBTS2015 Tokyo DBAが知っておくべき最新テクノロジー
DBTS2015 Tokyo DBAが知っておくべき最新テクノロジー
 

NW機器の設定自働化に向けたST2機能の活用

  • 1. Copyright©2018 NTT corp. All Rights Reserved. ネットワーク機器の設定自働化に向けた Stackstorm機能の活用 NTT ソフトウェアイノベーションセンタ 福田晴元 Copyright(c)2018 NTT Corp. All Rights Reserved.
  • 2. Copyright©2018 NTT corp. All Rights Reserved. 2 • 本日話題とするStackstormの機能は、 「execution pause」と「execution resume」の停 止・再開機能です。 • 物理機器の増設や更改といった、物理接続や接続変更後の 機器設定時に、これら機能を利用すると想定しています。 • 新設や接続変更の伴う工事では、想定外の状態となる可能性が0で はないため、安全のために一時停止する機能を備える必要がある と考えます。 • 既に構築済みのネットワーク上に、お客様のオーダーに従って設 定を投入するといった、日常的に行われるネットワーク工事では 上記機能の利用機会は少なく、Inquiries機能の利用が想定されま す。 対象とするネットワーク工事
  • 3. Copyright©2018 NTT corp. All Rights Reserved. 3 • Stackstormでは: • Actionと呼ぶコード(Python等)を実行できます。 • 複数のActionをつなげて一連の操作をWorkflowとして記述 (MistralやActionChain)し、このWorkflowを実行できます。 ※StackstormではWorkflowをActionの一種と扱うが、以降では説明のた めにAction(Python等の実コード)とWorkflow(YAMLで記述する MistralやActionChain)と分けた呼び方をします。 StackstormのActionとWorkflow Action 「サーバを起動」 Action 「コンテナを起動」 Action 「Slackにメッセージ送信」 Action 「サーバを起動」 Action 「コンテナを起動」 Action 「Slackにメッセージ送信」 Workflow
  • 4. Copyright©2018 NTT corp. All Rights Reserved. 4 予め想定できない状況への対応方法として利用できそう。。。 • Inquiries機能 • 予めWorkflow内に停止ポイントを記述することができ、アク ション(core.ask)として実装 • Workflowの途中で操作者に問い合わせができ、結果に応じた 処理をWorkflowに記述して実行できる。 (例:承認しますか? OK:続行, NG:終了) • Execution pause|resume機能 • Workflow内に記述することなく、API操作により実行中 Workflowを一時停止・再開することが可能 Stackstormが備える「停止・再開」機能
  • 5. Copyright©2018 NTT corp. All Rights Reserved. 5 • APIを利用し、execution idを指定して、pause, resumeを実行 • PUT/api/v1/executions/{id} • Query_parametersとして、statusに”pausing”もしくは ”resuming”を設定してPUT • Workflow(MistralやActionChain)のみに実行可能 • 実行中のPython等のActionは停止できない(最後まで実行)。 Execution pause|resume running pausing paused resuming pause resume Python等のAction 実行完了待ち
  • 6. Copyright©2018 NTT corp. All Rights Reserved. 6 WFの構成例 ルートWF 子WF Python Action Python Action Python Action Python Action 子WF Python Action Python Action Python Action Python Action 子WF Python Action Python Action Python Action Python Action 子WF Python Action Python Action Python Action Python Action sample1
  • 7. Copyright©2018 NTT corp. All Rights Reserved. 7 • Workflowを多段に構成した場合: • 最上段(ルート)のWorkflowを停止(pause)した場合、子ワークフ ローへ伝わり停止する。 • 中段のWorkflowを停止(pause)した場合には、親と子のワークフ ローへ伝播する。 • 再開(resume)操作は、親ワークフローへ伝播しない。 と書いてあるようだが。。。(resumeも親へ伝播する場合がある) Execution pause|resume ⇒ これらの情報から、pause/resume操作は、 最上段のWorkflowへのAPI操作がよいと思われる。 ※Cancelは全てのWFに行なうこと。
  • 8. Copyright©2018 NTT corp. All Rights Reserved. 8 • ルートWFの判別方法 • GET/api/v1/executions を利用して情報を取得 • WFやActionは、parentやchildrenのキーを持ち、呼出し関係を管 理している。 • parentのキーがなく、childrenのキーのみとなり、 liveaction/action_is_workflowの値がTrueであるもの。 • 実行中・実行済みWFの構造把握 • GET/api/v1/executions/{ルートWFのID}/children で子W F以下を全て取得 • ルートWFからchildrenキーを追いかけて構造把握(でよい?) 参考)WFの構造把握 いままでのところを、実際に試してみましょう。
  • 9. Copyright©2018 NTT corp. All Rights Reserved. 9 実演するWFの構成 ルートWF 子WF Python Action Python Action Python Action Python Action 子WF Python Action Python Action Python Action Python Action 子WF Python Action Python Action Python Action Python Action 子WF Python Action Python Action Python Action Python Action ルートWF 子WF Python Action Python Action Python Action Python Action 子WF Python Action Python Action Python Action Python Action 子WF Python Action Python Action Python Action Python Action 子WF Python Action Python Action Python Action Python Action sample1 sample2
  • 10. Copyright©2018 NTT corp. All Rights Reserved. 10 • Mistral Workflowで、子Actionもしくは子 Workflowを並列に実行した場合に問題が発生する場合 がある。 • WFのchildren情報が一部のみ含まれる。 • 実行中・実行済みWFの構造把握(修正) • GET/api/v1/executions/{ルートWFのID}/children で子 WF以下を全て取得 • ルートWFからchildrenキーを追いかけて構造を把握、かつ、 リーフとなるアクションを探し出し、parentキーを追いかけて 構造を補完 (リーフとなるアクション(parentキーのみのアクション)を探 し出し、parentキーを追いかけて構造を把握するのみでよいと 思われるが、現時点で未試験です) 利用上の問題点