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
Tomokazu HIRAI
June 05, 2014
Technology
1
4.4k
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
2.9k
Elasticsearch, Fluentd, Kibana 概要とデプロイ方法
jedipunkz
0
220
15分で解る Chef
jedipunkz
0
190
openstack-chef-repo
jedipunkz
1
90
Other Decks in Technology
See All in Technology
技術広報として2023年度に頑張ったこと / What we did well in FY2023 as a DevRel
pauli
5
450
私のRSpecの書き方 / How I write RSpec
tmtms
4
820
業務で使えるかもしれない…!?GitHub Actions の Tips 集 / CI/CD Test Night #7
ponkio_o
PRO
23
6.8k
生成AIサービスPanorama AIご説明資料
sdt
0
300
TCA入門したてなので、自分が馴染みのある実装と比較しながらキャッチアップしてみる
fumiyasac0921
1
370
KTC_DBRE.pdf
_awache
0
290
やっていきテスト
k6s4i53rx
0
160
「XX試験の環境作ってよ」と言われた時によく使うAWSのソリューションについて
bun913
0
120
大規模なアジャイル開発の現場と技術負債 / Technical Debt
yoshiitaka
20
4k
初心者が行く!サーバレスWebアプリ開発の道
nagaharutogawa
0
440
Tohoku.Tech #1 「Cursorを使ったRaspberry Piの開発」by ねこまた
jun2882
0
250
オーティファイ会社紹介資料 / Autify Company Deck
autifyhq
7
100k
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
1
1.2k
Building Flexible Design Systems
yeseniaperezcruz
317
37k
Side Projects
sachag
451
41k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
240
1.2M
Building Adaptive Systems
keathley
29
1.8k
The Invisible Side of Design
smashingmag
293
49k
Building Applications with DynamoDB
mza
88
5.6k
Fantastic passwords and where to find them - at NoRuKo
philnash
35
2.4k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
KATA
mclloyd
14
11k
How to train your dragon (web standard)
notwaldorf
71
5.1k
Producing Creativity
orderedlist
PRO
335
39k
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 Ͱ͋Δ