Submit Search
Upload
st2-docker ことはじめ
•
Download as PPTX, PDF
•
2 likes
•
2,318 views
Shu Sugimoto
Follow
StackStorm勉強会 第4会 発表資料 動画→https://youtu.be/j0dyHxDbBT4
Read less
Read more
Software
Report
Share
Report
Share
1 of 18
Download now
Recommended
StackStormを活用した運用自動化の実践
StackStormを活用した運用自動化の実践
Shu Sugimoto
StackStorm Workflowの設計
StackStorm Workflowの設計
Shu Sugimoto
OpenStack & Ansible で実現する自動化
OpenStack & Ansible で実現する自動化
Hideki Saito
Okinawa Open Days 2015 Handson - Ansible
Okinawa Open Days 2015 Handson - Ansible
Hideki Saito
Ansible tower 構築方法と使い方
Ansible tower 構築方法と使い方
Hiroshi Okano
イベント駆動プログラミングとI/O多重化
イベント駆動プログラミングとI/O多重化
Gosuke Miyashita
OpenStackをさらに”使う”技術 - OpenStack&Docker活用テクニック
OpenStackをさらに”使う”技術 - OpenStack&Docker活用テクニック
Etsuji Nakai
自動化ハンズオン
自動化ハンズオン
VirtualTech Japan Inc.
Recommended
StackStormを活用した運用自動化の実践
StackStormを活用した運用自動化の実践
Shu Sugimoto
StackStorm Workflowの設計
StackStorm Workflowの設計
Shu Sugimoto
OpenStack & Ansible で実現する自動化
OpenStack & Ansible で実現する自動化
Hideki Saito
Okinawa Open Days 2015 Handson - Ansible
Okinawa Open Days 2015 Handson - Ansible
Hideki Saito
Ansible tower 構築方法と使い方
Ansible tower 構築方法と使い方
Hiroshi Okano
イベント駆動プログラミングとI/O多重化
イベント駆動プログラミングとI/O多重化
Gosuke Miyashita
OpenStackをさらに”使う”技術 - OpenStack&Docker活用テクニック
OpenStackをさらに”使う”技術 - OpenStack&Docker活用テクニック
Etsuji Nakai
自動化ハンズオン
自動化ハンズオン
VirtualTech Japan Inc.
1st OCDET Baremetal MTG OpenStack baremetal compute by GMO AppsCloud
1st OCDET Baremetal MTG OpenStack baremetal compute by GMO AppsCloud
Naoto Gohko
Ansible2とOpenStackの関係
Ansible2とOpenStackの関係
Hideki Saito
インフラ自動構築エンジン "Ansible"の勘所を1日でつかむ ~基礎入門編~
インフラ自動構築エンジン "Ansible"の勘所を1日でつかむ ~基礎入門編~
Takeshi Kuramochi
Ansible meetuptokyo 2015 Dynamic Inventory
Ansible meetuptokyo 2015 Dynamic Inventory
Hideki Saito
OpenShift from Easy way to Hard ? Way
OpenShift from Easy way to Hard ? Way
ロフト くん
ProjectAtomic-and-geard
ProjectAtomic-and-geard
Naoto TAKAHASHI
Ansibleで始めるインフラ構築自動化
Ansibleで始めるインフラ構築自動化
dcubeio
OpenStackSDK with Ansible
OpenStackSDK with Ansible
Hideki Saito
How to contribute AWX
How to contribute AWX
Hideki Saito
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:講義No2
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:講義No2
Etsuji Nakai
DevStackで始めるCloud FoundryとBOSH
DevStackで始めるCloud FoundryとBOSH
i_yudai
Webアプリケーションによる電源管理システムのご紹介
Webアプリケーションによる電源管理システムのご紹介
npsg
OpenStack Osloを使おう - cliff編
OpenStack Osloを使おう - cliff編
Hideki Saito
nginx入門
nginx入門
Takashi Takizawa
Terraform Bootcamp - Azure Infrastructure as Code隊
Terraform Bootcamp - Azure Infrastructure as Code隊
Toru Makabe
Node.jsv0.8からv4.xへのバージョンアップ ~大規模Push通知基盤の運用事例~
Node.jsv0.8からv4.xへのバージョンアップ ~大規模Push通知基盤の運用事例~
Recruit Technologies
Ansible npstudy-shtsuchi
Ansible npstudy-shtsuchi
Shishio Tsuchiya
Kubernetes をいじって Hardware LoadBalancer で "type LoadBalancer" を実現してみた @Kuberne...
Kubernetes をいじって Hardware LoadBalancer で "type LoadBalancer" を実現してみた @Kuberne...
Masaya Aoyama
Dockerホスティング「Arukas」について(「さくらインターネット」のDockerホスティング「Arukas」と「Docker Machine」ドラ...
Dockerホスティング「Arukas」について(「さくらインターネット」のDockerホスティング「Arukas」と「Docker Machine」ドラ...
さくらインターネット株式会社
Cloud Foundry varz
Cloud Foundry varz
Uemura Yuichi
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
Akihiro Suda
今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月
今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月
VirtualTech Japan Inc.
More Related Content
What's hot
1st OCDET Baremetal MTG OpenStack baremetal compute by GMO AppsCloud
1st OCDET Baremetal MTG OpenStack baremetal compute by GMO AppsCloud
Naoto Gohko
Ansible2とOpenStackの関係
Ansible2とOpenStackの関係
Hideki Saito
インフラ自動構築エンジン "Ansible"の勘所を1日でつかむ ~基礎入門編~
インフラ自動構築エンジン "Ansible"の勘所を1日でつかむ ~基礎入門編~
Takeshi Kuramochi
Ansible meetuptokyo 2015 Dynamic Inventory
Ansible meetuptokyo 2015 Dynamic Inventory
Hideki Saito
OpenShift from Easy way to Hard ? Way
OpenShift from Easy way to Hard ? Way
ロフト くん
ProjectAtomic-and-geard
ProjectAtomic-and-geard
Naoto TAKAHASHI
Ansibleで始めるインフラ構築自動化
Ansibleで始めるインフラ構築自動化
dcubeio
OpenStackSDK with Ansible
OpenStackSDK with Ansible
Hideki Saito
How to contribute AWX
How to contribute AWX
Hideki Saito
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:講義No2
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:講義No2
Etsuji Nakai
DevStackで始めるCloud FoundryとBOSH
DevStackで始めるCloud FoundryとBOSH
i_yudai
Webアプリケーションによる電源管理システムのご紹介
Webアプリケーションによる電源管理システムのご紹介
npsg
OpenStack Osloを使おう - cliff編
OpenStack Osloを使おう - cliff編
Hideki Saito
nginx入門
nginx入門
Takashi Takizawa
Terraform Bootcamp - Azure Infrastructure as Code隊
Terraform Bootcamp - Azure Infrastructure as Code隊
Toru Makabe
Node.jsv0.8からv4.xへのバージョンアップ ~大規模Push通知基盤の運用事例~
Node.jsv0.8からv4.xへのバージョンアップ ~大規模Push通知基盤の運用事例~
Recruit Technologies
Ansible npstudy-shtsuchi
Ansible npstudy-shtsuchi
Shishio Tsuchiya
Kubernetes をいじって Hardware LoadBalancer で "type LoadBalancer" を実現してみた @Kuberne...
Kubernetes をいじって Hardware LoadBalancer で "type LoadBalancer" を実現してみた @Kuberne...
Masaya Aoyama
Dockerホスティング「Arukas」について(「さくらインターネット」のDockerホスティング「Arukas」と「Docker Machine」ドラ...
Dockerホスティング「Arukas」について(「さくらインターネット」のDockerホスティング「Arukas」と「Docker Machine」ドラ...
さくらインターネット株式会社
Cloud Foundry varz
Cloud Foundry varz
Uemura Yuichi
What's hot
(20)
1st OCDET Baremetal MTG OpenStack baremetal compute by GMO AppsCloud
1st OCDET Baremetal MTG OpenStack baremetal compute by GMO AppsCloud
Ansible2とOpenStackの関係
Ansible2とOpenStackの関係
インフラ自動構築エンジン "Ansible"の勘所を1日でつかむ ~基礎入門編~
インフラ自動構築エンジン "Ansible"の勘所を1日でつかむ ~基礎入門編~
Ansible meetuptokyo 2015 Dynamic Inventory
Ansible meetuptokyo 2015 Dynamic Inventory
OpenShift from Easy way to Hard ? Way
OpenShift from Easy way to Hard ? Way
ProjectAtomic-and-geard
ProjectAtomic-and-geard
Ansibleで始めるインフラ構築自動化
Ansibleで始めるインフラ構築自動化
OpenStackSDK with Ansible
OpenStackSDK with Ansible
How to contribute AWX
How to contribute AWX
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:講義No2
OpenStackクラウド基盤構築ハンズオンセミナー 第1日:講義No2
DevStackで始めるCloud FoundryとBOSH
DevStackで始めるCloud FoundryとBOSH
Webアプリケーションによる電源管理システムのご紹介
Webアプリケーションによる電源管理システムのご紹介
OpenStack Osloを使おう - cliff編
OpenStack Osloを使おう - cliff編
nginx入門
nginx入門
Terraform Bootcamp - Azure Infrastructure as Code隊
Terraform Bootcamp - Azure Infrastructure as Code隊
Node.jsv0.8からv4.xへのバージョンアップ ~大規模Push通知基盤の運用事例~
Node.jsv0.8からv4.xへのバージョンアップ ~大規模Push通知基盤の運用事例~
Ansible npstudy-shtsuchi
Ansible npstudy-shtsuchi
Kubernetes をいじって Hardware LoadBalancer で "type LoadBalancer" を実現してみた @Kuberne...
Kubernetes をいじって Hardware LoadBalancer で "type LoadBalancer" を実現してみた @Kuberne...
Dockerホスティング「Arukas」について(「さくらインターネット」のDockerホスティング「Arukas」と「Docker Machine」ドラ...
Dockerホスティング「Arukas」について(「さくらインターネット」のDockerホスティング「Arukas」と「Docker Machine」ドラ...
Cloud Foundry varz
Cloud Foundry varz
Similar to st2-docker ことはじめ
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
Akihiro Suda
今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月
今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月
VirtualTech Japan Inc.
Kubernetes、Flannel、CNIでWindows Container Clusterオーケストレーション
Kubernetes、Flannel、CNIでWindows Container Clusterオーケストレーション
Takashi Kanai
今さら聞けない人のためのDocker超入門 CentOS 7.2対応版
今さら聞けない人のためのDocker超入門 CentOS 7.2対応版
VirtualTech Japan Inc.
Kubernetes + containerd で cgroup v2 に移行したら "failed to create fsnotify watcher...
Kubernetes + containerd で cgroup v2 に移行したら "failed to create fsnotify watcher...
Preferred Networks
20150101勉強会 dokku alt
20150101勉強会 dokku alt
Shugo Numano
今さら聞けない人のためのDocker超入門
今さら聞けない人のためのDocker超入門
Toru Miyahara
WSL2+docker+JupyterとVS Codeリモート環境の構築
WSL2+docker+JupyterとVS Codeリモート環境の構築
Saito5656
20130803 OSC@Kyoto CloudStackユーザー会
20130803 OSC@Kyoto CloudStackユーザー会
samemoon
Introduction of skippbox
Introduction of skippbox
Go Chiba
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
NTT DATA Technology & Innovation
ヤギにサーバーを管理してもらう話
ヤギにサーバーを管理してもらう話
Masaki Kobayashi
仮想化技術として注目されているDocker入門 - PASONATECH ADVANTAGE SEMINAR
仮想化技術として注目されているDocker入門 - PASONATECH ADVANTAGE SEMINAR
VirtualTech Japan Inc.
今さら聞けない人のためのDocker超入門 - KOF
今さら聞けない人のためのDocker超入門 - KOF
VirtualTech Japan Inc.
Traffic Management with Istio
Traffic Management with Istio
ロフト くん
Dockerの仕組みとIIJ社内での利用例
Dockerの仕組みとIIJ社内での利用例
maebashi
Docker & Kubernetes基礎
Docker & Kubernetes基礎
Daisuke Hiraoka
Introduction to Magnum (JP)
Introduction to Magnum (JP)
Motohiro OTSUKA
PTLのお仕事とリリースパイプラインの裏側
PTLのお仕事とリリースパイプラインの裏側
masahito12
今さら聞けない人のためのDocker超入門
今さら聞けない人のためのDocker超入門
VirtualTech Japan Inc./Begi.net Inc.
Similar to st2-docker ことはじめ
(20)
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月
今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月
Kubernetes、Flannel、CNIでWindows Container Clusterオーケストレーション
Kubernetes、Flannel、CNIでWindows Container Clusterオーケストレーション
今さら聞けない人のためのDocker超入門 CentOS 7.2対応版
今さら聞けない人のためのDocker超入門 CentOS 7.2対応版
Kubernetes + containerd で cgroup v2 に移行したら "failed to create fsnotify watcher...
Kubernetes + containerd で cgroup v2 に移行したら "failed to create fsnotify watcher...
20150101勉強会 dokku alt
20150101勉強会 dokku alt
今さら聞けない人のためのDocker超入門
今さら聞けない人のためのDocker超入門
WSL2+docker+JupyterとVS Codeリモート環境の構築
WSL2+docker+JupyterとVS Codeリモート環境の構築
20130803 OSC@Kyoto CloudStackユーザー会
20130803 OSC@Kyoto CloudStackユーザー会
Introduction of skippbox
Introduction of skippbox
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
ヤギにサーバーを管理してもらう話
ヤギにサーバーを管理してもらう話
仮想化技術として注目されているDocker入門 - PASONATECH ADVANTAGE SEMINAR
仮想化技術として注目されているDocker入門 - PASONATECH ADVANTAGE SEMINAR
今さら聞けない人のためのDocker超入門 - KOF
今さら聞けない人のためのDocker超入門 - KOF
Traffic Management with Istio
Traffic Management with Istio
Dockerの仕組みとIIJ社内での利用例
Dockerの仕組みとIIJ社内での利用例
Docker & Kubernetes基礎
Docker & Kubernetes基礎
Introduction to Magnum (JP)
Introduction to Magnum (JP)
PTLのお仕事とリリースパイプラインの裏側
PTLのお仕事とリリースパイプラインの裏側
今さら聞けない人のためのDocker超入門
今さら聞けない人のためのDocker超入門
st2-docker ことはじめ
1.
INTERNET MULTIFEED CO.Copyright
© st2-docker ことはじめ Shu Sugimoto JPNAP / INTERNET MULTIFEED CO. @st2勉強会#4 2018-05-29(Tue)
2.
INTERNET MULTIFEED CO.Copyright
© 今日の内容 • st2-dockerとは? • st2-dockerを使って環境を構築した際のTips共有 • StackStorm on Kubernetes • [参考] 弊社におけるStackStorm利用状況 • 商用環境で利用中 • デプロイはst2-dockerを利用しコンテナで実施 • HAは未 • Mistralメイン • カスタムパックを開発して利用が主 • 事例 (昨年の勉強会第2回で発表したもの) • https://www.slideshare.net/shusugimoto1986/ixstackstorm 2
3.
INTERNET MULTIFEED CO.Copyright
© st2-docker • StackStorm “公式” Dockerイメージ • https://github.com/StackStorm/st2-docker • 2017年4月、正式リリース • st2-dockefiles というunofficialなやつがある • https://github.com/StackStorm/st2-dockerfiles • こちらは主に「開発用イメージ」 • デプロイして使う用途には適さないので要注意! • ユーザーとして使うことは殆どない 3
4.
INTERNET MULTIFEED CO.Copyright
© おさらい:StackStormの内部構成要素 4 https://docs.stackstorm.com/reference/ha.html の部分がStackStormのプロセス → 複数のプロセスの集合体が「StackStorm」を成している
5.
INTERNET MULTIFEED CO.Copyright
© st2-dockerの中身 • ベースイメージはUbuntu 14.04 • upstartで1コンテナ内でマルチプロセスを実現 • !!? → あとで。 • mongodb/rabbitmq/postgres/redis は外部コンテナで用意して あげる必要がある • レポジトリ内のdocker-compose.ymlを使うと(ほぼ)コマンド一 発でStackStormが動く環境を構築出来る 5 git clone git@github.com:stackstorm/st2-docker.git cd st2-docker make env docker-compose up –d Docker-compose exec stackstorm bash
6.
INTERNET MULTIFEED CO.Copyright
© st2-dockerの使い所 • 適している • ちょっとStackStorm試してみたい • Packの開発環境 • 適していない • StackStorm/st2自体の開発 • cf. st2vagrant • https://github.com/StackStorm/st2vagrant • コンテナ vs VMの差 • コンテナの方が起動までの手数は少なく、べき等性の担保はし やすい • ??? • 商用環境へのデプロイ 6
7.
INTERNET MULTIFEED CO.Copyright
© “Is st2-docker production ready?” • “This official image is simple for quick evaluations; convenient for building automations, yet solid enough for light-to-medium production use.” • 商用でも使える、というのが公式見解 • 弊社でもproduction/staging/lab環境全てst2-dockerで運用中 7
8.
INTERNET MULTIFEED CO.Copyright
© st2-docker in production: Tips • レポジトリのdocker-compose.ymlはそのままではほぼ使えない • 少なくとも商用ではイメージバージョンの固定は必要 • image: stackstorm/stackstorm:latest@sha256:9a02d5d… • その他、カスタマイズ例 • SSLの証明書のbind mountの追加 • コンテナ再起動ポリシーの追加 • restart: always • 弊社では別ブランチにローカルの変更を全てcommitし、社 内レポジトリで管理 • バージョンアップは比較的ラク? • 2.6.0 -> 2.7.2はイメージ入れ替えるだけでおしまい • Upgrade Notesちゃんと読む 8
9.
INTERNET MULTIFEED CO.Copyright
© st2-docker in production: Tips • /etc/st2/st2.conf 等に対する設定変更は全てentrypoint.dに置 いたシェルスクリプトで実施出来る • カスタムイメージをビルドするよりは手軽 • シェルスクリプトもgitに入れてしまえば変更管理しやすい • 弊社でやっていること • LDAP認証(コミュニティ版)の設定 • Action output streamingの有効化 • crudiniでst2.confを変更している • st2chatopsの設定ファイルの設置 • catとリダイレクトの組み合わせ • あまりいろいろやりすぎると起動が遅くなる • packに必要なlib系パッケージのapt-get installが多い場合はカ スタムイメージ作成を推奨 9
10.
INTERNET MULTIFEED CO.Copyright
© st2-docker in production: Tips • StackStormを公式Dockerイメージで動かす際のTips https://qiita.com/shusugmt/items/18b5f4e44c720aae47ae • st2clientを使ってリモート(st2-docker)のst2を操作する https://qiita.com/shusugmt/items/0c88cc9cbc474fe4ced5 10
11.
INTERNET MULTIFEED CO.Copyright
© “Is st2-docker production ready?” (cont’d) • “This official image is simple for quick evaluations; convenient for building automations, yet solid enough for light-to-medium production use.” • heavy production use • 大量のワークフローを処理している • 高可用性が必要である • => st2-docker 1ppc mode + Kubernetes 11
12.
INTERNET MULTIFEED CO.Copyright
© 1ppc mode • 通常モード • upstartで複数プロセスを1コンテナ内で起動 • VMに近い使用感 • デフォルト • 1ppc mode • 1プロセス1コンテナ化したもの • 以前のst2-dockerfilesで実現されていた物に近い • 実験段階/公式未サポート • 1プロセス1コンテナ化されたことで、各コンポーネント (st2api/st2auth/st2actionrunner/etc…)単位でスケールアウト することが可能に 12
13.
INTERNET MULTIFEED CO.Copyright
© st2-docker 1ppc trial w/docker-compose • とりあえず1ppcどんな感じで動くか見てみたい、という方のため に、すぐ使えるdocker-compose.ymlも用意されている • https://github.com/StackStorm/st2- docker/blob/master/runtime/compose-1ppc/ • https://github.com/StackStorm/st2- docker/blob/master/runtime/compose-1ppc/docker-compose.yml • ※あくまでも1ppcお試し用。商用利用NG! • とりあえずスケールアウトさせてみる 13 docker-compose up –d docker-compose up --scale st2actionrunner=3 –d docker-compose ps # 詳細手順はruntime/compose-1ppc/README.md参照
14.
INTERNET MULTIFEED CO.Copyright
© st2-docker 1ppc + Kubernetes • Kubernetes おさらい • コンテナオーケストレーション • 冗長化とスケールアウトを容易に実現可能 • (もとは)Google発プロダクト • st2 on k8s sample manifests • https://github.com/StackStorm/st2- docker/blob/master/runtime/kubernetes-1ppc/ • ※まだ実験段階。あくまでサンプル。 • HA構成の課題はKubernetes化しても同じ • 共有ストレージ • Sensor partitioning 14
15.
INTERNET MULTIFEED CO.Copyright
© st2 on k8s: Tips • 共有ストレージ問題 • /opt/stackstorm/packs等をどうやって管理するか? • k8sでRead-Write-Many(RWX)なストレージバックエンドは サポートがまだ手薄 • GKE/GCPではデフォルトでは方法なし • 個人的にオススメは「pack/virtualenv等、必要なファイルを すべて焼き込んだイメージを作る」 • RWXストレージが不要に • configはConfigMapを使ってマウントする • サンプル • https://github.com/shusugmt/st2-docker-pack- prebuild-example 15
16.
INTERNET MULTIFEED CO.Copyright
© st2 on k8s まとめ • まだ公式的には実験段階かつ、解決すべき課題はたくさんあるが、 StackStorm on KubernetesはHA化に対する一つの解として期 待大! • すでに一部のユーザーでは実際にKubernetes環境で運用してい るところもある 16
17.
INTERNET MULTIFEED CO.Copyright
© Roadmap / Future plans • Helm Chart • https://github.com/StackStorm/st2-docker/pull/126 • Kubernetesへの親和性拡大 • 環境変数でコントロール出来る項目の拡大 • mongo/rabbitmq等の外部システムはURL指定可能に • ActiveMQの利用ももしかしたら可能→AWS EKSで外部サービ スのフルマネージド化へ • ベースイメージの更新 • Python 2.7.6問題 • (おそらく)ターゲットはUbuntu 18.04 • systemd化待ったなし 17
18.
INTERNET MULTIFEED CO.Copyright
© 18 Questions?
Download now