SlideShare una empresa de Scribd logo
1 de 50
Descargar para leer sin conexión
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
OpenStack関連セッション
1
OpenStack Summit
Barcelona 2016 参加報告
神尾皓 立見祐介
Ansibleによるおっちょこちょい
の運用自動化
高橋拓也
4年間、OpenStackをデプロイし
てみた
北田駿也
OpenStack on Kubernetes
木下裕太
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
2017年1月30日
2
高橋拓也(24)
サイトオペレーション本部 インフラ技術1部 クラウドイノベーション
Ansibleによる
おっちょこちょいの運用自動化
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
自己紹介
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
自己紹介
4
• 高橋拓也
• インフラ技術1部 クラウドイノベーション所属
• プライベートクラウド(OpenStack)の運用・開発を担当
• 2016年度新卒入社
• インフラの基礎技術について、目下勉強中です
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
つらかったこと
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
つらかったこと
6
• はじめての既存システム運用
• しかもものすごく大規模システム
• 一つのミスが複数のサービスに大影響を
• しかし、そんな自覚が足りなかった新人1ヶ月目
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
つらかったこと
7
• (^o^)。。( 本番環境にアクセスっと
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
つらかったこと
8
• (^o^)。。( 本番環境にアクセスっと
• (^o^)。。(Haproxyあがってないな、 $ sudo service haproxy start
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
つらかったこと
9
• (^o^)。。( 本番環境にアクセスっと
• (^o^)。。(Haproxyあがってないな、 $ sudo service haproxy start
• (´・ω・`) < 高橋くん、それheartbeatだよ。。。
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
つらかったこと
10
• (^o^)。。( 本番環境にアクセスっと
• (^o^)。。(Haproxyあがってないな、 $ sudo service haproxy start
• (´・ω・`) < 高橋くん、それheartbeatだよ。。。
• (´・ω・`) < もうちょっと確認してから sudo は打とうね。。。
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
つらかったこと
11
• (^o^)。。( 本番環境にアクセスっと
• (^o^)。。(Haproxyあがってないな、 $ sudo service haproxy start
• (´・ω・`) < 高橋くん、それheartbeatだよ。。。
• (´・ω・`) < もうちょっと確認してから sudo は打とうね。。。
はじめてのオペミス (運用業務開始2日目
本番環境こわい
対策: 本番環境では気を引き締めよう
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
つらかったこと
12
• (^o^)。( 今度は慎重にやるぞー
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
つらかったこと
13
• (^o^)。( 今度は慎重にやるぞー
• (^o^)。( だんだん疲れてきたな。。
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
つらかったこと
14
• (^o^)。( 今度は慎重にやるぞー
• (^o^)。( だんだん疲れてきたな。。
• (^o^)。( VMのnicを削除するぞ!
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
つらかったこと
15
• (^o^)。( 今度は慎重にやるぞー
• (^o^)。( だんだん疲れてきたな。。
• (^o^)。( VMのnicを削除するぞ!
• (^o^) < あ!削除するnicを間違えた!!
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
つらかったこと
16
• (^o^)。( 今度は慎重にやるぞー
• (^o^)。( だんだん疲れてきたな。。
• (^o^)。( VMのnicを削除するぞ!
• (^o^) < あ!削除するnicを間違えた!!
• (´・ω・`) < 事故
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
つらかったこと
17
• (^o^)。( 今度は慎重にやるぞー
• (^o^)。( だんだん疲れてきたな。。
• (^o^)。( VMのnicを削除するぞ!
• (^o^) < あ!削除するnicを間違えた!!
• (´・ω・`) < 事故
• 必要ないポートだったため事故とはならず
• 対策: 目grepはやめてマシンにgrepさせる
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
つらかったこと
18
• (^o^)。( このDB書き込みオペはミスできないな。。
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
つらかったこと
19
• (^o^)。( このDB書き込みオペはミスできないな。。
• (^o^)。( 手順書からしっかりコピペして、2回チェックして
• (^o^)。( 出力結果も残したし、完璧だ!!
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
つらかったこと
20
• (^o^)。( このDB書き込みオペはミスできないな。。
• (^o^)。( 手順書からしっかりコピペして、2回チェックして
• (^o^)。( 出力結果も残したし、完璧だ!!
• (´・ω・`) < 高橋くん、それslaveだよ。。。
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
つらかったこと
21
• (^o^)。( このDB書き込みオペはミスできないな。。
• (^o^)。( 手順書からしっかりコピペして、2回チェックして
• (^o^)。( 出力結果も残したし、完璧だ!!
• (´・ω・`) < 高橋くん、それslaveだよ。。。
• 先輩社員の神業オペレーションにより、影響を残さず処理できた
• 対策: hostnameをターミナルに出力し続ける
• もしhostnameを見逃したら。。。 → あまり対策になってない
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
気づいたこと
22
• オペミスする確率はエンターを押す回数と比例する
• 「対策: 気をつける」 は、必ず失敗する
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
気づいたこと
23
• オペミスする確率はエンターを押す回数と比例する
• 「対策: 気をつける」 は、必ず失敗する
オペミスが起きないインターフェースを使おう!
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
脱オペミス!
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
オペミスが起きないIFとは?
• オペミスが起きないIFとは
• 実行のたびに状態が変化しない
• 冪等性を保つ or 保つ仕組みがある
• 作業内容が見える
• 第三者によりチェックされた作業しか実行できない
ようにする
• 入力が少ない
• 固定の設定値はツールで保持する
• 人力作業が少ない
• 単純作業は自動化させる
25
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.26
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.27
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
Ansibleによる運用自動化
28
• なぜAnsible?
• 実行のたびに状態が変化しない
• 冪等性を保つ仕組みを持つ
• →作業実行に迷わない
• 作業内容が見える
• 作業内容をコード化して管理できる
• タスク実行が逐次処理となる
• →やり方のわからない作業がなくなる
• 入力が少ない
• 変数として値をplaybookに保持できる
• →どの変数を利用するかを入力として与えれば良い
• 人力作業が少ない
• 単純作業は自動化させる
• →エンターの叩かれる回数は確実に減る
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
活用例
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
活用例
30
• OpenStackを操作してFlavorを追加する
• Flavor … インスタンスのスペック情報
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.31
実行手順
手順
1. クラスタのユーザー情報を読み込む
2. Clientをロードする
3. nova flavor-create を実行し、flavo
を作成する
4. nova flavor-key を実行し、flavorの
extra_spec(quotaなど) を追加する
実行コマンド
1. $ source cluster/adminrc
2. $ source /os/liberty/activate
3. $ nova flavor-create 2v-1024M-
40G auto 1024 40 2
4. $ nova flavor-key set
drive_type=ssd
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.32
実行手順
手順
1. クラスタのユーザー情報を読み込む
2. Clientをロードする
3. nova flavor-create を実行し、flavo
を作成する
4. nova flavor-key を実行し、flavorの
extra_spec(quotaなど) を追加する
実行コマンド
1. $ source cluster/adminrc
2. $ source /os/liberty/activate
3. $ nova flavor-create 2v-1024M-
40G auto 1024 40 2
4. $ nova flavor-key set
drive_type=ssd
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
活用例
33
• OpenStackを操作してFlavorを追加する
• Flavor … インスタンスのスペック情報
• OpenStackのクラスタ毎に追加するスペックが異なる
• SSD機のクラスタはdisk quotaをゆるめたりとか
• 想定されるオペミス
• 同名のフレーバーを作ろうとしてしまう
• extra_specの値を間違えて設定してしまう
Ansibleでワークフロー化
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
活用例
34
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
活用例
35
add_flavor.yaml
- hosts: work
user: takutaka
roles:
- nova/flavor-create
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
活用例
36
vars/flavor-create.json
{
"flavor_name": "2v-1024M-30G",
"cluster_name": “cluster1"
}
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
活用例
37
vars/flavor-create.json
{
"flavor_name": "2v-1024M-30G",
"cluster_name": “cluster1"
}
add_flavor.yaml
- hosts: work
user: takutaka
roles:
- nova/flavor-create
$ ansible-playbook add_flavor.yaml –i hosts ¥
–-extra-vars “@vars/flavor-create.json”
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
活用例
38
flavor-create/tasks/main.yaml
- name: parse flavor name to machine spec
flavor2spec:
flavor: '{{flavor_name}}'
register: spec
- name: check flavor name
shell: |
nova flavor-list |grep {{flavor-name}}
register: result
failed_when: result not in [0, 1]
- name: create flavor
shell: |
nova flavor-create "{{flavor_name}}" auto ¥
{{spec.mem}} {{spec.disk}} {{spec.vcpu}}
when: result.rc == 1
- name: set extra_spec to flavor
shell: |
nova flavor-key "{{flavor_name}}" set ¥
"{{item.key}}"="{{item.value}}"
with_dict: "{{vars[cluster_name]}}"
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
活用例
39
Library/flavor2spec.sh
#!/bin/bash
name=`cat $1|awk -F'flavor=' '{print $2}'|awk -F' ' '{print $1}' `
vcpu=`echo $name|awk -F'-' '{print $1}'`
mem=`echo $name|awk -F'-' '{print $2}'`
disk=`echo $name|awk -F'-' '{print $3}'`
echo -n
{"name":"${name}","vcpu":"${vcpu}","mem":"${mem}","disk":"${disk}"
}
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
活用例
40
flavor-create/tasks/main.yaml
- name: parse flavor name to machine spec
flavor2spec:
flavor: '{{flavor_name}}'
register: spec
- name: check flavor name
shell: |
nova flavor-list |grep {{flavor-name}}
register: result
failed_when: result not in [0, 1]
- name: create flavor
shell: |
nova flavor-create "{{flavor_name}}" auto ¥
{{spec.mem}} {{spec.disk}} {{spec.vcpu}}
when: result.rc == 1
- name: set extra_spec to flavor
shell: |
nova flavor-key "{{flavor_name}}" set ¥
"{{item.key}}"="{{item.value}}"
with_dict: "{{vars[cluster_name]}}"
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
活用例
41
flavor-create/tasks/main.yaml
- name: parse flavor name to machine spec
flavor2spec:
flavor: '{{flavor_name}}'
register: spec
- name: check flavor name
shell: |
nova flavor-list |grep {{flavor-name}}
register: result
failed_when: result not in [0, 1]
- name: create flavor
shell: |
nova flavor-create "{{flavor_name}}" auto ¥
{{spec.mem}} {{spec.disk}} {{spec.vcpu}}
when: result.rc == 1
- name: set extra_spec to flavor
shell: |
nova flavor-key "{{flavor_name}}" set ¥
"{{item.key}}"="{{item.value}}"
with_dict: "{{vars[cluster_name]}}"
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
活用例
42
Flavor-create/vars/main.yaml
cluster1:
'quota:disk_write_bytes_sec': 1536000000
'quota:disk_read_bytes_sec': 1536000000
'quota:vif_outbound_average': 64000
'quota:vif_inbound_peak': 64000
'quota:vif_inbound_average': 64000
'quota:vif_outbound_peak': 64000
'drive_type': ssd
cluster2:
'quota:disk_write_bytes_sec': 153600000
'quota:disk_read_bytes_sec': 153600000
'quota:vif_outbound_average': 64000
'quota:vif_inbound_peak': 64000
'quota:vif_inbound_average': 64000
'quota:vif_outbound_peak': 64000
'drive_type': sas
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
確認項目が減少
43
自動化前確認項目(11項目) 自動化後確認項目(2項目)
フレーバー名 フレーバー名
vcpu クラスタ名
Memory
Disk
quota:disk_write_bytes_sec
quota:vif_outbound_average
quota:vif_inbound_peak
quota:vif_inbound_average
quota:disk_read_bytes_sec
quota:vif_outbound_peak
drive_type
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.44
運用手順も減少
1. クラスタadminrcを読み込む
2. Clientをロードする
3. 手順書を元にコマンドを作成する
4. コマンドを実行する
5. 追加するextra_spec分コマンド実行
する (7回)
計 11手順
1. フレーバー名とクラスタ名をjsonに
書き込む
2. Playbookを実行する
計 2手順
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.45
運用手順も減少
1. クラスタadminrcを読み込む
2. Clientをロードする
3. 手順書を元にコマンドを作成する
4. コマンドを実行する
5. 追加するextra_spec分コマンド実行
する (7回)
計 11手順
1. フレーバー名とクラスタ名をjsonに
書き込む
2. Playbookを実行する
計 2手順
脱オペミス完了!
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
自動化の懸念
46
• Playbookの信憑性は誰が担保する?
• 冪等性の保たれたPlaybookを書く
• ベテラン運用者に確認してもらう
• 検証環境で試す
• 運用のための知識が身につかないのでは?
• 運用の知識を伴わないとそもそもPlaybookが書けない
• 空いたリソースで他の問題が解決できたらそれが一番
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
運用フロー
47
Push & PR
おねがい
Merge
Webhook
pull
execute
cluster
cluster
Playbook開発者
Playbook開発者
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
自動化の懸念
48
• Playbookの信憑性は誰が担保する?
• 冪等性の保たれたPlaybookを書く
• ベテラン運用者に確認してもらう
• 検証環境で試す
• 運用のための知識が身につかないのでは?
• 運用の知識を伴わないとそもそもPlaybookが書けない
• Playbookを見れば、「正しいやり方」を身につけられる
• 空いたリソースで他の問題が解決できたらそれが一番
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
まとめ
49
• 手動の運用はつらいよ
• 自動化すると改善できることがあるよ
• Ansibleなら、始めやすいしシンプルでおすすめだよ
• 自動化に振り回されないように気をつけよう
Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.
他の構成管理ツールとの比較
50
実装言語 設定言語 冪等性 モジュール言語 エージェント
Fabric Python Python ☓ python ☓
Capistrano Ruby DSL(Ruby) ☓ Ruby ☓
Chef Ruby DSL(Ruby) ○ Ruby ○
puppet Ruby 独自 ○ 独自 △
Ansible Python Yaml ○ なんでも ☓

Más contenido relacionado

La actualidad más candente

SINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現について
SINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現についてSINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現について
SINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現についてgree_tech
 
JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話
JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話
JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話Yahoo!デベロッパーネットワーク
 
Openstack kolla 20171025 josug v3
Openstack kolla 20171025 josug v3Openstack kolla 20171025 josug v3
Openstack kolla 20171025 josug v3Takehiro Kudou
 
Hadoopのメンテナンスリリースバージョンをリリースしてみた (日本Hadoopユーザー会 ライトニングトーク@Cloudera World Tokyo...
Hadoopのメンテナンスリリースバージョンをリリースしてみた (日本Hadoopユーザー会 ライトニングトーク@Cloudera World Tokyo...Hadoopのメンテナンスリリースバージョンをリリースしてみた (日本Hadoopユーザー会 ライトニングトーク@Cloudera World Tokyo...
Hadoopのメンテナンスリリースバージョンをリリースしてみた (日本Hadoopユーザー会 ライトニングトーク@Cloudera World Tokyo...NTT DATA OSS Professional Services
 
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~NTT DATA OSS Professional Services
 
OpenStack Saharaを使ったデータ分析基板を作った話 - OpenStack最新情報セミナー(2016年7月)
 OpenStack Saharaを使ったデータ分析基板を作った話  - OpenStack最新情報セミナー(2016年7月) OpenStack Saharaを使ったデータ分析基板を作った話  - OpenStack最新情報セミナー(2016年7月)
OpenStack Saharaを使ったデータ分析基板を作った話 - OpenStack最新情報セミナー(2016年7月)VirtualTech Japan Inc.
 
Openstack ceph 20171115 vtj
Openstack ceph 20171115 vtjOpenstack ceph 20171115 vtj
Openstack ceph 20171115 vtjTakehiro Kudou
 
Automation of Rolling Upgrade of Hadoop Cluster without Data Lost and Job Fai...
Automation of Rolling Upgrade of Hadoop Cluster without Data Lost and Job Fai...Automation of Rolling Upgrade of Hadoop Cluster without Data Lost and Job Fai...
Automation of Rolling Upgrade of Hadoop Cluster without Data Lost and Job Fai...Yahoo!デベロッパーネットワーク
 
SIプロジェクトでのインフラ自動化の事例 (第1回 Puppetユーザ会 発表資料)
SIプロジェクトでのインフラ自動化の事例 (第1回 Puppetユーザ会 発表資料)SIプロジェクトでのインフラ自動化の事例 (第1回 Puppetユーザ会 発表資料)
SIプロジェクトでのインフラ自動化の事例 (第1回 Puppetユーザ会 発表資料)NTT DATA OSS Professional Services
 
[JANOG35.5] WhiteBox SW検証 ~サーバサイド編~
[JANOG35.5] WhiteBox SW検証  ~サーバサイド編~[JANOG35.5] WhiteBox SW検証  ~サーバサイド編~
[JANOG35.5] WhiteBox SW検証 ~サーバサイド編~gree_tech
 
ネットワン様講演 OpenStack最新情報セミナー 2014年2月
ネットワン様講演 OpenStack最新情報セミナー 2014年2月ネットワン様講演 OpenStack最新情報セミナー 2014年2月
ネットワン様講演 OpenStack最新情報セミナー 2014年2月VirtualTech Japan Inc.
 
Yahoo!プロモーション広告のビックデータ基盤を支える技術と今後の展望
Yahoo!プロモーション広告のビックデータ基盤を支える技術と今後の展望Yahoo!プロモーション広告のビックデータ基盤を支える技術と今後の展望
Yahoo!プロモーション広告のビックデータ基盤を支える技術と今後の展望Yahoo!デベロッパーネットワーク
 
ブロードバンドタワー様講演 OpenStack最新情報セミナー 2014年4月
ブロードバンドタワー様講演 OpenStack最新情報セミナー 2014年4月ブロードバンドタワー様講演 OpenStack最新情報セミナー 2014年4月
ブロードバンドタワー様講演 OpenStack最新情報セミナー 2014年4月VirtualTech Japan Inc.
 

La actualidad más candente (20)

Yahoo! JAPANのOSS Cassandra貢献の今までとこれから
Yahoo! JAPANのOSS Cassandra貢献の今までとこれからYahoo! JAPANのOSS Cassandra貢献の今までとこれから
Yahoo! JAPANのOSS Cassandra貢献の今までとこれから
 
Storm の新機能について @HSCR #hadoopreading
Storm の新機能について @HSCR #hadoopreadingStorm の新機能について @HSCR #hadoopreading
Storm の新機能について @HSCR #hadoopreading
 
SINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現について
SINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現についてSINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現について
SINoALICE -シノアリス- Google Cloud Firestoreを用いた観戦機能の実現について
 
JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話
JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話
JSUG 2018/02/05 SpringOnePlatform2017参加報告 プラットフォーム関連のお話
 
Openstack kolla 20171025 josug v3
Openstack kolla 20171025 josug v3Openstack kolla 20171025 josug v3
Openstack kolla 20171025 josug v3
 
Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)LT⑦
Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)LT⑦Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)LT⑦
Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)LT⑦
 
Hadoopのメンテナンスリリースバージョンをリリースしてみた (日本Hadoopユーザー会 ライトニングトーク@Cloudera World Tokyo...
Hadoopのメンテナンスリリースバージョンをリリースしてみた (日本Hadoopユーザー会 ライトニングトーク@Cloudera World Tokyo...Hadoopのメンテナンスリリースバージョンをリリースしてみた (日本Hadoopユーザー会 ライトニングトーク@Cloudera World Tokyo...
Hadoopのメンテナンスリリースバージョンをリリースしてみた (日本Hadoopユーザー会 ライトニングトーク@Cloudera World Tokyo...
 
Hive on Tezのベストプラクティス
Hive on TezのベストプラクティスHive on Tezのベストプラクティス
Hive on Tezのベストプラクティス
 
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
SIerとオープンソースの美味しい関係 ~コミュニティの力を活かして世界を目指そう~
 
OpenStack Saharaを使ったデータ分析基板を作った話 - OpenStack最新情報セミナー(2016年7月)
 OpenStack Saharaを使ったデータ分析基板を作った話  - OpenStack最新情報セミナー(2016年7月) OpenStack Saharaを使ったデータ分析基板を作った話  - OpenStack最新情報セミナー(2016年7月)
OpenStack Saharaを使ったデータ分析基板を作った話 - OpenStack最新情報セミナー(2016年7月)
 
Openstack ceph 20171115 vtj
Openstack ceph 20171115 vtjOpenstack ceph 20171115 vtj
Openstack ceph 20171115 vtj
 
Automation of Rolling Upgrade of Hadoop Cluster without Data Lost and Job Fai...
Automation of Rolling Upgrade of Hadoop Cluster without Data Lost and Job Fai...Automation of Rolling Upgrade of Hadoop Cluster without Data Lost and Job Fai...
Automation of Rolling Upgrade of Hadoop Cluster without Data Lost and Job Fai...
 
20170303 java9 hadoop
20170303 java9 hadoop20170303 java9 hadoop
20170303 java9 hadoop
 
SIプロジェクトでのインフラ自動化の事例 (第1回 Puppetユーザ会 発表資料)
SIプロジェクトでのインフラ自動化の事例 (第1回 Puppetユーザ会 発表資料)SIプロジェクトでのインフラ自動化の事例 (第1回 Puppetユーザ会 発表資料)
SIプロジェクトでのインフラ自動化の事例 (第1回 Puppetユーザ会 発表資料)
 
僕とヤフーと時々Teradata #prestodb
僕とヤフーと時々Teradata #prestodb僕とヤフーと時々Teradata #prestodb
僕とヤフーと時々Teradata #prestodb
 
Zabbix勉強会
Zabbix勉強会Zabbix勉強会
Zabbix勉強会
 
[JANOG35.5] WhiteBox SW検証 ~サーバサイド編~
[JANOG35.5] WhiteBox SW検証  ~サーバサイド編~[JANOG35.5] WhiteBox SW検証  ~サーバサイド編~
[JANOG35.5] WhiteBox SW検証 ~サーバサイド編~
 
ネットワン様講演 OpenStack最新情報セミナー 2014年2月
ネットワン様講演 OpenStack最新情報セミナー 2014年2月ネットワン様講演 OpenStack最新情報セミナー 2014年2月
ネットワン様講演 OpenStack最新情報セミナー 2014年2月
 
Yahoo!プロモーション広告のビックデータ基盤を支える技術と今後の展望
Yahoo!プロモーション広告のビックデータ基盤を支える技術と今後の展望Yahoo!プロモーション広告のビックデータ基盤を支える技術と今後の展望
Yahoo!プロモーション広告のビックデータ基盤を支える技術と今後の展望
 
ブロードバンドタワー様講演 OpenStack最新情報セミナー 2014年4月
ブロードバンドタワー様講演 OpenStack最新情報セミナー 2014年4月ブロードバンドタワー様講演 OpenStack最新情報セミナー 2014年4月
ブロードバンドタワー様講演 OpenStack最新情報セミナー 2014年4月
 

Similar a Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)LT①

DebianとWordPressでハッピーになろう!
DebianとWordPressでハッピーになろう!DebianとWordPressでハッピーになろう!
DebianとWordPressでハッピーになろう!Jun Nogata
 
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境Masashi Shinbara
 
はてなのサービスの開発環境
はてなのサービスの開発環境はてなのサービスの開発環境
はてなのサービスの開発環境ast_j
 
Itcamp長崎2012 capistrano
Itcamp長崎2012 capistranoItcamp長崎2012 capistrano
Itcamp長崎2012 capistranokumachang_LL
 
第1回 一撃サーバー構築シェルスクリプト勉強会
第1回 一撃サーバー構築シェルスクリプト勉強会第1回 一撃サーバー構築シェルスクリプト勉強会
第1回 一撃サーバー構築シェルスクリプト勉強会Yasutaka Hamada
 
OpenStack on OpenStack with CI
OpenStack on OpenStack with CIOpenStack on OpenStack with CI
OpenStack on OpenStack with CIkanabuchi
 
Ansible handson ood2016
Ansible handson ood2016Ansible handson ood2016
Ansible handson ood2016Hideki Saito
 
Openstack SPICE console (icehouse) verification
Openstack SPICE console (icehouse) verificationOpenstack SPICE console (icehouse) verification
Openstack SPICE console (icehouse) verificationyukihiro kawada
 
Chefで始めるWindows Server構築
Chefで始めるWindows Server構築Chefで始めるWindows Server構築
Chefで始めるWindows Server構築Takashi Kanai
 
決済金融から始めるデータドリブンカンパニー
決済金融から始めるデータドリブンカンパニー決済金融から始めるデータドリブンカンパニー
決済金融から始めるデータドリブンカンパニーTokuhiro Eto
 
サバフェスLT(元うなぎ屋)
サバフェスLT(元うなぎ屋)サバフェスLT(元うなぎ屋)
サバフェスLT(元うなぎ屋)snicker_jp
 

Similar a Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)LT① (20)

DebianとWordPressでハッピーになろう!
DebianとWordPressでハッピーになろう!DebianとWordPressでハッピーになろう!
DebianとWordPressでハッピーになろう!
 
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境
もう XAMPP / MAMP はいらない!
Vagrant で作る PHP 開発環境
 
【Alfresco勉強会】インストール手順書(windows azure)
【Alfresco勉強会】インストール手順書(windows azure)【Alfresco勉強会】インストール手順書(windows azure)
【Alfresco勉強会】インストール手順書(windows azure)
 
Jenkins 2.0 (日本語)
Jenkins 2.0 (日本語)Jenkins 2.0 (日本語)
Jenkins 2.0 (日本語)
 
はてなのサービスの開発環境
はてなのサービスの開発環境はてなのサービスの開発環境
はてなのサービスの開発環境
 
Itcamp長崎2012 capistrano
Itcamp長崎2012 capistranoItcamp長崎2012 capistrano
Itcamp長崎2012 capistrano
 
Vagrant体験入門
Vagrant体験入門Vagrant体験入門
Vagrant体験入門
 
第1回 一撃サーバー構築シェルスクリプト勉強会
第1回 一撃サーバー構築シェルスクリプト勉強会第1回 一撃サーバー構築シェルスクリプト勉強会
第1回 一撃サーバー構築シェルスクリプト勉強会
 
ACI + Ansible
ACI + AnsibleACI + Ansible
ACI + Ansible
 
決済金融から始めるデータドリブンカンパニー #yjmu
決済金融から始めるデータドリブンカンパニー #yjmu決済金融から始めるデータドリブンカンパニー #yjmu
決済金融から始めるデータドリブンカンパニー #yjmu
 
OpenStack on OpenStack with CI
OpenStack on OpenStack with CIOpenStack on OpenStack with CI
OpenStack on OpenStack with CI
 
Ansible handson ood2016
Ansible handson ood2016Ansible handson ood2016
Ansible handson ood2016
 
Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)LT②
Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)LT②Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)LT②
Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)LT②
 
Openstack SPICE console (icehouse) verification
Openstack SPICE console (icehouse) verificationOpenstack SPICE console (icehouse) verification
Openstack SPICE console (icehouse) verification
 
Chefで始めるWindows Server構築
Chefで始めるWindows Server構築Chefで始めるWindows Server構築
Chefで始めるWindows Server構築
 
Yahoo! JAPAN の Ambari 活用事例 #yjdsnight
Yahoo! JAPAN の Ambari 活用事例 #yjdsnightYahoo! JAPAN の Ambari 活用事例 #yjdsnight
Yahoo! JAPAN の Ambari 活用事例 #yjdsnight
 
決済金融から始めるデータドリブンカンパニー
決済金融から始めるデータドリブンカンパニー決済金融から始めるデータドリブンカンパニー
決済金融から始めるデータドリブンカンパニー
 
サバフェスLT(元うなぎ屋)
サバフェスLT(元うなぎ屋)サバフェスLT(元うなぎ屋)
サバフェスLT(元うなぎ屋)
 
Ansible2.0と実用例
Ansible2.0と実用例Ansible2.0と実用例
Ansible2.0と実用例
 
実は怖くないDevOps
実は怖くないDevOps実は怖くないDevOps
実は怖くないDevOps
 

Más de Yahoo!デベロッパーネットワーク

ヤフーでは開発迅速性と品質のバランスをどう取ってるか
ヤフーでは開発迅速性と品質のバランスをどう取ってるかヤフーでは開発迅速性と品質のバランスをどう取ってるか
ヤフーでは開発迅速性と品質のバランスをどう取ってるかYahoo!デベロッパーネットワーク
 
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2Yahoo!デベロッパーネットワーク
 
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtcヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtcYahoo!デベロッパーネットワーク
 
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtcYahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtcYahoo!デベロッパーネットワーク
 
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtcヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtcYahoo!デベロッパーネットワーク
 
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtcYahoo!デベロッパーネットワーク
 
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtcPC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtcYahoo!デベロッパーネットワーク
 
モブデザインによる多職種チームのコミュニケーション改善 #yjtc
モブデザインによる多職種チームのコミュニケーション改善 #yjtcモブデザインによる多職種チームのコミュニケーション改善 #yjtc
モブデザインによる多職種チームのコミュニケーション改善 #yjtcYahoo!デベロッパーネットワーク
 
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtcユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtcYahoo!デベロッパーネットワーク
 

Más de Yahoo!デベロッパーネットワーク (20)

ゼロから始める転移学習
ゼロから始める転移学習ゼロから始める転移学習
ゼロから始める転移学習
 
継続的なモデルモニタリングを実現するKubernetes Operator
継続的なモデルモニタリングを実現するKubernetes Operator継続的なモデルモニタリングを実現するKubernetes Operator
継続的なモデルモニタリングを実現するKubernetes Operator
 
ヤフーでは開発迅速性と品質のバランスをどう取ってるか
ヤフーでは開発迅速性と品質のバランスをどう取ってるかヤフーでは開発迅速性と品質のバランスをどう取ってるか
ヤフーでは開発迅速性と品質のバランスをどう取ってるか
 
オンプレML基盤on Kubernetes パネルディスカッション
オンプレML基盤on Kubernetes パネルディスカッションオンプレML基盤on Kubernetes パネルディスカッション
オンプレML基盤on Kubernetes パネルディスカッション
 
LakeTahoe
LakeTahoeLakeTahoe
LakeTahoe
 
オンプレML基盤on Kubernetes 〜Yahoo! JAPAN AIPF〜
オンプレML基盤on Kubernetes 〜Yahoo! JAPAN AIPF〜オンプレML基盤on Kubernetes 〜Yahoo! JAPAN AIPF〜
オンプレML基盤on Kubernetes 〜Yahoo! JAPAN AIPF〜
 
Persistent-memory-native Database High-availability Feature
Persistent-memory-native Database High-availability FeaturePersistent-memory-native Database High-availability Feature
Persistent-memory-native Database High-availability Feature
 
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
 
eコマースと実店舗の相互利益を目指したデザイン #yjtc
eコマースと実店舗の相互利益を目指したデザイン #yjtceコマースと実店舗の相互利益を目指したデザイン #yjtc
eコマースと実店舗の相互利益を目指したデザイン #yjtc
 
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtcヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc
 
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtcYahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
 
ビッグデータから人々のムードを捉える #yjtc
ビッグデータから人々のムードを捉える #yjtcビッグデータから人々のムードを捉える #yjtc
ビッグデータから人々のムードを捉える #yjtc
 
サイエンス領域におけるMLOpsの取り組み #yjtc
サイエンス領域におけるMLOpsの取り組み #yjtcサイエンス領域におけるMLOpsの取り組み #yjtc
サイエンス領域におけるMLOpsの取り組み #yjtc
 
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtcヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc
 
Yahoo! JAPAN Tech Conference 2022 Day2 Keynote #yjtc
Yahoo! JAPAN Tech Conference 2022 Day2 Keynote #yjtcYahoo! JAPAN Tech Conference 2022 Day2 Keynote #yjtc
Yahoo! JAPAN Tech Conference 2022 Day2 Keynote #yjtc
 
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc
 
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtcPC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc
 
モブデザインによる多職種チームのコミュニケーション改善 #yjtc
モブデザインによる多職種チームのコミュニケーション改善 #yjtcモブデザインによる多職種チームのコミュニケーション改善 #yjtc
モブデザインによる多職種チームのコミュニケーション改善 #yjtc
 
「新しいおうち探し」のためのAIアシスト検索 #yjtc
「新しいおうち探し」のためのAIアシスト検索 #yjtc「新しいおうち探し」のためのAIアシスト検索 #yjtc
「新しいおうち探し」のためのAIアシスト検索 #yjtc
 
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtcユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc
 

Último

TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 

Último (10)

TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 

Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)LT①

  • 1. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. OpenStack関連セッション 1 OpenStack Summit Barcelona 2016 参加報告 神尾皓 立見祐介 Ansibleによるおっちょこちょい の運用自動化 高橋拓也 4年間、OpenStackをデプロイし てみた 北田駿也 OpenStack on Kubernetes 木下裕太
  • 2. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 2017年1月30日 2 高橋拓也(24) サイトオペレーション本部 インフラ技術1部 クラウドイノベーション Ansibleによる おっちょこちょいの運用自動化
  • 3. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 自己紹介
  • 4. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 自己紹介 4 • 高橋拓也 • インフラ技術1部 クラウドイノベーション所属 • プライベートクラウド(OpenStack)の運用・開発を担当 • 2016年度新卒入社 • インフラの基礎技術について、目下勉強中です
  • 5. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. つらかったこと
  • 6. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. つらかったこと 6 • はじめての既存システム運用 • しかもものすごく大規模システム • 一つのミスが複数のサービスに大影響を • しかし、そんな自覚が足りなかった新人1ヶ月目
  • 7. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. つらかったこと 7 • (^o^)。。( 本番環境にアクセスっと
  • 8. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. つらかったこと 8 • (^o^)。。( 本番環境にアクセスっと • (^o^)。。(Haproxyあがってないな、 $ sudo service haproxy start
  • 9. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. つらかったこと 9 • (^o^)。。( 本番環境にアクセスっと • (^o^)。。(Haproxyあがってないな、 $ sudo service haproxy start • (´・ω・`) < 高橋くん、それheartbeatだよ。。。
  • 10. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. つらかったこと 10 • (^o^)。。( 本番環境にアクセスっと • (^o^)。。(Haproxyあがってないな、 $ sudo service haproxy start • (´・ω・`) < 高橋くん、それheartbeatだよ。。。 • (´・ω・`) < もうちょっと確認してから sudo は打とうね。。。
  • 11. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. つらかったこと 11 • (^o^)。。( 本番環境にアクセスっと • (^o^)。。(Haproxyあがってないな、 $ sudo service haproxy start • (´・ω・`) < 高橋くん、それheartbeatだよ。。。 • (´・ω・`) < もうちょっと確認してから sudo は打とうね。。。 はじめてのオペミス (運用業務開始2日目 本番環境こわい 対策: 本番環境では気を引き締めよう
  • 12. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. つらかったこと 12 • (^o^)。( 今度は慎重にやるぞー
  • 13. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. つらかったこと 13 • (^o^)。( 今度は慎重にやるぞー • (^o^)。( だんだん疲れてきたな。。
  • 14. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. つらかったこと 14 • (^o^)。( 今度は慎重にやるぞー • (^o^)。( だんだん疲れてきたな。。 • (^o^)。( VMのnicを削除するぞ!
  • 15. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. つらかったこと 15 • (^o^)。( 今度は慎重にやるぞー • (^o^)。( だんだん疲れてきたな。。 • (^o^)。( VMのnicを削除するぞ! • (^o^) < あ!削除するnicを間違えた!!
  • 16. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. つらかったこと 16 • (^o^)。( 今度は慎重にやるぞー • (^o^)。( だんだん疲れてきたな。。 • (^o^)。( VMのnicを削除するぞ! • (^o^) < あ!削除するnicを間違えた!! • (´・ω・`) < 事故
  • 17. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. つらかったこと 17 • (^o^)。( 今度は慎重にやるぞー • (^o^)。( だんだん疲れてきたな。。 • (^o^)。( VMのnicを削除するぞ! • (^o^) < あ!削除するnicを間違えた!! • (´・ω・`) < 事故 • 必要ないポートだったため事故とはならず • 対策: 目grepはやめてマシンにgrepさせる
  • 18. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. つらかったこと 18 • (^o^)。( このDB書き込みオペはミスできないな。。
  • 19. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. つらかったこと 19 • (^o^)。( このDB書き込みオペはミスできないな。。 • (^o^)。( 手順書からしっかりコピペして、2回チェックして • (^o^)。( 出力結果も残したし、完璧だ!!
  • 20. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. つらかったこと 20 • (^o^)。( このDB書き込みオペはミスできないな。。 • (^o^)。( 手順書からしっかりコピペして、2回チェックして • (^o^)。( 出力結果も残したし、完璧だ!! • (´・ω・`) < 高橋くん、それslaveだよ。。。
  • 21. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. つらかったこと 21 • (^o^)。( このDB書き込みオペはミスできないな。。 • (^o^)。( 手順書からしっかりコピペして、2回チェックして • (^o^)。( 出力結果も残したし、完璧だ!! • (´・ω・`) < 高橋くん、それslaveだよ。。。 • 先輩社員の神業オペレーションにより、影響を残さず処理できた • 対策: hostnameをターミナルに出力し続ける • もしhostnameを見逃したら。。。 → あまり対策になってない
  • 22. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 気づいたこと 22 • オペミスする確率はエンターを押す回数と比例する • 「対策: 気をつける」 は、必ず失敗する
  • 23. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 気づいたこと 23 • オペミスする確率はエンターを押す回数と比例する • 「対策: 気をつける」 は、必ず失敗する オペミスが起きないインターフェースを使おう!
  • 24. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 脱オペミス!
  • 25. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. オペミスが起きないIFとは? • オペミスが起きないIFとは • 実行のたびに状態が変化しない • 冪等性を保つ or 保つ仕組みがある • 作業内容が見える • 第三者によりチェックされた作業しか実行できない ようにする • 入力が少ない • 固定の設定値はツールで保持する • 人力作業が少ない • 単純作業は自動化させる 25
  • 26. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.26
  • 27. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.27
  • 28. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. Ansibleによる運用自動化 28 • なぜAnsible? • 実行のたびに状態が変化しない • 冪等性を保つ仕組みを持つ • →作業実行に迷わない • 作業内容が見える • 作業内容をコード化して管理できる • タスク実行が逐次処理となる • →やり方のわからない作業がなくなる • 入力が少ない • 変数として値をplaybookに保持できる • →どの変数を利用するかを入力として与えれば良い • 人力作業が少ない • 単純作業は自動化させる • →エンターの叩かれる回数は確実に減る
  • 29. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 活用例
  • 30. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 活用例 30 • OpenStackを操作してFlavorを追加する • Flavor … インスタンスのスペック情報
  • 31. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.31 実行手順 手順 1. クラスタのユーザー情報を読み込む 2. Clientをロードする 3. nova flavor-create を実行し、flavo を作成する 4. nova flavor-key を実行し、flavorの extra_spec(quotaなど) を追加する 実行コマンド 1. $ source cluster/adminrc 2. $ source /os/liberty/activate 3. $ nova flavor-create 2v-1024M- 40G auto 1024 40 2 4. $ nova flavor-key set drive_type=ssd
  • 32. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.32 実行手順 手順 1. クラスタのユーザー情報を読み込む 2. Clientをロードする 3. nova flavor-create を実行し、flavo を作成する 4. nova flavor-key を実行し、flavorの extra_spec(quotaなど) を追加する 実行コマンド 1. $ source cluster/adminrc 2. $ source /os/liberty/activate 3. $ nova flavor-create 2v-1024M- 40G auto 1024 40 2 4. $ nova flavor-key set drive_type=ssd
  • 33. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 活用例 33 • OpenStackを操作してFlavorを追加する • Flavor … インスタンスのスペック情報 • OpenStackのクラスタ毎に追加するスペックが異なる • SSD機のクラスタはdisk quotaをゆるめたりとか • 想定されるオペミス • 同名のフレーバーを作ろうとしてしまう • extra_specの値を間違えて設定してしまう Ansibleでワークフロー化
  • 34. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 活用例 34
  • 35. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 活用例 35 add_flavor.yaml - hosts: work user: takutaka roles: - nova/flavor-create
  • 36. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 活用例 36 vars/flavor-create.json { "flavor_name": "2v-1024M-30G", "cluster_name": “cluster1" }
  • 37. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 活用例 37 vars/flavor-create.json { "flavor_name": "2v-1024M-30G", "cluster_name": “cluster1" } add_flavor.yaml - hosts: work user: takutaka roles: - nova/flavor-create $ ansible-playbook add_flavor.yaml –i hosts ¥ –-extra-vars “@vars/flavor-create.json”
  • 38. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 活用例 38 flavor-create/tasks/main.yaml - name: parse flavor name to machine spec flavor2spec: flavor: '{{flavor_name}}' register: spec - name: check flavor name shell: | nova flavor-list |grep {{flavor-name}} register: result failed_when: result not in [0, 1] - name: create flavor shell: | nova flavor-create "{{flavor_name}}" auto ¥ {{spec.mem}} {{spec.disk}} {{spec.vcpu}} when: result.rc == 1 - name: set extra_spec to flavor shell: | nova flavor-key "{{flavor_name}}" set ¥ "{{item.key}}"="{{item.value}}" with_dict: "{{vars[cluster_name]}}"
  • 39. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 活用例 39 Library/flavor2spec.sh #!/bin/bash name=`cat $1|awk -F'flavor=' '{print $2}'|awk -F' ' '{print $1}' ` vcpu=`echo $name|awk -F'-' '{print $1}'` mem=`echo $name|awk -F'-' '{print $2}'` disk=`echo $name|awk -F'-' '{print $3}'` echo -n {"name":"${name}","vcpu":"${vcpu}","mem":"${mem}","disk":"${disk}" }
  • 40. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 活用例 40 flavor-create/tasks/main.yaml - name: parse flavor name to machine spec flavor2spec: flavor: '{{flavor_name}}' register: spec - name: check flavor name shell: | nova flavor-list |grep {{flavor-name}} register: result failed_when: result not in [0, 1] - name: create flavor shell: | nova flavor-create "{{flavor_name}}" auto ¥ {{spec.mem}} {{spec.disk}} {{spec.vcpu}} when: result.rc == 1 - name: set extra_spec to flavor shell: | nova flavor-key "{{flavor_name}}" set ¥ "{{item.key}}"="{{item.value}}" with_dict: "{{vars[cluster_name]}}"
  • 41. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 活用例 41 flavor-create/tasks/main.yaml - name: parse flavor name to machine spec flavor2spec: flavor: '{{flavor_name}}' register: spec - name: check flavor name shell: | nova flavor-list |grep {{flavor-name}} register: result failed_when: result not in [0, 1] - name: create flavor shell: | nova flavor-create "{{flavor_name}}" auto ¥ {{spec.mem}} {{spec.disk}} {{spec.vcpu}} when: result.rc == 1 - name: set extra_spec to flavor shell: | nova flavor-key "{{flavor_name}}" set ¥ "{{item.key}}"="{{item.value}}" with_dict: "{{vars[cluster_name]}}"
  • 42. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 活用例 42 Flavor-create/vars/main.yaml cluster1: 'quota:disk_write_bytes_sec': 1536000000 'quota:disk_read_bytes_sec': 1536000000 'quota:vif_outbound_average': 64000 'quota:vif_inbound_peak': 64000 'quota:vif_inbound_average': 64000 'quota:vif_outbound_peak': 64000 'drive_type': ssd cluster2: 'quota:disk_write_bytes_sec': 153600000 'quota:disk_read_bytes_sec': 153600000 'quota:vif_outbound_average': 64000 'quota:vif_inbound_peak': 64000 'quota:vif_inbound_average': 64000 'quota:vif_outbound_peak': 64000 'drive_type': sas
  • 43. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 確認項目が減少 43 自動化前確認項目(11項目) 自動化後確認項目(2項目) フレーバー名 フレーバー名 vcpu クラスタ名 Memory Disk quota:disk_write_bytes_sec quota:vif_outbound_average quota:vif_inbound_peak quota:vif_inbound_average quota:disk_read_bytes_sec quota:vif_outbound_peak drive_type
  • 44. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.44 運用手順も減少 1. クラスタadminrcを読み込む 2. Clientをロードする 3. 手順書を元にコマンドを作成する 4. コマンドを実行する 5. 追加するextra_spec分コマンド実行 する (7回) 計 11手順 1. フレーバー名とクラスタ名をjsonに 書き込む 2. Playbookを実行する 計 2手順
  • 45. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved.45 運用手順も減少 1. クラスタadminrcを読み込む 2. Clientをロードする 3. 手順書を元にコマンドを作成する 4. コマンドを実行する 5. 追加するextra_spec分コマンド実行 する (7回) 計 11手順 1. フレーバー名とクラスタ名をjsonに 書き込む 2. Playbookを実行する 計 2手順 脱オペミス完了!
  • 46. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 自動化の懸念 46 • Playbookの信憑性は誰が担保する? • 冪等性の保たれたPlaybookを書く • ベテラン運用者に確認してもらう • 検証環境で試す • 運用のための知識が身につかないのでは? • 運用の知識を伴わないとそもそもPlaybookが書けない • 空いたリソースで他の問題が解決できたらそれが一番
  • 47. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 運用フロー 47 Push & PR おねがい Merge Webhook pull execute cluster cluster Playbook開発者 Playbook開発者
  • 48. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 自動化の懸念 48 • Playbookの信憑性は誰が担保する? • 冪等性の保たれたPlaybookを書く • ベテラン運用者に確認してもらう • 検証環境で試す • 運用のための知識が身につかないのでは? • 運用の知識を伴わないとそもそもPlaybookが書けない • Playbookを見れば、「正しいやり方」を身につけられる • 空いたリソースで他の問題が解決できたらそれが一番
  • 49. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. まとめ 49 • 手動の運用はつらいよ • 自動化すると改善できることがあるよ • Ansibleなら、始めやすいしシンプルでおすすめだよ • 自動化に振り回されないように気をつけよう
  • 50. Copyright © 2017 Yahoo Japan Corporation. All Rights Reserved. 他の構成管理ツールとの比較 50 実装言語 設定言語 冪等性 モジュール言語 エージェント Fabric Python Python ☓ python ☓ Capistrano Ruby DSL(Ruby) ☓ Ruby ☓ Chef Ruby DSL(Ruby) ○ Ruby ○ puppet Ruby 独自 ○ 独自 △ Ansible Python Yaml ○ なんでも ☓