SlideShare a Scribd company logo
1 of 121
@zembutsu
Nov 27, 2015
Our Survival Strategies,
Microservices,
and HashiCorp
DevOps/マイクロサービスセミナー
~導入事例から考える、マイクロ サービスを実現する
コンセプトと技術~ at マイクロソフト@品川
背景画像CREDIT:videodoctor / PIXTA(ピクスタ)
https://pixta.jp/@prof306848
@zembutsu
Nov 27, 2015
Our Survival Strategies,
Microservices,
and HashiCorp
今日の内容
‣ 1. 生存戦略――Microserviceの課題
‣ 2. "技術"ではなく、"ワークフロー"が真の課題
‣ 3. HashiCorpは何を解決するのか?
‣ ツール概要
‣ Nomad は Docker 等のスケジューラ
‣ Otto は Vagrant の後継ソフト
3
自己紹介
‣ @zembutsu a.k.a. 前佛雅人
- Technology Evangelist; Creationline, Inc. – 2 yrs
- Data Center Operations Engineer – 15+ yrs
興味関心:運用監視自動化、趣味でOSSやクラウド系の検証・情報発信
- SlideShare http://slideshare.net/zembutsu
- Blog http://pocketstudio.jp/log3
書籍・記事
- Serf/Consulで管理を自動化! (Gihyo.jp)
http://gihyo.jp/admin/feature/01/serf-consul
- HashiCorpのツール群からみる
インフラ構築運用の未来 (Think IT)
http://thinkit.co.jp/book/2015/03/05/5700
Why am I here?
+MasahitoZembutsu
ISBN-10: 4844339265 ISBN-10: 4774174416 ISBN-10: 4798139785
役職的にはテクノロジー・エバン
ジェリストではありますが、基本
となったのは、データセンタでの
運用経験だと思っています。
Software Design 12 月号
第一特集
「Docker自由自在」に
寄稿の機会をいただきました。
最近、こんな所で寄稿の機会を
いただきました。もしDockerに
ご興味をお持ちであれば、コン
パクトに情報をまとめますので、
是非どうぞ!
Docker日本語ドキュメント
翻訳プロジェクト
はじめました
http://docs.docker.jp/
Dockerドキュメントに対する翻訳
プロジェクトも始めました。よろ
しければご利用&ご協力いただ
ければ幸いです。
一応、会社としては、このような
パートナーですが……今回では
押し売りはしませんのでご安心を。
なぜならば…
目的なく導入しても、橋は落ちる
でしょうし、
当然、コンテナも炎上し…
後には、残骸しか残らないかも
しれません。。
最近の個人的なテーマ
「刺身タンポポ」「写経」殲滅
「人」でスケールする時代は、
終わらせませんか?
背景画像CREDIT:videodoctor / PIXTA(ピクスタ)
https://pixta.jp/@prof306848
@zembutsu
Nov 27, 2015
Our Survival Strategies,
Microservices,
and HashiCorp
今日の内容
‣ 1. 生存戦略――Microserviceの課題
‣ 2. "技術"ではなく"ワークフロー"が真の課題
‣ 3. HashiCorpは何を解決するのか?
‣ ツール概要
‣ Nomad は Docker 等のスケジューラ
‣ Otto は Vagrant の後継ソフト
さて、改めて今日の内容です。
背景画像CREDIT:videodoctor / PIXTA(ピクスタ)
https://pixta.jp/@prof306848
@zembutsu
Nov 27, 2015
Our Survival Strategies,
Microservices,
and HashiCorp
生存戦略
せ い ぞ ん せ ん り ゃ く
生存 戦略
せ い ぞ ん せ ん り ゃ く
生物が生命を持ち続けること。
Life
一般的には特定の目標を達成するために、
長期的視野と複合思考で力や資源を総合
的に運用する技術・科学である
Strategy
生存 戦略
せ い ぞ ん せ ん り ゃ く
生物が生命を持ち続けること。
Life
一般的には特定の目標を達成するために、
長期的視野と複合思考で力や資源を総合
的に運用する技術・科学である
Strategy
生存
生存
戦略
M i c ro s e r v i c e s
マイクロサービス
HashiCorp
Survive
■□□
マイクロサービスやコンテナの
時代とは
この先生きのこる
3つのキーワード
「ペット」から「家畜」の時代
今日の重要ワード
その1
水 金 地 月 火 木 土 天 冥 海
Mercury Venus Earth Moon Mars Jupiter Saturn Uranus Pluto Neptune
例えば、何を連想されますか?
水 金 地 月 火 木 土 天 冥 海
Mercury Venus Earth Moon Mars Jupiter Saturn Uranus Pluto Neptune
コンピュータ資源が
貴重だった時代
コンピュータ資源が
空気のような時代
物理サーバ
PC
仮想サーバ
クラウド
コンテナ ← New!
IoTデバイス ← New!
ホスト名
あの日セットアップしたサーバの名前を僕達はまだ知らない
あの日セットアップしたサーバの名前を僕達はまだ知らない
シ ス テ ム
私たちは
生きのびることができるのか?
https://twitter.com/zembutsu/status/662775482207764481
引用:「ネ申 Excel」問題 奥村晴彦@三重大学
http://oku.edu.mie-u.ac.jp/~okumura/SSS2013slide.pdf
Microservices
Docker
Dockerです。
ご指導ご鞭撻、よろしくです。
コンテナ管理
たったひとつの冴えたやりかた
The Only Neat Things to Do
たったひとつの冴えたやりかた
The Only Neat Things to Do
そんなの、有りえません。
https://nomadproject.io/
https://ottoproject.io/
という、ツールありきでも決して
ありません。あくまで選択肢。
人でスケールする時代の終焉
「自由」のための「選択肢」
今日の重要ワード
その2
ラジオペンチ
Needle-nose pliers
ペンチ
pliers
手
hands
モンキーレンチ
Adjustable wrench
めがねレンチ
box-end wrench
ラチェットレンチ
Ratchet wrench
スパナ
Open-end wrench
コンビネーションレンチ
chrome-vanadium wrench
「技術」ではなく、「業務手順」
今日の重要ワード
その3
Workflows, not Technology
たとえば
耕す
(トラクター)
植える
(田植え機)
稲刈り
(コンバイン)
工程管理
(カレンダー)
開発環境
(Vagrant)
環境構築・デプロイ
(Packer, Terraform)
継続的監視
(Consul)
スケジューラ
おいしい米をつくりたい! 素敵なサービスやプロダクトを
つくりたい!
Simple, Modular, Composable
籾(乾燥済み)
籾搬入口
異物除去
光学色選別器
米搬出口
梱包
昇降
装置
未熟米除去
石除去
脱穀機
籾殻排出口
Simple, Modular,
Composable
選択肢を知らないのは
技術者としての怠慢
知っていないし、使わない
知っているけど、使わない
HashiCorp のツールは、
何らかの目的を実現するための
様々な選択と組み合わせを提供
生存
戦略
M i c ro s e r v i c e s
マイクロサービス
HashiCorp
目標
まず、目標があって、
目標
戦略
・Microservices
Architecture
・DevOps
目標
戦略
手法
大丈夫だ
問題ない!
「そんな装備で大丈夫か?」
・Microservices
Architecture
・DevOps
・Docker
・HashiCorp
戦略
のようなもの
手法
のようなもの
大丈夫だ
問題ない!
「そんな装備で大丈夫か?」
・Microservices
・Docker
・HashiCorp
・???
・アジャイル?
・クラウド??
目標が無い状態で進むと…
戦略
のようなもの
手法
のようなもの
大丈夫だ
問題ない!
「そんな装備で大丈夫か?」
・???
・オープンソース?
・Microservices
・Docker
・HashiCorp
・???
・アジャイル?
・クラウド??
目標
死
樹海まっしぐらでは…。
生存
戦略
M i c ro s e r v i c e s
マイクロサービス
HashiCorp
「ペット」から「家畜」の時代
「自由」のための「選択肢」
「技術」ではなく、「ワークフロー」
HashiCorp
■■□
61
HashiCorp
“Powering the software-managed datacenter.”
‣ 2012年設立
Mitchell Hashimoto氏が2010年に開発・発表したVagrantが前身
‣ データセンタ管理に革命をもたらす目的
仮想・物理・コンテナ・クラウド等を組みあわせる状況、その時に生まれる溝を埋めるものを提供
‣ オープンソースで開発過程が公開
設立以後も、コードが公開されているだけでなく、GitHub・IRC で誰でも意見表明できる
62
‣ 技術ありきではなく、どのように実現するか?
最も簡単にするためのワークフローを考え、そこに対応するツールが無ければ作るという設計思想
‣ 単純・モジュール型・組みあわせ可能
Unix哲学と同様、全体の問題を解決するのではなく、個々の要素(コンポーネント)に分解
‣ コードで管理・弾力的システム・実用主義
システムや基盤に対するバージョン管理や自動化によって、システムにとっても人にとっても利点となる
The Tao of HashiCorp
※参考:The Tao of HashiCorp 日本語参考訳 | Pocketstudio.jp log3
http://pocketstudio.jp/log3/2015/03/14/the-tao-of-hashicorp/
同じ手順(ワークフロー)なら
効率的に出来ないか?
「品質」=「速さ」×「正確さ」
https://nomadproject.io/
https://ottoproject.io/
vagrant up packerbuild terraform apply
otto dev otto build otto deploy
オープン
ソース
Web
インター
フェース
セキュリ
ティ
CLI 共同作業 管理機能コア機能
Git GitHub
Otto Atlas
Nomad and Otto
■■■
Nomad
分散スケジューラ
Distributed Scheduler
デプロイを簡単に
Easily Deploy Applications
ジョブの詳細設計
Job Specification
コンテナ化
Containerized
仮想化
Virtualized
スタンドアローン
Standalone
Docker
Qemu / KVM
Java Jar
バイナリの実行
Nomad対応環境
Nomad
アプリのデプロイ
Application Deployment
Dockerコンテナ対応
Docker
柔軟なワークロード
Flexible Workloads
リソースを最大限に集約
Bin Packing
HCLによるジョブ定義
HCL Job Specifications
75
‣ マイクロサービスのプラットフォーム
MicroservicesやSOAはアプリケーションの設計が複雑化しているが、その基盤としてNomadを使う
‣ パブリック・クラウドへのデプロイ
マルチリージョン&マルチデータセンタ機能により、複数のクラウド環境、物理環境を併用できる
‣ ECサイト
長期間稼働するウェブサービスやバッチ処理のバックエンドにおいて、
あらゆるワークロードをクラスタで共有するので、稼働率の向上やコスト削減につながる
使用例の一部
76
Nomad Amazon ECS Dockre Swarm HTCondor Kubernetes
Mesos with
Aurora,Marathon Terraform Hadoop YARN
ツールの役割
クラスタ管理とスケ
ジューラ
EC2に対応したクラス
タ・マネージャ
Dockerコンテナ向け
のクラスタリング・ソ
リューション
グリッド/コンピュー
ティング環境における
バッチ処理
Dockerを基盤とした
クラスタ管理、スケ
ジューリング、サービ
ス・ディスカバリ、管
理、シークレット管理
リソースマネージャと、
フレームワークと組み
あわせたスケジューリ
ングやジョブ管理
インフラ環境の自動
的な構築・変更と、
バージョン管理
リソース管理とジョブ
スケジューリング
クラスタ管理対象 あらゆる環境 AWSのみ Docker コンテナのみ あらゆる環境 Docker コンテナ あらゆる環境 あらゆる環境 あらゆる環境
対応環境 パブリッククラウド ○ △ ○ ○ ○ ○ ○ ○
プライベートクラウド ○ × ○ ○ ○ ○ ○ ○
仮想化環境 ○ × ○ ○ ○ ○ ○ ○
物理サーバ ○ × ○ ○ ○ ○ ○ ○
リソース管理 ○ ○ ○ × ○ ○ △ ○
ジョブの抽象化 ○ ○ × ○ ○ ○ × ○
アプリケーションの実行 ○ ○ ○ × ○ ○ × △
可用性 ○ ○ △ × ○ ○ △ ○
スケーラビリティ ○ ○ ○ ○ ○ × ○ ○
マルチ・データセンタ ○ × × × × × ○ ×
Nomad vs. スケジューラ
参考:Nomad vs. Other Software - Nomad by HashiCorp
https://nomadproject.io/intro/vs/index.html
サーバ
(リーダー)
サーバ
(フォロワー)
サーバ
(フォロワー)
クライアント クライアント クライアント
RPC RPC RPC
レプリケーション レプリケーション
転送 転送
78
‣ セットアップ
Nomad の使い方
$ cd /tmp
$ wget -O nomad.zip https://dl.bintray.com/mitchellh/nomad/nomad_0.1.2_linux_amd64.zip
$ unzip nomad.zip
$ sudo mv nomad /usr/bin/nomad
$ sudo chmod 755 /usr/bin/nomad
$ sudo mkdir /etc/nomad.d
$ sudo 757 /etc/nomad.d
zem@dev:~$ sudo nomad agent -dev
==> Starting Nomad agent...
==> Nomad agent configuration:
Atlas: <disabled>
Client: true
Log Level: DEBUG
Region: global (DC: dc1)
Server: true
==> Nomad agent started! Log data will stream in below:
2015/10/08 23:02:28 [INFO] serf: EventMemberJoin: dev.docker.jp.global 127.0.0.1
2015/10/08 23:02:28 [INFO] nomad: starting 1 scheduling worker(s) for [service batch _core]
2015/10/08 23:02:28 [INFO] raft: Node at 127.0.0.1:4647 [Follower] entering Follower state
zem@dev:~$ nomad node-status
ID DC Name Class Drain Status
2b4b3259-f143-2abf-46d4-62905268263e dc1 dev.docker.jp <none> false ready
zem@dev:~$ nomad server-members
Name Addr Port Status Proto Build DC Region
dev.docker.jp.global 127.0.0.1 4648 alive 2 0.1.2 dc1 global
# There can only be a single job definition per file.
# Create a job with ID and Name 'example'
job "example" {
# Run the job in the global region, which is the default.
# region = "global"
# Specify the datacenters within the region this job can run in.
datacenters = ["dc1"]
# Service type jobs optimize for long-lived services. This is
# the default but we can change to batch for short-lived tasks.
# type = "service"
# Priority controls our access to resources and scheduling priority.
# This can be 1 to 100, inclusively, and defaults to 50.
# priority = 50
# Restrict our job to only linux. We can specify multiple
# constraints as needed.
constraint {
attribute = "$attr.kernel.name"
value = "linux"
}
# Configure the job to do rolling updates
update {
# Stagger updates every 10 seconds
stagger = "10s"
# Update a single task at a time
max_parallel = 1
}
# Create a 'cache' group. Each task in the group will be
# scheduled onto the same machine.
group "cache" {
# Control the number of instances of this groups.
# Defaults to 1
# count = 1
# Define a task to run
task "redis" {
# Use Docker to run the task.
driver = "docker"
# Configure Docker driver with the image
config {
image = "redis:latest"
}
# We must specify the resources required for
# this task to ensure it runs on a machine with
# enough capacity.
resources {
cpu = 500 # 500 Mhz
memory = 256 # 256MB
network {
mbits = 10
dynamic_ports = ["6379"]
}
}
}
}
}
zem@dev:~$ nomad init
Example job file written to example.nomad
zem@dev:~$ nomad run example.nomad
==> Monitoring evaluation "88fc77ac-d878-b27f-925c-c0e131658ac6"
Evaluation triggered by job "example"
Allocation "1170083d-dd2c-92ec-1e29-44f25eb3de75" created: node "2b4b3259-f143-2abf-46d4-629
05268263e", group "cache"
Evaluation status changed: "pending" -> "complete"
==> Evaluation "88fc77ac-d878-b27f-925c-c0e131658ac6" finished with status "complete"
2015/10/08 23:59:57 [DEBUG] driver.docker: docker pull redis:latest succeeded
2015/10/08 23:59:57 [DEBUG] driver.docker: using image 2f2578ff984f013c9a5d6cbb6fe061ed3f73…
2015/10/08 23:59:57 [INFO] driver.docker: identified image redis:latest as 2f2578ff984f013c…
2015/10/08 23:59:57 [DEBUG] driver.docker: using 268435456 bytes memory for redis:latest
2015/10/08 23:59:57 [DEBUG] driver.docker: using 500 cpu shares for redis:latest
2015/10/08 23:59:57 [WARN] driver.docker: no mode specified for networking, defaulting to bridge
2015/10/08 23:59:57 [DEBUG] driver.docker: using bridge as network mode
2015/10/08 23:59:57 [DEBUG] driver.docker: allocated port 128.199.223.107:44054 -> 6379 (mapped)
2015/10/08 23:59:57 [INFO] driver.docker: created container ca2c4efd37e4c5dee82da48fce248e…
2015/10/08 23:59:57 [INFO] driver.docker: started container ca2c4efd37e4c5dee82da48fce248e…
zem@dev:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES
ca2c4efd37e4 redis:latest "/entrypoint.sh redis" 49 seconds ago Up 49
seconds 128.199.223.107:44054->6379/tcp desperate_mayer
zem@dev:~$ nomad status example
ID = example
Name = example
Type = service
Priority = 50
Datacenters = dc1
Status = <none>
==> Evaluations
ID Priority TriggeredBy Status
88fc77ac-d878-b27f-925c-c0e131658ac6 50 job-register complete
==> Allocations
ID EvalID NodeID
TaskGroup Desired Status
1170083d-dd2c-92ec-1e29-44f25eb3de75 88fc77ac-d878-b27f-925c-c0e131658ac6 2b4b3259-f143-2abf-
46
d4-62905268263e cache run running
zem@dev:~$ nomad run example.nomad
==> Monitoring evaluation "8a72b095-79fc-f521-acea-463fd049d36c"
Evaluation triggered by job "example"
Allocation "5f4dfa20-ed30-18fb-9a18-300a374f2eac" created: node "2b4b3259-f143-2abf-46d4-
62905268263e", group "cache"
Allocation "fa612324-877a-c589-4c03-87b393a7e721" created: node "2b4b3259-f143-2abf-46d4-
62905268263e", group "cache"
Allocation "1170083d-dd2c-92ec-1e29-44f25eb3de75" modified: node "2b4b3259-f143-2abf-46d4-
62905268263e", group "cache"
Evaluation status changed: "pending" -> "complete"
==> Evaluation "8a72b095-79fc-f521-acea-463fd049d36c" finished with status "complete"
zem@dev:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES
376c15af6b8f redis:latest "/entrypoint.sh redis" 1 seconds ago Up Less
than a second 128.199.223.107:58268->6379/tcp prickly_visvesvaraya
2a78baaa8ec7 redis:latest "/entrypoint.sh redis" 1 seconds ago Up Less
than a second 128.199.223.107:29865->6379/tcp mad_fermi
ca2c4efd37e4 redis:latest "/entrypoint.sh redis" 5 minutes ago Up 5
minutes 128.199.223.107:44054->6379/tcp desperate_mayer
86
‣ リソース管理とスケジュールを簡単に行える
'nomad' コマンドを使うだけで、複雑になりがちな分散環境における任意のリソースを管理
‣ 環境に依存しない
特定のクラウド・仮想化システムによる制限を受けないし、併用して使い分けられる
‣ クライアント・サーバ型のアーキテクチャ
基本になっている技術は、Serf の Gossip プロトコル、Consul の Raft プロトコルと同じ
‣ Dockerコンテナを始めとして様々なジョブを処理
対応環境はDocker、仮想化、通常のバイナリに対応している
Nomad まとめ
One more thing...
Otto
Otto
Vagrant後継ソフト
The Successor to Vagrant
Vagrantから学んだ多くの知見
それを反映したのが Otto
Otto
開発環境は類似
Development environments are similar
開発者はデプロイしたい
Developers want to deploy
マイクロサービスは未来
Microservices are the future
vagrant up packerbuild terraform apply
otto dev otto build otto deploy
otto dev otto infra otto deployotto build
otto Compile
Appfile
94
Ottoの主な機能
‣ 開発環境の自動構築 ( otto dev, otto build )
アプリケーションの種類に応じて、依存関係のあるパッケージやサービスを自動的に構築する
‣ デプロイ ( otto deploy )
クラウド環境だけでなく、リモートでの環境構築やアプリケーションのデプロイを単一コマンドで実行可能
‣ HashiCorpのツールと連携
‣ 環境をコードで管理
Appfile ( Vagrantfile に相当するようなもの )
95
application {
name = "my-app"
type = "ruby"
dependency {
source = "github.com/hashicorp/otto/examples/postgresql"
}
}
customization "ruby" {
ruby_version = "2.1"
}
Appfile
96
‣ otto dev ( vagrant up 相当 )
otto dev ssh
otto dev address
otto dev destroy
‣ otto infra ( terraform apply 相当 )
‣ otto build ( packer build 相当 )
‣ otto deploy
コマンド実行例
97
Ottoを使うには
‣ 対応OS
Windows, Mac OS X, Linux
‣ ダウンロード
https://ottoproject.io/downloads.html
‣ チュートリアル
https://ottoproject.io/intro/getting-started/install.html
$ cd /tmp
$ wget -O otto.zip https://dl.bintray.com/mitchellh/otto/otto_0.1.1_linux_amd64.zip
$ unzip otto.zip
$ sudo mv otto /usr/bin/
$ sudo chmod 755 /usr/bin/otto
$ otto -v
Otto v0.1.1
$ git clone https://github.com/hashicorp/otto-getting-started.git
$ cd otto-getting-started
$ otto compile
==> Loading Appfile...
==> No Appfile found! Detecting project information...
No Appfile was found. If there is no Appfile, Otto will do its best
to detect the type of application this is and set reasonable defaults.
This is a good way to get started with Otto, but over time we recommend
writing a real Appfile since this will allow more complex customizations,
the ability to reference dependencies, versioning, and more.
(省略)
==> Compiling main application...
==> Compilation success!
This means that Otto is now ready to start a development environment,
deploy this application, build the supporting infastructure, and
more. See the help for more information.
Supporting files to enable Otto to manage your application from
development to deployment have been placed in the output directory.
These files can be manually inspected to determine what Otto will do.
$ git clone https://github.com/hashicorp/otto-getting-started.git
$ cd otto-getting-started
$ otto compile
==> Loading Appfile...
==> No Appfile found! Detecting project information...
No Appfile was found. If there is no Appfile, Otto will do its best
to detect the type of application this is and set reasonable defaults.
This is a good way to get started with Otto, but over time we recommend
writing a real Appfile since this will allow more complex customizations,
the ability to reference dependencies, versioning, and more.
(省略)
==> Compiling main application...
==> Compilation success!
This means that Otto is now ready to start a development environment,
deploy this application, build the supporting infastructure, and
more. See the help for more information.
Supporting files to enable Otto to manage your application from
development to deployment have been placed in the output directory.
These files can be manually inspected to determine what Otto will do.
$ otto status
==> App Info
Application: otto-getting-started (ruby)
Project: otto-getting-started
Infrastructure: aws (simple)
==> Component Status
Dev environment: NOT CREATED
Infra: READY
Build: NOT BUILT
Deploy: NOT DEPLOYED
$ otto infra
==> Detecting infrastructure credentials for: otto-getting-started (aws)
Cached and encrypted infrastructure credentials found.
Otto will now ask you for the password to decrypt these
credentials.
…
==> otto: Deleting temporary security group...
==> otto: Deleting temporary keypair...
Build 'otto' finished.
==> Builds finished. The artifacts of successful builds are:
--> otto: AMIs were created:
us-east-1: ami-27185642
==> Storing build data in directory...
==> Build success!
The build was completed successfully and stored within
the directory service, meaning other members of your team
don't need to rebuild this same version and can deploy it
immediately.
$ otto build
…
==> otto: Deleting temporary security group...
==> otto: Deleting temporary keypair...
Build 'otto' finished.
==> Builds finished. The artifacts of successful builds are:
--> otto: AMIs were created:
us-east-1: ami-27185642
==> Storing build data in directory...
==> Build success!
The build was completed successfully and stored within
the directory service, meaning other members of your team
don't need to rebuild this same version and can deploy it
immediately.
$ otto build
…
==> otto: Deleting temporary security group...
==> otto: Deleting temporary keypair...
Build 'otto' finished.
==> Builds finished. The artifacts of successful builds are:
--> otto: AMIs were created:
us-east-1: ami-27185642
==> Storing build data in directory...
==> Build success!
The build was completed successfully and stored within
the directory service, meaning other members of your team
don't need to rebuild this same version and can deploy it
immediately.
$ otto deploy
106
Ottoの現状とこれから
‣ デプロイ先のインフラは拡大予定
現状(バージョン 0.1 )では Amazon Web Services の環境のみ
‣ Vaultと連携予定
シークレットの自動的な保管や管理
‣ Atlasとも機能統合予定
現在の開発者向けから、運用担当向けの監視やアプリケーションのメンテナンスもできるように
‣ 構成管理ツールとの棲み分けは?
個人的な疑問
107
Vagrantの今後
‣ 今後も開発継続
機能改善もバージョンアップもあり
‣ Ottoと並列に開発が進む
Vagrantはマシンレベルの開発環境、Ottoはアプリレベルでの開発環境という位置付け
‣ Ottoの開発環境はVagrantと連携
https://ottoproject.io/intro/vagrant-successor.html
108
Ottoまとめ
‣ Otto は Vagrant の後継ソフトウェアの位置付け
ただし、必ずしも Otto に移行を促すものではない
‣ 開発ツールでもあり、デプロイツールでもある
「otto」コマンドを使い、複数の環境を使い分ける事ができる
‣ Appflie で環境や依存関係を管理
‣ Dockerに対応している
Microservices 向けの複雑な環境も、Otto を使えば簡単に開発・デプロイ・運用可能になる
Wrap Up
□□□
背景画像CREDIT:videodoctor / PIXTA(ピクスタ)
https://pixta.jp/@prof306848
@zembutsu
Nov 27, 2015
Our Survival Strategies,
Microservices,
and HashiCorp
今日のまとめ
‣ マイクロサービス時代の生存戦略
‣ 「ペット」から「家畜」の時代
‣ 「自由」のための「選択肢」
‣ 「技術」ではなく、「業務手順」
‣ HashiCorpは何を解決するのか?
‣ マイクロサービスやDockerだけでなく、既存環境も管理
‣ Nomad は Docker にも対応したスケジューラ
‣ Otto は マイクロサービスにも対応した Vagrant の後継開発・デプロイ用ツール
「マイクロサービス」「コンテナ」
知りません、要りません
「品質」=「速さ」×「正確さ」
同じ事するなら、という選択肢
なぜ?を説明できないのなら
そこに使うべき理由はない
https://nomadproject.io/
https://ottoproject.io/
ツールを使いたい!ではなくて、
https://nomadproject.io/
https://ottoproject.io/
自分たちの方法に一致するなら
使った方が良いのでは?と。
システムありきの仕組みに
サヨナラを
皆さんと一緒に
悩みながらも
進みたい
118
‣ 何か気になる所はありますか?
質疑応答
One more thing...
121
‣ Nomad
https://nomadproject.io/
‣ Otto
https://ottoproject.io/
‣ blog記事
Nomad
• https://hashicorp.com/blog/nomad.html
• http://pocketstudio.jp/log3/2015/09/29/nomad-ja/ (日本語参考)
Otto
• https://hashicorp.com/blog/otto.html
• http://pocketstudio.jp/log3/2015/09/30/otto-ja/ (日本語参考)
参考情報

More Related Content

What's hot

普通のRailsアプリをdockerで本番運用する知見
普通のRailsアプリをdockerで本番運用する知見普通のRailsアプリをdockerで本番運用する知見
普通のRailsアプリをdockerで本番運用する知見zaru sakuraba
 
DockerでWordPressサイトを開発してみよう
DockerでWordPressサイトを開発してみようDockerでWordPressサイトを開発してみよう
DockerでWordPressサイトを開発してみようmookjp
 
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪Kunihiro TANAKA
 
Dockerの基本と応用~快適コンテナライフを実現するArukas~
Dockerの基本と応用~快適コンテナライフを実現するArukas~Dockerの基本と応用~快適コンテナライフを実現するArukas~
Dockerの基本と応用~快適コンテナライフを実現するArukas~Masahito Zembutsu
 
Dockerイメージ管理の内部構造
Dockerイメージ管理の内部構造Dockerイメージ管理の内部構造
Dockerイメージ管理の内部構造Etsuji Nakai
 
小さく始める Docker container の deploy
小さく始める Docker container の deploy小さく始める Docker container の deploy
小さく始める Docker container の deployYoshinori Teraoka
 
Docker Swarm モード にゅうもん
Docker Swarm モード にゅうもんDocker Swarm モード にゅうもん
Docker Swarm モード にゅうもんMasahito Zembutsu
 
Docker Compose入門~今日から始めるComposeの初歩からswarm mode対応まで
Docker Compose入門~今日から始めるComposeの初歩からswarm mode対応までDocker Compose入門~今日から始めるComposeの初歩からswarm mode対応まで
Docker Compose入門~今日から始めるComposeの初歩からswarm mode対応までMasahito Zembutsu
 
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~Masahito Zembutsu
 
鯨物語~Dockerコンテナとオーケストレーションの理解
鯨物語~Dockerコンテナとオーケストレーションの理解鯨物語~Dockerコンテナとオーケストレーションの理解
鯨物語~Dockerコンテナとオーケストレーションの理解Masahito Zembutsu
 
2015-07-27 Docker Introduction 〜Dockerの基礎とユースケースに関する考察〜
2015-07-27 Docker Introduction 〜Dockerの基礎とユースケースに関する考察〜2015-07-27 Docker Introduction 〜Dockerの基礎とユースケースに関する考察〜
2015-07-27 Docker Introduction 〜Dockerの基礎とユースケースに関する考察〜Shuji Yamada
 
Dockerでデプロイ
DockerでデプロイDockerでデプロイ
Dockerでデプロイoshiro_seiya
 
アプリ屋もDockerをドカドカ使おう ~ Docker入門
アプリ屋もDockerをドカドカ使おう ~ Docker入門アプリ屋もDockerをドカドカ使おう ~ Docker入門
アプリ屋もDockerをドカドカ使おう ~ Docker入門Hori Tasuku
 
8a1#19[はじめてのdocker] 公開版
8a1#19[はじめてのdocker] 公開版8a1#19[はじめてのdocker] 公開版
8a1#19[はじめてのdocker] 公開版Kamon Nobuchika
 
運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうか運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうかMasahito Zembutsu
 
何者(Dockerって)
何者(Dockerって)何者(Dockerって)
何者(Dockerって)Koji Saiki
 
Dockerは2016年の秋現在どのような状況なのか~忙しい人の5分で分かるDocker~
Dockerは2016年の秋現在どのような状況なのか~忙しい人の5分で分かるDocker~Dockerは2016年の秋現在どのような状況なのか~忙しい人の5分で分かるDocker~
Dockerは2016年の秋現在どのような状況なのか~忙しい人の5分で分かるDocker~Masahito Zembutsu
 
Dockerを活用したリクルートグループ開発基盤の構築
Dockerを活用したリクルートグループ開発基盤の構築Dockerを活用したリクルートグループ開発基盤の構築
Dockerを活用したリクルートグループ開発基盤の構築Recruit Technologies
 
Dockerのディスクについて ~ファイルシステム・マウント方法など~
Dockerのディスクについて ~ファイルシステム・マウント方法など~Dockerのディスクについて ~ファイルシステム・マウント方法など~
Dockerのディスクについて ~ファイルシステム・マウント方法など~HommasSlide
 

What's hot (20)

普通のRailsアプリをdockerで本番運用する知見
普通のRailsアプリをdockerで本番運用する知見普通のRailsアプリをdockerで本番運用する知見
普通のRailsアプリをdockerで本番運用する知見
 
DockerでWordPressサイトを開発してみよう
DockerでWordPressサイトを開発してみようDockerでWordPressサイトを開発してみよう
DockerでWordPressサイトを開発してみよう
 
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
 
Dockerの基本と応用~快適コンテナライフを実現するArukas~
Dockerの基本と応用~快適コンテナライフを実現するArukas~Dockerの基本と応用~快適コンテナライフを実現するArukas~
Dockerの基本と応用~快適コンテナライフを実現するArukas~
 
Dockerイメージ管理の内部構造
Dockerイメージ管理の内部構造Dockerイメージ管理の内部構造
Dockerイメージ管理の内部構造
 
小さく始める Docker container の deploy
小さく始める Docker container の deploy小さく始める Docker container の deploy
小さく始める Docker container の deploy
 
Docker Swarm モード にゅうもん
Docker Swarm モード にゅうもんDocker Swarm モード にゅうもん
Docker Swarm モード にゅうもん
 
Docker Compose入門~今日から始めるComposeの初歩からswarm mode対応まで
Docker Compose入門~今日から始めるComposeの初歩からswarm mode対応までDocker Compose入門~今日から始めるComposeの初歩からswarm mode対応まで
Docker Compose入門~今日から始めるComposeの初歩からswarm mode対応まで
 
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
 
Docker Swarm入門
Docker Swarm入門Docker Swarm入門
Docker Swarm入門
 
鯨物語~Dockerコンテナとオーケストレーションの理解
鯨物語~Dockerコンテナとオーケストレーションの理解鯨物語~Dockerコンテナとオーケストレーションの理解
鯨物語~Dockerコンテナとオーケストレーションの理解
 
2015-07-27 Docker Introduction 〜Dockerの基礎とユースケースに関する考察〜
2015-07-27 Docker Introduction 〜Dockerの基礎とユースケースに関する考察〜2015-07-27 Docker Introduction 〜Dockerの基礎とユースケースに関する考察〜
2015-07-27 Docker Introduction 〜Dockerの基礎とユースケースに関する考察〜
 
Dockerでデプロイ
DockerでデプロイDockerでデプロイ
Dockerでデプロイ
 
アプリ屋もDockerをドカドカ使おう ~ Docker入門
アプリ屋もDockerをドカドカ使おう ~ Docker入門アプリ屋もDockerをドカドカ使おう ~ Docker入門
アプリ屋もDockerをドカドカ使おう ~ Docker入門
 
8a1#19[はじめてのdocker] 公開版
8a1#19[はじめてのdocker] 公開版8a1#19[はじめてのdocker] 公開版
8a1#19[はじめてのdocker] 公開版
 
運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうか運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうか
 
何者(Dockerって)
何者(Dockerって)何者(Dockerって)
何者(Dockerって)
 
Dockerは2016年の秋現在どのような状況なのか~忙しい人の5分で分かるDocker~
Dockerは2016年の秋現在どのような状況なのか~忙しい人の5分で分かるDocker~Dockerは2016年の秋現在どのような状況なのか~忙しい人の5分で分かるDocker~
Dockerは2016年の秋現在どのような状況なのか~忙しい人の5分で分かるDocker~
 
Dockerを活用したリクルートグループ開発基盤の構築
Dockerを活用したリクルートグループ開発基盤の構築Dockerを活用したリクルートグループ開発基盤の構築
Dockerを活用したリクルートグループ開発基盤の構築
 
Dockerのディスクについて ~ファイルシステム・マウント方法など~
Dockerのディスクについて ~ファイルシステム・マウント方法など~Dockerのディスクについて ~ファイルシステム・マウント方法など~
Dockerのディスクについて ~ファイルシステム・マウント方法など~
 

Viewers also liked

【18-E-3】クラウド・ネイティブ時代の2016年だから始める Docker 基礎講座
【18-E-3】クラウド・ネイティブ時代の2016年だから始める Docker 基礎講座【18-E-3】クラウド・ネイティブ時代の2016年だから始める Docker 基礎講座
【18-E-3】クラウド・ネイティブ時代の2016年だから始める Docker 基礎講座Masahito Zembutsu
 
今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門Masahito Zembutsu
 
【Topotal輪読会】JavaScript で学ぶ関数型プログラミング 1 章
【Topotal輪読会】JavaScript で学ぶ関数型プログラミング 1 章【Topotal輪読会】JavaScript で学ぶ関数型プログラミング 1 章
【Topotal輪読会】JavaScript で学ぶ関数型プログラミング 1 章Narimichi Takamura
 
London HUG 14/4 - Deploying and Discovering at Scale with Consul and Nomad
London HUG 14/4 - Deploying and Discovering at Scale with Consul and NomadLondon HUG 14/4 - Deploying and Discovering at Scale with Consul and Nomad
London HUG 14/4 - Deploying and Discovering at Scale with Consul and NomadLondon HashiCorp User Group
 
Dockerハンズオン
DockerハンズオンDockerハンズオン
DockerハンズオンKazuyuki Mori
 
Hashicorpのツール群とオーケストレーション
Hashicorpのツール群とオーケストレーションHashicorpのツール群とオーケストレーション
Hashicorpのツール群とオーケストレーションMasahito Zembutsu
 
Docker実践入門
Docker実践入門Docker実践入門
Docker実践入門hiro nemu
 
2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについてMasahito Zembutsu
 
元運用担当者が,現役時代に本当に欲しかったもの. Osc2014 kansai@kyoto terraform introduction
元運用担当者が,現役時代に本当に欲しかったもの. Osc2014 kansai@kyoto terraform introduction元運用担当者が,現役時代に本当に欲しかったもの. Osc2014 kansai@kyoto terraform introduction
元運用担当者が,現役時代に本当に欲しかったもの. Osc2014 kansai@kyoto terraform introductionMasahito Zembutsu
 
No Monitoring, No Life on AWS
No Monitoring, No Life on AWSNo Monitoring, No Life on AWS
No Monitoring, No Life on AWSMasahito Zembutsu
 
Serf / Consul 入門 ~仕事を楽しくしよう~
Serf / Consul 入門 ~仕事を楽しくしよう~Serf / Consul 入門 ~仕事を楽しくしよう~
Serf / Consul 入門 ~仕事を楽しくしよう~Masahito Zembutsu
 
コンテナ技術と普及がシステム・インテグレータに与える影響
コンテナ技術と普及がシステム・インテグレータに与える影響コンテナ技術と普及がシステム・インテグレータに与える影響
コンテナ技術と普及がシステム・インテグレータに与える影響Masahito Zembutsu
 
純粋関数型アルゴリズム入門
純粋関数型アルゴリズム入門純粋関数型アルゴリズム入門
純粋関数型アルゴリズム入門Kimikazu Kato
 
Docker hands on nifty sakura jul19
Docker hands on nifty sakura jul19Docker hands on nifty sakura jul19
Docker hands on nifty sakura jul19Masahito Zembutsu
 
Docker技術情報アップデート v1.9 ネットワークとオーケストレーション
Docker技術情報アップデート v1.9 ネットワークとオーケストレーションDocker技術情報アップデート v1.9 ネットワークとオーケストレーション
Docker技術情報アップデート v1.9 ネットワークとオーケストレーションMasahito Zembutsu
 
Re: ご注文は自動化ですか?[2]
Re: ご注文は自動化ですか?[2]Re: ご注文は自動化ですか?[2]
Re: ご注文は自動化ですか?[2]Masahito Zembutsu
 
バズワード大戦2015~この先生きのこる~
バズワード大戦2015~この先生きのこる~バズワード大戦2015~この先生きのこる~
バズワード大戦2015~この先生きのこる~Masahito Zembutsu
 
はてなブックマークにおけるアクセス制御 - 半環構造に基づくモデル化
はてなブックマークにおけるアクセス制御 - 半環構造に基づくモデル化はてなブックマークにおけるアクセス制御 - 半環構造に基づくモデル化
はてなブックマークにおけるアクセス制御 - 半環構造に基づくモデル化Lintaro Ina
 
マイクロサービスアーキテクチャ とは何か
マイクロサービスアーキテクチャとは何かマイクロサービスアーキテクチャとは何か
マイクロサービスアーキテクチャ とは何かYusuke Suzuki
 

Viewers also liked (20)

【18-E-3】クラウド・ネイティブ時代の2016年だから始める Docker 基礎講座
【18-E-3】クラウド・ネイティブ時代の2016年だから始める Docker 基礎講座【18-E-3】クラウド・ネイティブ時代の2016年だから始める Docker 基礎講座
【18-E-3】クラウド・ネイティブ時代の2016年だから始める Docker 基礎講座
 
今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門今だからこそ知りたい Docker Compose/Swarm 入門
今だからこそ知りたい Docker Compose/Swarm 入門
 
【Topotal輪読会】JavaScript で学ぶ関数型プログラミング 1 章
【Topotal輪読会】JavaScript で学ぶ関数型プログラミング 1 章【Topotal輪読会】JavaScript で学ぶ関数型プログラミング 1 章
【Topotal輪読会】JavaScript で学ぶ関数型プログラミング 1 章
 
London HUG 14/4 - Deploying and Discovering at Scale with Consul and Nomad
London HUG 14/4 - Deploying and Discovering at Scale with Consul and NomadLondon HUG 14/4 - Deploying and Discovering at Scale with Consul and Nomad
London HUG 14/4 - Deploying and Discovering at Scale with Consul and Nomad
 
Dockerハンズオン
DockerハンズオンDockerハンズオン
Dockerハンズオン
 
Hashicorpのツール群とオーケストレーション
Hashicorpのツール群とオーケストレーションHashicorpのツール群とオーケストレーション
Hashicorpのツール群とオーケストレーション
 
Docker実践入門
Docker実践入門Docker実践入門
Docker実践入門
 
2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて
 
元運用担当者が,現役時代に本当に欲しかったもの. Osc2014 kansai@kyoto terraform introduction
元運用担当者が,現役時代に本当に欲しかったもの. Osc2014 kansai@kyoto terraform introduction元運用担当者が,現役時代に本当に欲しかったもの. Osc2014 kansai@kyoto terraform introduction
元運用担当者が,現役時代に本当に欲しかったもの. Osc2014 kansai@kyoto terraform introduction
 
No Monitoring, No Life on AWS
No Monitoring, No Life on AWSNo Monitoring, No Life on AWS
No Monitoring, No Life on AWS
 
Hashicorp Nomad
Hashicorp NomadHashicorp Nomad
Hashicorp Nomad
 
Serf / Consul 入門 ~仕事を楽しくしよう~
Serf / Consul 入門 ~仕事を楽しくしよう~Serf / Consul 入門 ~仕事を楽しくしよう~
Serf / Consul 入門 ~仕事を楽しくしよう~
 
コンテナ技術と普及がシステム・インテグレータに与える影響
コンテナ技術と普及がシステム・インテグレータに与える影響コンテナ技術と普及がシステム・インテグレータに与える影響
コンテナ技術と普及がシステム・インテグレータに与える影響
 
純粋関数型アルゴリズム入門
純粋関数型アルゴリズム入門純粋関数型アルゴリズム入門
純粋関数型アルゴリズム入門
 
Docker hands on nifty sakura jul19
Docker hands on nifty sakura jul19Docker hands on nifty sakura jul19
Docker hands on nifty sakura jul19
 
Docker技術情報アップデート v1.9 ネットワークとオーケストレーション
Docker技術情報アップデート v1.9 ネットワークとオーケストレーションDocker技術情報アップデート v1.9 ネットワークとオーケストレーション
Docker技術情報アップデート v1.9 ネットワークとオーケストレーション
 
Re: ご注文は自動化ですか?[2]
Re: ご注文は自動化ですか?[2]Re: ご注文は自動化ですか?[2]
Re: ご注文は自動化ですか?[2]
 
バズワード大戦2015~この先生きのこる~
バズワード大戦2015~この先生きのこる~バズワード大戦2015~この先生きのこる~
バズワード大戦2015~この先生きのこる~
 
はてなブックマークにおけるアクセス制御 - 半環構造に基づくモデル化
はてなブックマークにおけるアクセス制御 - 半環構造に基づくモデル化はてなブックマークにおけるアクセス制御 - 半環構造に基づくモデル化
はてなブックマークにおけるアクセス制御 - 半環構造に基づくモデル化
 
マイクロサービスアーキテクチャ とは何か
マイクロサービスアーキテクチャとは何かマイクロサービスアーキテクチャとは何か
マイクロサービスアーキテクチャ とは何か
 

Similar to マイクロサービス時代の生存戦略 with HashiCorp

成長を加速する minne の技術基盤戦略
成長を加速する minne の技術基盤戦略成長を加速する minne の技術基盤戦略
成長を加速する minne の技術基盤戦略Hiroshi SHIBATA
 
オトナのDocker入門
オトナのDocker入門オトナのDocker入門
オトナのDocker入門Tsukasa Kato
 
2019年度 CaaS ワークショップ @ NTTコム
2019年度 CaaS ワークショップ @ NTTコム2019年度 CaaS ワークショップ @ NTTコム
2019年度 CaaS ワークショップ @ NTTコムTomoyaTakegoshi
 
分散環境におけるDocker とオーケストレーション
分散環境におけるDocker とオーケストレーション分散環境におけるDocker とオーケストレーション
分散環境におけるDocker とオーケストレーションMasahito Zembutsu
 
Docker ComposeでMastodonが必要なものを梱包する話
Docker ComposeでMastodonが必要なものを梱包する話Docker ComposeでMastodonが必要なものを梱包する話
Docker ComposeでMastodonが必要なものを梱包する話Masahito Zembutsu
 
Cloudstack user group meeting in osaka
Cloudstack user group meeting in osakaCloudstack user group meeting in osaka
Cloudstack user group meeting in osakaNaotaka Jay HOTTA
 
20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!Midori Oge
 
DockerとDocker Hubの操作と概念
DockerとDocker Hubの操作と概念DockerとDocker Hubの操作と概念
DockerとDocker Hubの操作と概念Masahito Zembutsu
 
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)Daisuke Ikeda
 
Osc fukuoka xAI Meetup
Osc fukuoka xAI MeetupOsc fukuoka xAI Meetup
Osc fukuoka xAI Meetupru pic
 
はてなにおける継続的デプロイメントの現状と Docker の導入
はてなにおける継続的デプロイメントの現状と Docker の導入はてなにおける継続的デプロイメントの現状と Docker の導入
はてなにおける継続的デプロイメントの現状と Docker の導入Yu Nobuoka
 
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Masahiro Nagano
 
いまからでも遅くない Docker事始め&愉快な仲間達
いまからでも遅くない Docker事始め&愉快な仲間達いまからでも遅くない Docker事始め&愉快な仲間達
いまからでも遅くない Docker事始め&愉快な仲間達softlayerjp
 
デブサミ2013【15-D-4】Opsから挑むDevOps
デブサミ2013【15-D-4】Opsから挑むDevOpsデブサミ2013【15-D-4】Opsから挑むDevOps
デブサミ2013【15-D-4】Opsから挑むDevOpsDevelopers Summit
 
Dockerを支える技術
Dockerを支える技術Dockerを支える技術
Dockerを支える技術Etsuji Nakai
 
Open Shift v3 主要機能と内部構造のご紹介
Open Shift v3 主要機能と内部構造のご紹介Open Shift v3 主要機能と内部構造のご紹介
Open Shift v3 主要機能と内部構造のご紹介Etsuji Nakai
 
ラズパイ2で動く Docker PaaS
ラズパイ2で動く Docker PaaSラズパイ2で動く Docker PaaS
ラズパイ2で動く Docker PaaSnpsg
 
Introduction of Rancher at OSC Tokyo 17 Spring
Introduction of Rancher at OSC Tokyo 17 SpringIntroduction of Rancher at OSC Tokyo 17 Spring
Introduction of Rancher at OSC Tokyo 17 SpringGo Chiba
 

Similar to マイクロサービス時代の生存戦略 with HashiCorp (20)

成長を加速する minne の技術基盤戦略
成長を加速する minne の技術基盤戦略成長を加速する minne の技術基盤戦略
成長を加速する minne の技術基盤戦略
 
オトナのDocker入門
オトナのDocker入門オトナのDocker入門
オトナのDocker入門
 
2019年度 CaaS ワークショップ @ NTTコム
2019年度 CaaS ワークショップ @ NTTコム2019年度 CaaS ワークショップ @ NTTコム
2019年度 CaaS ワークショップ @ NTTコム
 
分散環境におけるDocker とオーケストレーション
分散環境におけるDocker とオーケストレーション分散環境におけるDocker とオーケストレーション
分散環境におけるDocker とオーケストレーション
 
Docker ComposeでMastodonが必要なものを梱包する話
Docker ComposeでMastodonが必要なものを梱包する話Docker ComposeでMastodonが必要なものを梱包する話
Docker ComposeでMastodonが必要なものを梱包する話
 
Cloudstack user group meeting in osaka
Cloudstack user group meeting in osakaCloudstack user group meeting in osaka
Cloudstack user group meeting in osaka
 
20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!
 
DockerとDocker Hubの操作と概念
DockerとDocker Hubの操作と概念DockerとDocker Hubの操作と概念
DockerとDocker Hubの操作と概念
 
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
クラウド環境向けZabbixカスタマイズ紹介(第5回Zabbix勉強会)
 
Open Source x AI
Open Source x AIOpen Source x AI
Open Source x AI
 
Osc fukuoka xAI Meetup
Osc fukuoka xAI MeetupOsc fukuoka xAI Meetup
Osc fukuoka xAI Meetup
 
Hbstudy41 auto scaling
Hbstudy41 auto scalingHbstudy41 auto scaling
Hbstudy41 auto scaling
 
はてなにおける継続的デプロイメントの現状と Docker の導入
はてなにおける継続的デプロイメントの現状と Docker の導入はてなにおける継続的デプロイメントの現状と Docker の導入
はてなにおける継続的デプロイメントの現状と Docker の導入
 
Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14Web Operations and Perl kansai.pm#14
Web Operations and Perl kansai.pm#14
 
いまからでも遅くない Docker事始め&愉快な仲間達
いまからでも遅くない Docker事始め&愉快な仲間達いまからでも遅くない Docker事始め&愉快な仲間達
いまからでも遅くない Docker事始め&愉快な仲間達
 
デブサミ2013【15-D-4】Opsから挑むDevOps
デブサミ2013【15-D-4】Opsから挑むDevOpsデブサミ2013【15-D-4】Opsから挑むDevOps
デブサミ2013【15-D-4】Opsから挑むDevOps
 
Dockerを支える技術
Dockerを支える技術Dockerを支える技術
Dockerを支える技術
 
Open Shift v3 主要機能と内部構造のご紹介
Open Shift v3 主要機能と内部構造のご紹介Open Shift v3 主要機能と内部構造のご紹介
Open Shift v3 主要機能と内部構造のご紹介
 
ラズパイ2で動く Docker PaaS
ラズパイ2で動く Docker PaaSラズパイ2で動く Docker PaaS
ラズパイ2で動く Docker PaaS
 
Introduction of Rancher at OSC Tokyo 17 Spring
Introduction of Rancher at OSC Tokyo 17 SpringIntroduction of Rancher at OSC Tokyo 17 Spring
Introduction of Rancher at OSC Tokyo 17 Spring
 

More from Masahito Zembutsu

忙しい人のための Rocky Linux 入門〜Rocky LinuxはCentOSの後継者たり得るか?〜
忙しい人のための Rocky Linux 入門〜Rocky LinuxはCentOSの後継者たり得るか?〜忙しい人のための Rocky Linux 入門〜Rocky LinuxはCentOSの後継者たり得るか?〜
忙しい人のための Rocky Linux 入門〜Rocky LinuxはCentOSの後継者たり得るか?〜Masahito Zembutsu
 
自由検証環境提供宣言+Docker Compose V2 GA
自由検証環境提供宣言+Docker Compose V2 GA自由検証環境提供宣言+Docker Compose V2 GA
自由検証環境提供宣言+Docker Compose V2 GAMasahito Zembutsu
 
CentOS Linux 8 の EOL と対応策の検討
CentOS Linux 8 の EOL と対応策の検討CentOS Linux 8 の EOL と対応策の検討
CentOS Linux 8 の EOL と対応策の検討Masahito Zembutsu
 
さくらインターネットのコミュニティ with COVID-19
さくらインターネットのコミュニティ with COVID-19さくらインターネットのコミュニティ with COVID-19
さくらインターネットのコミュニティ with COVID-19Masahito Zembutsu
 
ブックトーク@CROSS ~SF編~ 発表資料「攻殻機動隊」「導きの星」
ブックトーク@CROSS ~SF編~ 発表資料「攻殻機動隊」「導きの星」ブックトーク@CROSS ~SF編~ 発表資料「攻殻機動隊」「導きの星」
ブックトーク@CROSS ~SF編~ 発表資料「攻殻機動隊」「導きの星」Masahito Zembutsu
 
インターネットでウェブサイトを表示している裏側の話
インターネットでウェブサイトを表示している裏側の話インターネットでウェブサイトを表示している裏側の話
インターネットでウェブサイトを表示している裏側の話Masahito Zembutsu
 
3分で分かる「プログラミング教育・情報教育」
3分で分かる「プログラミング教育・情報教育」3分で分かる「プログラミング教育・情報教育」
3分で分かる「プログラミング教育・情報教育」Masahito Zembutsu
 
ようこそオンラインの展示会場へ
ようこそオンラインの展示会場へようこそオンラインの展示会場へ
ようこそオンラインの展示会場へMasahito Zembutsu
 
小学校プログラミング教育に対する企業の取り組みと課題 #KOF2020
小学校プログラミング教育に対する企業の取り組みと課題 #KOF2020小学校プログラミング教育に対する企業の取り組みと課題 #KOF2020
小学校プログラミング教育に対する企業の取り組みと課題 #KOF2020Masahito Zembutsu
 
オンライン発表で気を付けているポイント~姿勢編
オンライン発表で気を付けているポイント~姿勢編オンライン発表で気を付けているポイント~姿勢編
オンライン発表で気を付けているポイント~姿勢編Masahito Zembutsu
 
Docker道場オンライン#1 Docker基礎概念と用語の理解
Docker道場オンライン#1 Docker基礎概念と用語の理解Docker道場オンライン#1 Docker基礎概念と用語の理解
Docker道場オンライン#1 Docker基礎概念と用語の理解Masahito Zembutsu
 
Docker 9 tips~意外と知られていない日常で役立つ便利技
Docker 9 tips~意外と知られていない日常で役立つ便利技Docker 9 tips~意外と知られていない日常で役立つ便利技
Docker 9 tips~意外と知られていない日常で役立つ便利技Masahito Zembutsu
 
コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」Masahito Zembutsu
 
クリスマスに工場(Factorio)を作るゲームをしよう
クリスマスに工場(Factorio)を作るゲームをしようクリスマスに工場(Factorio)を作るゲームをしよう
クリスマスに工場(Factorio)を作るゲームをしようMasahito Zembutsu
 
Dockerfileを改善するためのBest Practice 2019年版
Dockerfileを改善するためのBest Practice 2019年版Dockerfileを改善するためのBest Practice 2019年版
Dockerfileを改善するためのBest Practice 2019年版Masahito Zembutsu
 
Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編Masahito Zembutsu
 
2020年から始まる小学校プログラミング教育の話 #osc19os
2020年から始まる小学校プログラミング教育の話 #osc19os2020年から始まる小学校プログラミング教育の話 #osc19os
2020年から始まる小学校プログラミング教育の話 #osc19osMasahito Zembutsu
 

More from Masahito Zembutsu (20)

忙しい人のための Rocky Linux 入門〜Rocky LinuxはCentOSの後継者たり得るか?〜
忙しい人のための Rocky Linux 入門〜Rocky LinuxはCentOSの後継者たり得るか?〜忙しい人のための Rocky Linux 入門〜Rocky LinuxはCentOSの後継者たり得るか?〜
忙しい人のための Rocky Linux 入門〜Rocky LinuxはCentOSの後継者たり得るか?〜
 
自由検証環境提供宣言+Docker Compose V2 GA
自由検証環境提供宣言+Docker Compose V2 GA自由検証環境提供宣言+Docker Compose V2 GA
自由検証環境提供宣言+Docker Compose V2 GA
 
CentOS Linux 8 の EOL と対応策の検討
CentOS Linux 8 の EOL と対応策の検討CentOS Linux 8 の EOL と対応策の検討
CentOS Linux 8 の EOL と対応策の検討
 
さくらインターネットのコミュニティ with COVID-19
さくらインターネットのコミュニティ with COVID-19さくらインターネットのコミュニティ with COVID-19
さくらインターネットのコミュニティ with COVID-19
 
Docker Chronicle 2021.09
Docker Chronicle  2021.09Docker Chronicle  2021.09
Docker Chronicle 2021.09
 
ブックトーク@CROSS ~SF編~ 発表資料「攻殻機動隊」「導きの星」
ブックトーク@CROSS ~SF編~ 発表資料「攻殻機動隊」「導きの星」ブックトーク@CROSS ~SF編~ 発表資料「攻殻機動隊」「導きの星」
ブックトーク@CROSS ~SF編~ 発表資料「攻殻機動隊」「導きの星」
 
インターネットでウェブサイトを表示している裏側の話
インターネットでウェブサイトを表示している裏側の話インターネットでウェブサイトを表示している裏側の話
インターネットでウェブサイトを表示している裏側の話
 
3分で分かる「プログラミング教育・情報教育」
3分で分かる「プログラミング教育・情報教育」3分で分かる「プログラミング教育・情報教育」
3分で分かる「プログラミング教育・情報教育」
 
ようこそオンラインの展示会場へ
ようこそオンラインの展示会場へようこそオンラインの展示会場へ
ようこそオンラインの展示会場へ
 
小学校プログラミング教育に対する企業の取り組みと課題 #KOF2020
小学校プログラミング教育に対する企業の取り組みと課題 #KOF2020小学校プログラミング教育に対する企業の取り組みと課題 #KOF2020
小学校プログラミング教育に対する企業の取り組みと課題 #KOF2020
 
オンライン発表で気を付けているポイント~姿勢編
オンライン発表で気を付けているポイント~姿勢編オンライン発表で気を付けているポイント~姿勢編
オンライン発表で気を付けているポイント~姿勢編
 
Docker道場オンライン#1 Docker基礎概念と用語の理解
Docker道場オンライン#1 Docker基礎概念と用語の理解Docker道場オンライン#1 Docker基礎概念と用語の理解
Docker道場オンライン#1 Docker基礎概念と用語の理解
 
Jitsi Meetとは?
Jitsi Meetとは?Jitsi Meetとは?
Jitsi Meetとは?
 
Docker 9 tips~意外と知られていない日常で役立つ便利技
Docker 9 tips~意外と知られていない日常で役立つ便利技Docker 9 tips~意外と知られていない日常で役立つ便利技
Docker 9 tips~意外と知られていない日常で役立つ便利技
 
コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」
 
クリスマスに工場(Factorio)を作るゲームをしよう
クリスマスに工場(Factorio)を作るゲームをしようクリスマスに工場(Factorio)を作るゲームをしよう
クリスマスに工場(Factorio)を作るゲームをしよう
 
Dockerfileを改善するためのBest Practice 2019年版
Dockerfileを改善するためのBest Practice 2019年版Dockerfileを改善するためのBest Practice 2019年版
Dockerfileを改善するためのBest Practice 2019年版
 
Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編
 
2020年から始まる小学校プログラミング教育の話 #osc19os
2020年から始まる小学校プログラミング教育の話 #osc19os2020年から始まる小学校プログラミング教育の話 #osc19os
2020年から始まる小学校プログラミング教育の話 #osc19os
 
Docker Compose 徹底解説
Docker Compose 徹底解説Docker Compose 徹底解説
Docker Compose 徹底解説
 

マイクロサービス時代の生存戦略 with HashiCorp