Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Using Ceph-Deploy
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Tomokazu HIRAI
June 05, 2014
Technology
1
4.5k
Using Ceph-Deploy
JTF 2014 での発表資料
Tomokazu HIRAI
June 05, 2014
Tweet
Share
More Decks by Tomokazu HIRAI
See All by Tomokazu HIRAI
rcbops/chef-cookbooks
jedipunkz
1
3k
Elasticsearch, Fluentd, Kibana 概要とデプロイ方法
jedipunkz
0
250
15分で解る Chef
jedipunkz
0
210
openstack-chef-repo
jedipunkz
1
110
Other Decks in Technology
See All in Technology
変化するコーディングエージェントとの現実的な付き合い方 〜Cursor安定択説と、ツールに依存しない「資産」〜
empitsu
4
1.3k
Frontier Agents (Kiro autonomous agent / AWS Security Agent / AWS DevOps Agent) の紹介
msysh
3
160
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
1.8k
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
13k
モダンUIでフルサーバーレスなAIエージェントをAmplifyとCDKでサクッとデプロイしよう
minorun365
4
180
30万人の同時アクセスに耐えたい!新サービスの盤石なリリースを支える負荷試験 / SRE Kaigi 2026
genda
3
1.2k
2026年、サーバーレスの現在地 -「制約と戦う技術」から「当たり前の実行基盤」へ- /serverless2026
slsops
2
220
SREのプラクティスを用いた3領域同時 マネジメントへの挑戦 〜SRE・情シス・セキュリティを統合した チーム運営術〜
coconala_engineer
2
630
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
180
15 years with Rails and DDD (AI Edition)
andrzejkrzywda
0
190
Embedded SREの終わりを設計する 「なんとなく」から計画的な自立支援へ
sansantech
PRO
3
2.3k
Ruby版 JSXのRuxが気になる
sansantech
PRO
0
140
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
55
9.5k
Tell your own story through comics
letsgokoyo
1
810
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
200
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
84
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
The Spectacular Lies of Maps
axbom
PRO
1
520
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.8k
Are puppies a ranking factor?
jonoalderson
1
2.7k
Docker and Python
trallard
47
3.7k
Into the Great Unknown - MozCon
thekraken
40
2.3k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
64
Transcript
Using Ceph-Deploy Tomokazu HIRAI @jedipunkz
Index * ࣗݾհ * Ceph-Deploy ͱ ? * ߏ *
Ceph-Deploy Λ༻͍Δ४උ * खॱ : conf ϑΝΠϧͷੜ * खॱ : Ceph ͷΠϯετʔϧ * खॱ : MON ͷՔಇ * खॱ : 伴ͷڞ༗ * खॱ : OSD ͷՔಇ * खॱ : MDS ͷՔಇ * खॱ : ֤छϚϯτํ๏
ࣗݾհ ! * ໊લ: Tomokazu HIRAI * ࣄ: ϗεςΟϯάձࣾۈ *
ຊ OpenStack Ϣʔβձ * #Ceph, #Chef, #Fog, #Swift, #Sensu, #Ruby, #docker, #Mesos, … * http://jedipunkz.github.io/ * https://twitter.com/jedipunkz
ࠓճͷखॱͲ͓Γʹૢ࡞ ͢ΕɺͱΓ͋͑ͣಈ͖·͢.
Ceph-Deploy ͱʁ * Ceph ͷެࣜσϓϩΠπʔϧ * Python * ެ։ॴ
: https://github.com/ceph/ceph-deploy * ϚχϡΞϧͰΠϯετʔϧ͢Δͱ ‘Ceph-Deploy ͑’ ͱ ౖΒΕΔ !
ߏ EFWTEC EFWTED EFWTTE DFQIOPEF NPO PTE PTE EFWTEC EFWTED
EFWTTE DFQIOPEF NPO PTE PTE EFWTEC PTE EFWTED EFWTTE DFQIOPEF NPO PTE DFQI NET $MVTUFS/FUXPSL 1VCMJD/FUXPSL DFQI NET
Ceph-Deploy Λ༻͍Δ४උ #1 Ceph-Deploy Public Network ্ͷͲ͔͜ͷϊʔυͰ࣮ߦ ͜ͷखॱͰ ceph05
Ͱ࣮ߦ͢Δ͜ͱΛલఏʹ ! % sudo apt-get update ; sudo apt-get -y install python-virtualenv % git clone https://github.com/ceph/ceph-deploy.git ~/ceph-deploy % cd ~/ceph-deploy % ./bootstrap ! % sudo ${EDITOR} /etc/hosts 10.200.10.1 ceph01 10.200.10.2 ceph02 10.200.10.3 ceph03 10.200.10.4 ceph04 10.200.10.5 ceph05
Ceph-Deploy Λ༻͍Δ४උ #2 % ssh-keygen % ssh-copy-id ceph@ceph01 % ssh-copy-id
ceph@ceph02 % ssh-copy-id ceph@ceph03 % ssh-copy-id ceph@ceph04 ! targets# ${EDITOR} /etc/sudoers.d/ceph cephALL=(ALL) NOPASSWD:ALL
Conf ϑΝΠϧͷੜ #1 % ceph-deploy --cluster cluster01 new \ ceph01
ceph02 ceph03 ceph04 ceph05 ! * ΧϨϯτσΟϨΫτϦʹ cluster01.conf ͕ੜ͞ΕΔ * ߲࣍ͷίϯϑΟΪϡϨʔγϣϯΛه͢Δ
Conf ϑΝΠϧͷੜ #2 public network = <network_addr> cluster network =
<network_addr> ! [mon.a] host = ceph01 mon addr = <ceph01_ip_addr>:6789 ! [mon.b] host = ceph02 mon addr = <ceph02_ip_addr>:6789 ! [mon.c] host = ceph03 mon addr = <ceph03_ip_addr>:6789 ! <ӈଓ͘> [osd.0] public addr = <ceph01_public_ip_addr> cluster addr = <ceph01_cluster_ip_addr> ! [osd.1] public addr = <ceph01_public_ip_addr> cluster addr = <ceph01_cluster_ip_addr> ! [osd.2] public addr = <ceph01_public_ip_addr> cluster addr = <ceph01_cluster_ip_addr> ! [mds.a] host = ceph04 ! [mds.b] host = ceph05
Ceph ͷΠϯετʔϧ % ceph-deploy --cluster cluster01 install \ ceph01 ceph02
ceph03 ceph04 ceph05 ! Πϯετʔϧ͢ΔόʔδϣϯͷࢦఆԼهͷ௨Γߦ͏ ! --release <code-name> --testing --dev <branch-or-tag>
MON ͷՔಇ % ceph-deploy --cluster cluster01 mon create \ ceph01
ceph02 ceph03
伴ͷڞ༗ MON ϗετ͔Β伴Λऔಘ͠ OSD, MDS ϒʔτετϥοϓʹඋ͑Δ ! % ceph-deploy --cluster
cluster01 gatherkeys \ ceph01 ceph02 ceph03
OSD ͷՔಇ Disk Ұཡͷ֬ೝ % ceph-deploy --cluster cluster01 disk list
ceph01 % ceph-deploy --cluster cluster01 disk list ceph02 % ceph-deploy --cluster cluster01 disk list ceph03 ! Disk ΛॳظԽ % ceph-deploy --cluster cluster01 disk zap ceph01:/dev/sdb ceph01:/dev/sdc % ceph-deploy --cluster cluster01 disk zap ceph02:/dev/sdb ceph02:/dev/sdc % ceph-deploy --cluster cluster01 disk zap ceph03:/dev/sdb ceph03:/dev/sdc ! ϝλσʔλΛ֨ೲ͢Δ Disk ͷύʔςΟγϣχϯά (sdb, sdc ༻ 2 ͭ) targets% sudo gdisk /dev/ssd #<= ֤ϊʔυͰ࣮ࢪ /dev/ssd1, ssd2 Λੜ ! OSD ͷՔಇ % ceph-deploy --cluster cluster01 osd create ceph01:sdb:/dev/ssd1 \ ceph02:sdb:/dev/ssd1 ceph03:sdb:/dev/ssd1 % ceph-deploy --cluster cluster01 osd create ceph01:sdc:/dev/ssd2 \ ceph02:sdc:/dev/ssd2 ceph03:sdc:/dev/ssd2
MDS ͷՔಇ % ceph-deploy --cluster cluster01 mds create \ ceph04
ceph05
֤छϚϯτํ๏
֤छϚϯτํ๏ Block Device Mount % sudo rbd -c /etc/ceph/cluster01.conf create
foo --keyring \ /etc/ceph/cluster01.client.admin.keyring --size 4096 ! % sudo modprobe rbd ! % sudo rbd map foo --pool rbd --name client.admin --keyring \ /etc/ceph/cluster01.client.admin.keyring -c \ /etc/ceph/cluster01.conf ! % sudo mkfs.ext4 -m0 /dev/rbd/rbd/foo % sudo mkdir /mnt/myrbd % sudo mount /dev/rbd/rbd/foo /mnt/myrbd
֤छϚϯτํ๏ Kernel Driver Mount % sudo mkdir /mnt/mykernelfs % sudo
mount -t ceph 10.200.10.1:6789:/ \ /mnt/mykernelfs -o \ name=admin,secret=`sudo ceph-authtool \ -p /etc/ceph/cluster01.client.admin.keyring `
֤छϚϯτํ๏ Fuse Driver Mount % sudo apt-get install ceph-fuse %
sudo ceph-fuse -m 10.200.9.116:6789 \ /mnt/myfusefs \ -c /etc/ceph/cluster01.conf —keyring /etc/ceph/cluster01.client.admin.keyring
·ͱΊ
·ͱΊ * ϚχϡΞϧૢ࡞ېࢭ -> Ceph-Deploy Λ༻͍Δͷ͕ެࣜखॱ * ΄΅શͯͷૢ࡞Λ Ceph-Deploy Λ༻͍ͯ֎෦͔Βߦ͏
* OSD Disk 1ຊʹରͯ͠ 1 ϓϩηεͷؔ * OSD, MON, MDS ͦΕͧΕϨϓϦέʔγϣϯ͕औΕΔ Ceph SPOF ͕ແ͍ Distributed Storage System Ͱ͋Δ