發表文章

目前顯示的是有「Ceph」標籤的文章

CEPH - health HEALTH_WARN crush map has legacy tunables (require bobtail, min is firefly)

當用以下cmd查詢ceph的健康狀態時。 $ ceph -s cluster 6462f5bb-f440-445c-a5ff-e77a7ca38ed6 health HEALTH_WARN crush map has legacy tunables (require bobtail, min is firefly) monmap e1: 1 mons at {ceph-mon=192.168.100.2:6789/0} election epoch 1, quorum 0 ceph-mon osdmap e79: 3 osds: 3 up, 3 in pgmap v172285: 1080 pgs, 15 pools, 43160 kB data, 350 objects 280 MB used, 8901 MB / 9182 MB avail 1080 active+clean # 可以嘗試下列指令,恩為可能無法map device,更動過crush演算法。 $ ceph osd crush tunables firefly $ ceph osd crush tunables default $ ceph osd crush tunables optimal

如何使用ceph當作nova backend storage

在ceph node底下 # 建立ceph pool 給nova使用,pool名稱為vms $ sudo ceph osd pool create vms 128 建立一個user為client.nova並對pool vms相關權限設定,產生一個keyring file $ ceph auth get-or-create client.nova mon 'allow r' osd 'allow class-read object_prefix rbd_children, allow rwx pool=vms, allow rx pool=images' -o /etc/ceph/ceph.client.nova.keyring # 複製ceph.conf與nova.keyring到openstack controller上 $ scp /etc/ceph/ceph.conf root@ openstack node ip :/etc/ceph $ scp /etc/ceph/ceph.client.nova.keyring root@ openstack node ip :/etc/ceph # 複製client.nova的key複製到controller /tmp/ client.cinder.key 上 $ ceph auth get-key client.nova | ssh openstack node ip tee /tmp/client.nova.key 添加一个secret key到libvirt $ uuidgen 7ad56fa3-23e2-4d86-ae9e-253326a704f5 $ cat > secret.xml <<EOF <secret ephemeral='no' private='no'> <uuid> 7ad56fa3-23e2-4d86-ae9e-253326a704f5 </uuid> <usage type='ceph'> <name>client.no...

如何使用ceph當作cinder backend storage

在ceph node底下 # 建立ceph pool 給cinder使用,pool名稱為volumes $ sudo ceph osd pool create volumes 128 建立一個user為client.cinder並對pool volumes相關權限設定,產生一個keyring file $ sudo ceph auth get-or-create client.cinder mon 'allow r' osd 'allow class-read object_prefix rbd_children, allow rwx pool=volumes, allow rwx pool=vms, allow rx pool=images' -o /etc/ceph/ceph.client.cinder.keyring # 複製ceph.conf與cinder.keyring到openstack controller上 $ scp /etc/ceph/ceph.conf root@ openstack node ip :/etc/ceph $ scp /etc/ceph/ceph.client.glance.keyring root@ openstack node ip :/etc/ceph # 複製client.cinder的key複製到controller /tmp/ client.cinder.key 上 $ ceph auth get-key client.cinder | ssh openstack node ip tee /tmp/client.cinder.key 添加一个secret key到libvirt $ uuidgen d65bc749-e160-44d3-a903-9c50291b4293 $ cat > secret.xml <<EOF <secret ephemeral='no' private='no'> <uuid> d65bc749-e160-44d3-a903-9c50291b4293 </uuid> ...

如何使用ceph當作glance backend storage

在ceph node底下 # 建立ceph pool 給glance使用,pool名稱為images $ sudo ceph osd pool create images 128 建立一個user為client.glance 並對pool images相關權限設定,產生一個keyring file $ sudo ceph auth get-or-create client.glance mon 'allow r' osd 'allow class-read object_prefix rbd_children, allow rwx pool=images' -o /etc/ceph/ceph.client.glance.keyring # 複製ceph.conf與glance.keyring到openstack controller上 $ scp /etc/ceph/ceph.conf root@ openstack node ip :/etc/ceph $ scp /etc/ceph/ceph.client.glance.keyring root@ openstack node ip :/etc/ceph 我們這邊的glance服務是跑在openstack controller上 # 在opentack controller上的ceph.conf新增glance的setion $ vim /etc/ceph/ceph.conf [client.glance] keyring = /etc/ceph/ceph.client.glance.keyring # 修改權限 $ chmod 0640 /etc/ceph/ceph.client.glance.keyring $ chown glance:glance /etc/ceph/ceph.client.glance.keyring # 修改/etc/glance/glance-api.conf $ sudo cp /etc/glance/glance-api.conf /etc/glance/glance-api.conf.bak $ sudo vim /etc/gl...

CEPH - ubuntu install radosgw by manual

如果安裝的node是完全沒安裝過ceph的需加入下列到source.list $ wget -q -O- https://raw.github.com/ceph/ceph/master/keys/autobuild.asc | sudo apt-key add - echo deb http://gitbuilder.ceph.com/apache2-deb-$(lsb_release -sc)-x86_64-basic/ref/master $(lsb_release -sc) main | sudo tee /etc/apt/sources.list.d/ceph-apache.list $ echo deb http://gitbuilder.ceph.com/libapache-mod-fastcgi-deb-$(lsb_release -sc)-x86_64-basic/ref/master $(lsb_release -sc) main | sudo tee /etc/apt/sources.list.d/ceph-fastcgi.list 我們在這邊是把radosgw安裝至ceph-mon上,所以跳過上述步驟直接安裝 $ sudo apt-get update && sudo apt-get install apache2 libapache2-mod-fastcgi # 增加一行ServerName {fqdn},這邊是ceph-mon $ sudo vim /etc/apache2/apache2.conf ServerName ceph-mon $ sudo a2enmod rewrite $ sudo a2enmod fastcgi $ sudo service apache2 restart # 安裝radosgw,radosgw-agent $ sudo apt-get install radosgw radosgw-agent 在ceph-mon上執行以下動作 # 建立user跟設定權限,並產生keyring到/etc/ceph底下 $ sudo ceph auth get-or-create client...

CEPH - ubuntu install radosgw by ceph-depoy

首先,請先確保admin-node上的ceph-depoy版本是否支援安裝rgw(需1.5.23之後的版本) $ ceph-deploy --version 1.5.33 安裝radosgw # 安裝radosgw套件到ceph-mon上 $ ceph-deploy install --rgw ceph-mon # 建立並啟動ceph-mon上的radosgw $ ceph-deploy rgw create ceph-mon 在ceph-mon上執行以下動作 # 建立user跟設定權限,並產生keyring到/etc/ceph底下 $ sudo ceph auth get-or-create client.radosgw.gateway osd 'allow rwx' mon 'allow rwx' -o /etc/ceph/ceph.client.radosgw.keyring # 或者使用以下cmd $ sudo ceph-authtool /etc/ceph/ceph.client.radosgw.keyring -n client.radosgw.gateway --gen-key $ sudo ceph-authtool -n client.radosgw.gateway --cap osd 'allow rwx' --cap mon 'allow rwx' /etc/ceph/ceph.client.radosgw.keyring # 把key加入cluster中 $ sudo ceph -k /etc/ceph/ceph.client.admin.keyring auth add client.radosgw.gateway -i /etc/ceph/ceph.client.radosgw.keyring 加入radosgw section $ vim /etc/ceph/ceph.conf [client.radosgw.gateway] host = ceph-mon keyring = /etc/ceph/ceph.client.radosgw.keyri...