SlideShare a Scribd company logo
Submit Search
Upload
Login
Signup
cybozu.com のデータバックアップとリストア、それを活用したリハーサル
Report
toshi_pp
Follow
Jan. 31, 2017
•
0 likes
•
7,227 views
1
of
34
cybozu.com のデータバックアップとリストア、それを活用したリハーサル
Jan. 31, 2017
•
0 likes
•
7,227 views
Download Now
Download to read offline
Report
Technology
cybozu.com のバックアップの取り組みについての紹介です。
toshi_pp
Follow
Recommended
Arukasの運用事例と、末永くインフラ運用していくためのTips(SRE Tech Talks #2)
さくらインターネット株式会社
8.4K views
•
52 slides
5分で分かるサイボウズのSRE
uchan_nos
2K views
•
7 slides
自動構築と自動テスト〜インフラのコード化とクラウドの優位性
azumakuniyuki 🐈
2.3K views
•
26 slides
さくらインターネットベアメタル自動化への挑戦
Hiroki Ito
4.2K views
•
18 slides
○ヶ月でできた!?さくらのクラウド開発秘話(【ヒカ☆ラボ】さくらインターネットとMilkcocoa!年末イベント:ここだけのウラ話)
さくらインターネット株式会社
1.9K views
•
45 slides
さくらのクラウド開発と運用(九州インフラ交流勉強会(Kixs) Vol.005)
さくらインターネット株式会社
609 views
•
47 slides
More Related Content
What's hot
止めないためのWEBインフラ入門
Sho Okada
483 views
•
17 slides
さくらのクラウドの研究活用
さくらインターネット株式会社
485 views
•
28 slides
Janog37 Pattern BoF
Miya Kohno
2.3K views
•
12 slides
JAZUG 4周年総会 「トラブルから学ぶAzure世渡り術」
Yui Ashikaga
2.8K views
•
46 slides
Ansible はじめてみました
Takeshi Kuramochi
2.7K views
•
31 slides
グローバルファイル転送のベストプラクティス
softlayerjp
4.7K views
•
33 slides
What's hot
(20)
止めないためのWEBインフラ入門
Sho Okada
•
483 views
さくらのクラウドの研究活用
さくらインターネット株式会社
•
485 views
Janog37 Pattern BoF
Miya Kohno
•
2.3K views
JAZUG 4周年総会 「トラブルから学ぶAzure世渡り術」
Yui Ashikaga
•
2.8K views
Ansible はじめてみました
Takeshi Kuramochi
•
2.7K views
グローバルファイル転送のベストプラクティス
softlayerjp
•
4.7K views
さくらのクラウド活用事例 - 構成と運用のご紹介(Innovation EGG 第5回 『クラウド運用の本音』)
さくらインターネット株式会社
•
1.2K views
Mackerel x Twilio ~レコチョクの場合~
recotech
•
4.7K views
クラウド運用3足の草鞋151102
Keiichi Hashimoto
•
4K views
これからはじめるインフラエンジニア
外道 父
•
103.4K views
ACE 第6回定例会 ショートプレゼン
Yui Ashikaga
•
394 views
ストレージサービスからの情報漏えいにサヨナラ
Masato Nakamura
•
209 views
Rancher による社内向けテナントサービス基盤
Keita Shimada
•
2.3K views
Global azure boot camp 2015 in japan 妖怪はみた!実録 Azure事件簿
Yui Ashikaga
•
1.6K views
Microsoft Azureで描く未来 !CLR/H &Windows女子部 ー lesson1
Yasuaki Matsuda
•
1.3K views
10/2勉強会資料 ~IaaSを知る前にサーバを知ろう~
Dai Iwai
•
142 views
もしSIerのエンジニアがSRE本を読んだら
Tomoki Ando
•
12K views
NetOpsCoding#5 introduction
Taiji Tsuchiya
•
3.6K views
JAZUG 8周年イベント登壇資料
Dai Iwai
•
535 views
AI分野におけるコンテナオーケストレーションとは
Tetsurou Yano
•
1.7K views
Viewers also liked
Database sql
明 高橋
10.5K views
•
16 slides
Dockerホスティング「Arukas」について(「さくらインターネット」のDockerホスティング「Arukas」と「Docker Machine」ドラ...
さくらインターネット株式会社
4.2K views
•
34 slides
Aws×phpでの 高信頼かつハイパフォーマンスなシステム
KoteiIto
3.6K views
•
49 slides
DMMのゲームプラットフォームで利用している技術やシステム構成、レガシーシステムが抱える課題、解決のためのシステムリプレイスの進め方
DMM_GAMES_PF
3K views
•
55 slides
Elasticsearchを使うときの注意点 公開用スライド
崇介 藤井
30.2K views
•
22 slides
go-apt-cacher/mirror
yutannihilation
12.4K views
•
10 slides
Viewers also liked
(20)
Database sql
明 高橋
•
10.5K views
Dockerホスティング「Arukas」について(「さくらインターネット」のDockerホスティング「Arukas」と「Docker Machine」ドラ...
さくらインターネット株式会社
•
4.2K views
Aws×phpでの 高信頼かつハイパフォーマンスなシステム
KoteiIto
•
3.6K views
DMMのゲームプラットフォームで利用している技術やシステム構成、レガシーシステムが抱える課題、解決のためのシステムリプレイスの進め方
DMM_GAMES_PF
•
3K views
Elasticsearchを使うときの注意点 公開用スライド
崇介 藤井
•
30.2K views
go-apt-cacher/mirror
yutannihilation
•
12.4K views
Dockerの基本と応用~快適コンテナライフを実現するArukas~
Masahito Zembutsu
•
10.4K views
Arukasのご紹介 for 『kintone Café 鹿児島 Vol. 4 × さくらクラブ鹿児島』
さくらインターネット株式会社
•
1.4K views
Arukas(Dockerホスティング)サービス概要資料2016年10月版
さくらインターネット株式会社
•
1.1K views
意外と知られていない AWSのメール配信 テクニック
Yamamoto Kazuhisa
•
9.7K views
Elasticsearchインデクシングのパフォーマンスを測ってみた
Ryoji Kurosawa
•
7.4K views
CloudWatch Eventを使ったamiの削除
淳 千葉
•
3.7K views
initramfsについて
Kazuhiro Nishiyama
•
14.2K views
トランザクションの並行処理制御
Takashi Hoshino
•
6.1K views
20161208 Classmethod Codenize Tools
Kazuki Ueki
•
3K views
2017 0217 io tlt勉強会_発表用
yasuyuki_suzuki
•
487 views
「さくらのIoT Platform α」ハンズオン(さくらクラブIoT福岡 第1回勉強会~さくらのIoT Platformを体験しよう!)
さくらインターネット株式会社
•
2.2K views
Sql server のバックアップとリストアの基礎
Masayuki Ozawa
•
61.9K views
Introducing in-house PaaS in SmartNews
Nobutoshi Ogata
•
5.7K views
Github pagesでRPubsにサヨナラ!
yutannihilation
•
3K views
Similar to cybozu.com のデータバックアップとリストア、それを活用したリハーサル
161218 cybozu SRE
tomonori-saito-cybozu
2K views
•
22 slides
Retty techcafe7 rettydevops
Sunggyu Rhie
269 views
•
11 slides
20220113 my seeking_sre_v3
Ayachika Kitazaki
420 views
•
25 slides
プロが教える Rails 教え方ワンポイントとキャリア情報
DIVE INTO CODE Corp.
883 views
•
26 slides
アジャイルソフトウェア開発の道具箱
Koichi ITO
5.8K views
•
43 slides
Spring Boot + Doma + AngularJSで作るERP #jjug_ccc #ccc_r12
学 松崎
19K views
•
64 slides
Similar to cybozu.com のデータバックアップとリストア、それを活用したリハーサル
(20)
161218 cybozu SRE
tomonori-saito-cybozu
•
2K views
Retty techcafe7 rettydevops
Sunggyu Rhie
•
269 views
20220113 my seeking_sre_v3
Ayachika Kitazaki
•
420 views
プロが教える Rails 教え方ワンポイントとキャリア情報
DIVE INTO CODE Corp.
•
883 views
アジャイルソフトウェア開発の道具箱
Koichi ITO
•
5.8K views
Spring Boot + Doma + AngularJSで作るERP #jjug_ccc #ccc_r12
学 松崎
•
19K views
インフラのQA?なにそれ?おいしいの? Meetup in Osaka Ver.
Mutsumi Kamiike
•
351 views
正しく恐れるクラウドのセキュリティ
ymmt
•
14.2K views
エンジニア必見!Sreへの第一歩
Takuya Tezuka
•
1.7K views
上司が信用できない会社の内部統制~第32回WebSig会議「便利さと、怖さと、心強さと〜戦う会社のための社内セキュリティ 2013年のスタンダードとは?!...
WebSig24/7
•
291.2K views
管理画面レス開発のススメ #オレシカナイト
Takahiro Ogoshi
•
2.5K views
駅すぱあとWebサービスにおけるAWSとその周辺
Mikawa Kouta
•
1.7K views
A3RT -The details and actual use cases of“Analytics & Artificial intelligence...
Recruit Technologies
•
26.6K views
A3RT - the details and actual use cases of "Analytics & Artificial intelligen...
DataWorks Summit/Hadoop Summit
•
856 views
リーン開発の本質 公開用
ESM SEC
•
20.2K views
永和コンサル式プレゼン作成法(公開用)
Yasui Tsutomu
•
4.9K views
.Netlab202107
TomomitsuKusaba
•
230 views
2015年GMOペパボ新卒エンジニア研修 Webオペレーション研修イントロダクション
Takahiro Okumura
•
11.6K views
[db tech showcase Tokyo 2017] E35: 12台でやってみた!DWHソフトウェアアプライアンス Db2 Warehouse ~...
Insight Technology, Inc.
•
181 views
Pythonでwebdriver
株式会社 システムヨシイ
•
4.3K views
Recently uploaded
gtk4_gem_usage.pdf
ssuser0ef4681
14 views
•
6 slides
CCoE実践者コミュニティ#1_CCoEが進めるセキュリティカイゼンの旅.pptx
Tomoaki Tada
43 views
•
20 slides
20230921_IoTLT_vol103_kitazaki_v1.pdf
Ayachika Kitazaki
151 views
•
16 slides
GraphQLはどんな時に使うか
Yutaka Tachibana
8 views
•
37 slides
遠隔お酌IoTLT2309.pptx
Yoshiaki Ito
134 views
•
12 slides
2023情報処理学会関西支部大会-G12.pdf
KoseiShimoda1
7 views
•
11 slides
Recently uploaded
(12)
gtk4_gem_usage.pdf
ssuser0ef4681
•
14 views
CCoE実践者コミュニティ#1_CCoEが進めるセキュリティカイゼンの旅.pptx
Tomoaki Tada
•
43 views
20230921_IoTLT_vol103_kitazaki_v1.pdf
Ayachika Kitazaki
•
151 views
GraphQLはどんな時に使うか
Yutaka Tachibana
•
8 views
遠隔お酌IoTLT2309.pptx
Yoshiaki Ito
•
134 views
2023情報処理学会関西支部大会-G12.pdf
KoseiShimoda1
•
7 views
IGDA Japan SIG Audio #20-1 室内・野外でのマイク収録と整音.pdf
IGDA Japan SIG-Audio
•
108 views
CatBoost on GPU のひみつ
Takuji Tahara
•
495 views
テスト自動化.pdf
ssuserf8ea02
•
23 views
画像生成AIの問題点
iPride Co., Ltd.
•
10 views
MLOps Course Slides_JP(配布用).pdf
Yuya Yamamoto
•
39 views
松下研究室紹介_関西大学高槻キャンパスオープンキャンパス
Matsushita Laboratory
•
27 views
cybozu.com のデータバックアップとリストア、それを活用したリハーサル
1.
cybozu.com のデータバックアップとリストア、 それを活用したリハーサル SRE Tech
Talks #2 サイボウズ株式会社 深谷敏邦
2.
自己紹介 ▌深谷敏邦 (@toshi_pp) ▌運用本部・サービス運用部・SRE ▌弊社クラウドサービスネイティブ世代 新卒5年目
3.
アジェンダ ▌SRE とオペレーション ▌cybozu.com のバックアップについて ▌アップデートリハーサルの取り組み
4.
SRE とオペレーション
5.
SRE とオペレーション ▌SRE 本曰く、SRE
とはソフトウェアエンジニア オペレータとは違う ▌しかし、Google でさえ最大 50% はオペレーションを行っている ▌現実は厳しい
6.
なぜオペレーションを避けるのか ▌オペレーションはスケールしない ▌オペレーションは繰り返しで退屈 ▌オペレーションはミスを生む ▌しかしそれでもオペレーションしないといけない
7.
SRE とバックアップ ▌やらなければならないならできるだけ安全にやりたい 事前レビュー
ペアオペレーション バックアップ ▌バックアップがあれば最悪の事態でも復旧できる 安心感
8.
cybozu.com のバックアップについて
9.
cybozu.com について ▌企業向けクラウドアプリケーションサービス 契約社数17,000社以上
契約ユーザー数65万人以上 ▌データ量は270TB程度
10.
アーキテクチャ ▌マルチテナント ▌マルチアプリケーション ▌マルチバックエンド MySQL Solr
Blob server 独自データベース heysha.cybozu.com onsha.cybozu.com
11.
cybozu.com の運用環境 ▌ハウジングによる自社DC 東日本にメイン環境
西日本にバックアップサイト ▌ベアメタルサーバーの利用 ▌自社開発のクラウド基盤 KVM LVM+iSCSI
12.
cybozu.com のバックアップについて ▌ディスクイメージレベルのオンラインバックアップ(物理バックアップ) ▌インクリメンタルフォーエバー 14日分の増分を保持してその間の任意の時点がリストア可能 ▌メリット
ミドルウェア非依存 ▌デメリット バックアップ時間がかかる リストアが遅い full image … restore restore
13.
バックアップシステムについて ▌ベアメタルに最適化 ▌高速なスキャン HDDはシーケンシャルにアクセスすれば速い ディスク10本のRAID6ならシーケンシャルリードが1GB/sでる ▌ハッシュを使った高速な増分検出 ▌高速な圧縮
snappy
14.
010101010 010101001 … Backup server Backup client disk image hash incremental
diff storage server backup server
15.
遠隔レプリケーション ▌バックアップが1個しかないのは怖い オペミス 地震雷火事おやじ ▌DC間データレプリケーション
データ回線が細い(10Gbps v.s. 1Gbps) ▌CPU を活用して帯域を節約 並列gzip圧縮 LZMAは重すぎた…
16.
東 西 の 壁 東日本DC 西日本DC replication server replication client backup server
replication server snappy diff gzip diff
17.
リストアの工夫 ▌増分バックアップはリストアが遅い 1ボリュームのリストアに数十分~数時間かかる ▌データ量の観点で pre-restore
はコストが大きい ▌増分だけ保持するブロックデバイスがあれば、リストアがそもそも不要 ⇒ dm-thinp
18.
DM Thin Provisioning
(dm-thinp) ▌Linux kernel 3.2 から導入されたデバイスマッパー docker のストレージにも利用されている ▌書き込んだ部分だけ実容量を使用するブロックデバイス B木によって論理ブロック↔実ブロックをマッピングする ▌Incremental Diff を Thin デバイスとして保持する 保存容量を抑えることができる 利用時にリストアする必要がない ▌スナップショットのスナップショットが作れる 利用前にスナップショットを作ることで任意のバックアップを自由に書き換え可能
20.
DM-thinp の失敗談 ▌マッピング用のメタデータデバイスが最大16GBまでしか利用できない 大量のマッピングを保持できない ▌kernel
3.13 (Ubuntu trusty) ではいくつかバグを持っている B木の操作が間違っていてデータ破損が起こる upstream からバックポート済み メタデータスナップショットを使ったときメタデータが破損する場合がある 原因不明 ▌東日本のバックアップでは使わず、西日本のレプリケーション先でのみ使用
21.
バックアップデータの活用 ▌バックアップの運用環境への書き戻しは99%起こらない データを完全に破損してしまうほどのバグやオペミスはまれ ▌バックアップはコストではない 安全にお客様データに触れる手段 ▌活用法
障害調査 アップデートリハーサル
22.
アップデートリハーサルの取り組み
23.
アップデートリハーサル ▌データを更新するアップデート前に、本番手順を使ったリハーサルを行う 想定外のデータがあることでアップデートが失敗しないか まれによくある
アップデートに時間がかかりすぎないか ▌すべては安心のため
24.
リハーサルの流れ ▌本番環境のコピーを作成 バックアップデータから本番環境のスナップショットをリストア ▌アップデートスクリプトを流す ▌成功ならリリースへ ▌失敗なら開発チームにフィードバック データ依存ならリハーサル環境を使って調査
25.
リハーサルに求められるリストアの要件 1. 環境全体のリストア 2. リソースアロケーションの自動化 3.
グローバルに存在するサービスの扱い
26.
①環境全体のリストア ▌データのリストアがあってもアプリケーションは動かない ▌データのバックアップ時点のアプリケーションの構成情報が必要 ▌構成情報のリストアは単純ではない オリジナルのデータを向かないように、リストア先を見るようにする VM
などの ID をオリジナルとかぶらないようにする ▌リストアというよりも当時の構成情報を基にした再構築
27.
マルチテナント環境のリストア ▌1つのアプリケーションをリストアすると、オリジナル、リストアの2つができる ⇒マルチテナント ▌cybozu.com は最初からマルチテナント ▌マルチテナント環境をリストアすると? ①
マルチテナント ② マルチテナントのマルチテナント ▌ オリジナルとリストア環境を区別したいので② ① ②
28.
ワールドライン(WL) ▌マルチテナントのマルチテナントの名前 元ネタは某ゲーム ▌あるタイミングの環境全体を一意に特定するID 本番環境は現在を示す特別なWLを割り当てている ▌アプリケーションはWLとテナントの複合キーで識別される
(WL, tenant) -> application
29.
②リソースアロケーションの自動化 ▌本番は職人(SRE)による温かみのあるリソース割り当て ▌リストア環境構築ツールで使用メモリを元に貪欲法で割り当て まれにリソースが足りずにリハーサルが失敗する その場合は手動で割り当てなおす VM
VM VM VM VM VM
30.
③グローバルに存在するサービスの扱い ▌全テナントが共通に使うサービスがいくつか存在する 画像変換サービス 添付ファイルからの文章抽出サービス ▌WLが後づけでサービスはリクエスト元のテナントが識別できない ▌特定のWLだけを扱うように設定
少なくともリハーサルはできる (w1, a) (w2, a) image converter tenant:a tenant:a
31.
喜びの声
32.
今後に向けて ▌バックアップやリストアの仕組みを各サービスでネイティブに持つ 後づけは大変 ▌バックアップの高速化 ラボで開発した
WalB の導入 https://github.com/walb-linux/walb-driver ▌リソーススケジューラの導入 オペレーションやコードの複雑さを低減させる
33.
まとめ ▌サイボウズのバックアップの仕組みを紹介しました ベアメタル環境でのバックアップ、リストア ▌安心してオペレーションできる仕組みを作ろう バックアップツールの整備
アップデートリハーサル
34.
We are hiring! サイボウズでは一緒にサービスを育てていく仲間を 募集しています
Editor's Notes
マルチテナント slack と同じようにサブドメインで分かれる