Ceph/install
の編集
http://eucalyptus.linux4u.jp/wiki/index.php?Ceph%2Finstall
[
トップ
] [
編集
|
差分
|
バックアップ
|
添付
|
リロード
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
] [
リンク元
]
-- 雛形とするページ --
BracketName
Ceph/install
Ceph/memo
Ceph/mount
Ceph/概要
ChangeLog_v1.5.2
CloudStack
CloudStack/インストール方法
CloudStack/ネットワーク解説
CloudStack/ネットワーク設定
CloudStack/メモ
CloudStack/仮想マシン
CloudStack/初期設定
CloudStack/概要
Doc/EucalyptusImageManagement_v1.5.2
Documents
DynamicDNSGuide
Elasticfox
Euca2ools と EC2 Tools との違い
Euca2oolsCentosInstall
Euca2oolsGuide
Euca2oolsImageManagement
Euca2oolsInstallJaunty
Euca2oolsLennyInstall
Euca2oolsNetworking
Euca2oolsOpensuseInstall
Euca2oolsSourceInstall
Euca2oolsSqueezeInstall
Euca2oolsStorage
Euca2oolsUsing
Euca2oolsVmControl
Eucalyptus (OSS Elastic Computing) 日本語情報
Eucalyptus + Euca2ools + Elasticfox で作るプライベートクラウド環境
Eucalyptus - OSS Elastic Computing
Eucalyptus - Ubuntu 9.04 で作るプライベートクラウド環境
Eucalyptus 1.5.2
Eucalyptus 日本語情報 wiki - OSS Elastic Computing
Eucalyptus-Upgrade-1.6.1
Eucalyptus-Upgrade-1.6.2
EucalyptusAdministratorGuide_v1.5.2
EucalyptusAdministratorGuide_v1.6
EucalyptusAdvanced_v1.6
EucalyptusBlockStoreInteracting_v1.5.2
EucalyptusConfiguration_v1.5.2
EucalyptusFeatures_v1.5.2
EucalyptusGettingStarted_v1.5.2
EucalyptusImageManagement_v1.5.2
EucalyptusImageManagement_v1.6
EucalyptusInstall_v1.5.2
EucalyptusInstall_v1.6
EucalyptusInstallationCentos_v1.5.2
EucalyptusInstallationCentos_v1.6
EucalyptusInstallationDebianLenny_v1.5.2
EucalyptusInstallationDebianSqueeze_v1.5.2
EucalyptusInstallationDebianSqueeze_v1.6
EucalyptusInstallationOpensuse_v1.5.2
EucalyptusInstallationOpensuse_v1.6
EucalyptusInstallationUbuntuJaunty_v1.5.2
EucalyptusInstallationUbuntuJaunty_v1.6
EucalyptusKnownBugs_v1.5.2
EucalyptusKnownBugs_v1.5.2)
EucalyptusManagement_v1.5.2
EucalyptusManagement_v1.6
EucalyptusMonitoring_v1.6
EucalyptusNetworking_v1.5.2
EucalyptusNetworking_v1.6
EucalyptusOverview
EucalyptusPrerequisites_v1.5.2
EucalyptusRocksInstallation_v1.5.2
EucalyptusSourceCodeInstallation_v1.5.2
EucalyptusTroubleshooting_v1.5.2
EucalyptusTroubleshooting_v1.6
EucalyptusUpgrade_v1.5.2
EucalyptusUserGuide_v1.5.2
EucalyptusUserImageCreatorGuide_v1.5.2
EucalyptusWalrusInteracting_v1.5.2
FAQ
FormattingRules
FrontPage
Help
Hibari
Hibari/インストール
Hibari/データモデル
Hibari/データ操作
Hibari/特徴
InterWiki
InterWikiName
InterWikiSandBox
Links
MenuBar
OpenNebula/その他
OpenNebula/クラスタノードの構築
OpenNebula/ゲストOSのネットワークの設定
OpenNebula/ゲストOSの構築
OpenNebula/フロントエンドノードの構築
OpenNebula/仮想ネットワークの構築
OpenNebula/概要
OpenStack
PHP
Presentations
PressRelease/2010_Feb_9
PukiWiki
PukiWiki/1.4
PukiWiki/1.4/Manual
PukiWiki/1.4/Manual/Plugin
PukiWiki/1.4/Manual/Plugin/A-D
PukiWiki/1.4/Manual/Plugin/E-G
PukiWiki/1.4/Manual/Plugin/H-K
PukiWiki/1.4/Manual/Plugin/L-N
PukiWiki/1.4/Manual/Plugin/O-R
PukiWiki/1.4/Manual/Plugin/S-U
PukiWiki/1.4/Manual/Plugin/V-Z
RHEL5 にセットアップ(RPM)
RecentDeleted
RightScale
S3_Compatibility_1.5.2
SandBox
Scalaris/JSON APIの利用
Scalaris/Java-API用CLIツール
Scalaris/インストール方法
Scalaris/分散環境の設定
Scalaris/利用方法
Scalaris/概要
Sheepdog/インストール方法
Sheepdog/インストール方法(SL6)
Sheepdog/デザイン
Sheepdog/ユーザ会
Sheepdog/利用方法
Sheepdog/問題点
Sheepdog/概要
Swift/Rings
Swift/memo
Swift/インストール方法
Swift/サーバの起動とテスト
Swift/メッセージの流れ
Swift/使い方
Swift/概要
Swift/設定ファイルの作成
Swift/起動用スクリプトの作成
ToolsEcosystem
ToolsEcosystem_EC2Dream
ToolsEcosystem_Elasticfox
ToolsEcosystem_boto
ToolsEcosystem_cloud42
ToolsEcosystem_right_aws
ToolsEcosystem_s3cmd
ToolsEcosystem_s3fs
ToolsEcosystem_tAWS
ToolsEcosystem_typica
UEC/CDInstall
UEC/CreateYourImage
Ubuntu 9.04 Server Edition のダウンロード方法
Ubuntu Enterprise Cloud 入門
Ubuntu Enterprise Cloudで作るプライベートクラウド環境
Ubuntu/Eucalyptus
Ubuntu/Eucalyptus+bridge
Ubuntu/Eucalyptus+environment
Ubuntu/KVM
Ubuntu/libvirt
Ubuntu/ubuntu-vm-builder
UbuntuEnterpriseCloud
WikiEngines
WikiName
WikiWikiWeb
YukiWiki
backup-eucalyptus-16
configuration
first-time-setup-16
hypervisor-configuration
installation-distribution-specific-binary-packages
installing-eucalyptus-source-16
s3curl
sample-s3cmd-config
sample-s3cmd-config-s3
トラブル事例
[[Ceph/概要]] * Cephのインストール [#n813f88f] このページでは,Cephをインストールする作業をまとめています.~ インストール環境は,Ubuntu server 10.04 lucidで行っています.~ また,OSD,MDS,Monitor全てを1台のノード上で動作させています.~ ** 事前準備 [#md342c19] Ceph をインストールする事前準備として,以下の設定をしておく必要があります. - 各サーバへのホスト名を設定~ - 各サーバへのSSHログインに用いる公開鍵の設定~ ホスト名の設定は,各サーバが他のサーバの指定に用いるだけですので,DNSサーバに登録していなくてもhostsファイルに記述しているだけでも大丈夫です.~ ただし,設定ファイルの記述にホスト名で記述する部分があるので,設定していない場合はエラーメッセージを表示してしまいます. SSH鍵の設定は,インストール作業中に他のノードに対してコマンドを実行する必要があります.~ その際に,Cephのコマンドが他のノードへrootアカウントでSSHでログインします.~ rootアカウントでログインする際に公開鍵認証で他ノードにrootアカウントで入れない場合,コマンドが実行できずエラーメッセージが表示されます.~ ** パッケージのインストール [#m23809ad] Cephをインストールする前に,Cephのコンパイルに必要なパッケージをインストールします.~ 合わせて,Cephのソースコードはgitで提供されているためgit-coreをインストールします. $ sudo aptitude -y install automake autoconf automake gcc g++ libboost-dev libedit-dev libssl-dev \ libtool libfcgi libfcgi-dev libfuse-dev linux-kernel-headers libatomic-ops-dev \ btrfs-tools libexpat1-dev git-core ** Cephのダウンロード,インストール [#lb18812a] Cephのソースコードをダウンロードし,コンパイル,インストールの作業を行います.~ ここでのインストールでは,Fuseを用いてCephを利用するようにしています. Fuseを用いるとユーザ空間で動作する代わりにファイルアクセス時にコンテキストスイッチが発生します. そのためカーネル空間で動作する場合と比較して性能が落ちます. $ git clone git://ceph.newdream.net/git/ceph.git $ cd ceph $ ./autogen.sh $ ./configure --with-fuse --with-radosgw --with-libatomic-ops $ make $ sudo make install * 設定ファイルの作成 [#a329cd7e] まず、/etc/ceph/ceph.confを作成します. $ sudo mkdir /etc/ceph $ touch /etc/ceph/ceph.conf ceph.conf [global] pid file = /var/run/ceph/$name.pid debug ms = 0 [mon] mon data = /data/mon$id [mon0] host = ceph1 mon addr = xx.xx.xx.xx:6789 [mon1] host = ceph2 mon addr = xx.xx.xx.xx:6789 [mon2] host = ceph3 mon addr = xx.xx.xx.xx:6789 [mds] debug mds = 0 [mds0] host = ceph1 [mds1] host = ceph2 [mds2] host = ceph3 [osd] sudo = true osd data = /data/osd$id osd journal = /data/osd$id/journal osd journal size = 100 debug osd = 0 debug filestore = 0 [osd0] host = ceph1 btrfs devs = /dev/sdb [osd1] host = ceph2 btrfs devs = /dev/sdb [osd2] host = ceph3 btrfs devs = /dev/sdb * 設定ファイルの反映 [#l69ffe71] $ sudo mkcephfs -c /etc/ceph/ceph.conf --allhosts --mkbtrfs --allhostsはSSH経由で全サーバに設定を行うオプション --mkbtrfsはbtrfsの初期化を行うオプション * Cephの起動 [#ee467d6e] ここでも設定ファイルの反映と同じく,allhostsを付けると全サーバで起動コマンドを実行してくれます.~ $ cd ceph $ sudo cp src/init-ceph /etc/init.d/ceph $ sudo chmod a+x /etc/init.d/ceph $ sudo /etc/init.d/ceph --allhosts start ** initスクリプトの書き換え [#iace2098] デフォルトでは、/usr/local/etc/cephを読みに行く場合があります.~ 今回の例では/etc/cephに設定ファイルを作成したので,initスクリプトが設定ファイルを読みに行く際/etc/cephを読むように書き換えます.~ /etc/init.d/cephの24行目あたり # i hate autoconf: if [ "/usr/local/etc" = "/usr/etc" ]; then ETCDIR=/etc/ceph else ETCDIR=/etc/ceph # ETCDIR=/usr/local/etc/ceph fi fi * 起動の確認 [#pd48d7ef] initスクリプトが正しく実行出来たかどうかは,全ノードでcmon,cmds,cosdが起動しているかどうかで確認できます. $ ps -auxwww root 1572 0.4 13.1 1139704 1010192 ? Ssl 04:59 0:23 /usr/local/bin/cmon -i 0 -c /tmp/ceph.conf.1310 root 1883 0.0 0.0 243788 3988 ? Ssl 05:00 0:00 /usr/local/bin/cmds -i 0 -c /tmp/ceph.conf.1310 root 2518 0.0 0.4 362704 32356 ? Ssl 05:01 0:01 /usr/local/bin/cosd -i 0 -c /tmp/ceph.conf.1310 また/data/osd$iにbtrfsがマウントされている事でも確認できます.$iには,設定ファイルで記述した番号が入ります.
タイムスタンプを変更しない
[[Ceph/概要]] * Cephのインストール [#n813f88f] このページでは,Cephをインストールする作業をまとめています.~ インストール環境は,Ubuntu server 10.04 lucidで行っています.~ また,OSD,MDS,Monitor全てを1台のノード上で動作させています.~ ** 事前準備 [#md342c19] Ceph をインストールする事前準備として,以下の設定をしておく必要があります. - 各サーバへのホスト名を設定~ - 各サーバへのSSHログインに用いる公開鍵の設定~ ホスト名の設定は,各サーバが他のサーバの指定に用いるだけですので,DNSサーバに登録していなくてもhostsファイルに記述しているだけでも大丈夫です.~ ただし,設定ファイルの記述にホスト名で記述する部分があるので,設定していない場合はエラーメッセージを表示してしまいます. SSH鍵の設定は,インストール作業中に他のノードに対してコマンドを実行する必要があります.~ その際に,Cephのコマンドが他のノードへrootアカウントでSSHでログインします.~ rootアカウントでログインする際に公開鍵認証で他ノードにrootアカウントで入れない場合,コマンドが実行できずエラーメッセージが表示されます.~ ** パッケージのインストール [#m23809ad] Cephをインストールする前に,Cephのコンパイルに必要なパッケージをインストールします.~ 合わせて,Cephのソースコードはgitで提供されているためgit-coreをインストールします. $ sudo aptitude -y install automake autoconf automake gcc g++ libboost-dev libedit-dev libssl-dev \ libtool libfcgi libfcgi-dev libfuse-dev linux-kernel-headers libatomic-ops-dev \ btrfs-tools libexpat1-dev git-core ** Cephのダウンロード,インストール [#lb18812a] Cephのソースコードをダウンロードし,コンパイル,インストールの作業を行います.~ ここでのインストールでは,Fuseを用いてCephを利用するようにしています. Fuseを用いるとユーザ空間で動作する代わりにファイルアクセス時にコンテキストスイッチが発生します. そのためカーネル空間で動作する場合と比較して性能が落ちます. $ git clone git://ceph.newdream.net/git/ceph.git $ cd ceph $ ./autogen.sh $ ./configure --with-fuse --with-radosgw --with-libatomic-ops $ make $ sudo make install * 設定ファイルの作成 [#a329cd7e] まず、/etc/ceph/ceph.confを作成します. $ sudo mkdir /etc/ceph $ touch /etc/ceph/ceph.conf ceph.conf [global] pid file = /var/run/ceph/$name.pid debug ms = 0 [mon] mon data = /data/mon$id [mon0] host = ceph1 mon addr = xx.xx.xx.xx:6789 [mon1] host = ceph2 mon addr = xx.xx.xx.xx:6789 [mon2] host = ceph3 mon addr = xx.xx.xx.xx:6789 [mds] debug mds = 0 [mds0] host = ceph1 [mds1] host = ceph2 [mds2] host = ceph3 [osd] sudo = true osd data = /data/osd$id osd journal = /data/osd$id/journal osd journal size = 100 debug osd = 0 debug filestore = 0 [osd0] host = ceph1 btrfs devs = /dev/sdb [osd1] host = ceph2 btrfs devs = /dev/sdb [osd2] host = ceph3 btrfs devs = /dev/sdb * 設定ファイルの反映 [#l69ffe71] $ sudo mkcephfs -c /etc/ceph/ceph.conf --allhosts --mkbtrfs --allhostsはSSH経由で全サーバに設定を行うオプション --mkbtrfsはbtrfsの初期化を行うオプション * Cephの起動 [#ee467d6e] ここでも設定ファイルの反映と同じく,allhostsを付けると全サーバで起動コマンドを実行してくれます.~ $ cd ceph $ sudo cp src/init-ceph /etc/init.d/ceph $ sudo chmod a+x /etc/init.d/ceph $ sudo /etc/init.d/ceph --allhosts start ** initスクリプトの書き換え [#iace2098] デフォルトでは、/usr/local/etc/cephを読みに行く場合があります.~ 今回の例では/etc/cephに設定ファイルを作成したので,initスクリプトが設定ファイルを読みに行く際/etc/cephを読むように書き換えます.~ /etc/init.d/cephの24行目あたり # i hate autoconf: if [ "/usr/local/etc" = "/usr/etc" ]; then ETCDIR=/etc/ceph else ETCDIR=/etc/ceph # ETCDIR=/usr/local/etc/ceph fi fi * 起動の確認 [#pd48d7ef] initスクリプトが正しく実行出来たかどうかは,全ノードでcmon,cmds,cosdが起動しているかどうかで確認できます. $ ps -auxwww root 1572 0.4 13.1 1139704 1010192 ? Ssl 04:59 0:23 /usr/local/bin/cmon -i 0 -c /tmp/ceph.conf.1310 root 1883 0.0 0.0 243788 3988 ? Ssl 05:00 0:00 /usr/local/bin/cmds -i 0 -c /tmp/ceph.conf.1310 root 2518 0.0 0.4 362704 32356 ? Ssl 05:01 0:01 /usr/local/bin/cosd -i 0 -c /tmp/ceph.conf.1310 また/data/osd$iにbtrfsがマウントされている事でも確認できます.$iには,設定ファイルで記述した番号が入ります.
テキスト整形のルールを表示する