Rancher(2),K8S持久性存儲CephRBD搭建及配置

1、配置host,安裝ntp(非必須)
2、配置免密ssh
3、配置ceph,yum源

10年積累的成都做網(wǎng)站、成都網(wǎng)站建設(shè)經(jīng)驗(yàn),可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站制作后付款的網(wǎng)站建設(shè)流程,更有樂都免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

vim /etc/yum.repo.d/ceph.cepo

[ceph]
name=ceph
baseurl=http://mirrors.cloud.tencent.com/ceph/rpm-luminous/el7/x86_64/
gpgcheck=0
priority=1

[ceph-noarch]
name=cephnoarch
baseurl=http://mirrors.cloud.tencent.com/ceph/rpm-luminous/el7/noarch/
gpgcheck=0
priority=1

[ceph-source]
name=Ceph source packages
baseurl=http://mirrors.cloud.tencent.com/ceph/rpm-luminous/el7/SRPMS
enabled=0   
gpgcheck=1
type=rpm-md
gpgkey=http://mirrors.cloud.tencent.com/ceph/keys/release.asc
priority=1

4、安裝ceph-deploy

yum update
yum install ceph-deploy

5、安裝

安裝過程中,如果報錯,可以使用以下命令清除配置:


ceph-deploy purgedata {ceph-node} [{ceph-node}]
ceph-deploy forgetkeys

以下命令把ceph安裝包一起清除:


ceph-deploy purge {ceph-node} [{ceph-node}]

mkdir -p /root/cluster
cd /root/cluster/
ceph-deploy new yj-ceph2

如果報錯:
Traceback
(most recent call last):
File "/usr/bin/ceph-deploy", line 18, in <module>
from ceph_deploy.cli import main
File "/usr/lib/python2.7/site-packages/ceph_deploy/cli.py", line 1, in
<module>
import pkg_resources
ImportError: No module named pkg_resources

安裝:

yum install python-setuptools

把 Ceph 配置文件里的默認(rèn)副本數(shù)從 3 改成 2 ,這樣只有兩個 OSD 也可以達(dá)到 active + clean 狀態(tài)。

vim ceph.conf 

[global]
fsid = 8764fad7-a8f0-4812-b4db-f1a65af66e4a
mon_initial_members = ceph2,ceph3
mon_host = 192.168.10.211,192.168.10.212
auth_cluster_required = cephx
auth_service_required = cephx
auth_client_required = cephx
osd pool default size = 2
mon clock drift allowed = 5
mon clock drift warn backoff = 30

ceph-deploy install yj-ceph2 yj-ceph3
ceph-deploy mon create-initial

ceph-deploy osd create --data /dev/vdb yj-ceph2
ceph-deploy osd create --data /dev/vdb yj-ceph3

用 ceph-deploy 把配置文件和 admin 密鑰拷貝到管理節(jié)點(diǎn)和 Ceph 節(jié)點(diǎn),這樣你每次執(zhí)行 Ceph 命令行時就無需指定 monitor 地址和 ceph.client.admin.keyring了

ceph-deploy admin yj-ceph2 yj-ceph3

ceph osd tree
ceph-deploy mgr create yj-ceph2

ceph health
ceph -s

一個ceph集群可以有多個pool,每個pool是邏輯上的隔離單位,不同的pool可以有完全不一樣的數(shù)據(jù)處理方式,比如Replica Size(副本數(shù))、Placement Groups、CRUSH Rules、快照、所屬者等。
通常在創(chuàng)建pool之前,需要覆蓋默認(rèn)的pg_num,官方推薦:

若少于5個OSD, 設(shè)置pg_num為128。
5~10個OSD,設(shè)置pg_num為512。
10~50個OSD,設(shè)置pg_num為4096。
超過50個OSD,可以參考pgcalc計(jì)算。

osd pool default pg num = 128
osd pool default pgp num = 128

ceph osd pool create k8s-pool 128 128

需要把管理員的key存儲為secret到k8s,最好就配置在default空間
ceph auth get-key client.admin|base64
把得到的key值替換下面的key

vim ceph-secret-admin.yaml

apiVersion: v1
kind: Secret
metadata:
   name: ceph-secret-admin
type: "kubernetes.io/rbd"
data:
   key: QVFBTHhxxxxxxxxxxFpRQmltbnBDelRkVmc9PQ==

kubectl apply -f ceph-secret-admin.yaml

rancher 報錯:

MountVolume.SetUp failed for volume "pvc-a2754739-cf6f-11e7-a7a5-02e985942c89" :
rbd: map failed exit status 2 2017-11-22 12:35:53.503224 7f0753c66100 -1 did not load config file,
using default settings. libkmod: ERROR ../libkmod/libkmod.c:586 kmod_search_moddep:
could not open moddep file '/lib/modules/4.9.45-rancher/modules.dep.bin' modinfo: ERROR:
Module alias rbd not found. modprobe:
ERROR: ../libkmod/libkmod.c:586 kmod_search_moddep() could not open moddep file
'/lib/modules/4.9.45-rancher/modules.dep.bin' modprobe:
FATAL: Module rbd not found in directory /lib/modules/4.9.45-rancher rbd: failed to load rbd kernel module (1)
rbd: sysfs write failed In some cases useful info is found in syslog - try "dmesg | tail" or so. rbd: map failed:
(2) No such file or directory

新節(jié)點(diǎn)需要安裝ceph-client已經(jīng)配置ceph配置文件:

yum install ceph-common

配置用戶
ceph.client.admin.keyring ceph.client.kube.keyring ceph.client.test.keyring ceph.conf 復(fù)制到/etc/ceph/下

是因?yàn)槿萜鳠o法訪問到/lib/modules,需要在rke的配置上添加:

services:
  etcd:
    backup_config:
        enabled: true
        interval_hours: 6
        retention: 60
  kubelet:
    extra_binds:
      - "/lib/modules:/lib/modules"

然后使用:

rke up --config rancher-cluster.yml

還是rancher使用ceph的問題:

sc 搭建好了,
部署使用pvc創(chuàng)建,報錯,

大意是ceph map失敗~~~

emm,

最后發(fā)現(xiàn)需要在每個節(jié)點(diǎn),手動map一次~,就沒有再次報錯了~~~MMP

rbd create foo --size 1024 --image-feature=layring -p test
rbd map foo -p test

ceph rbd擴(kuò)容:

查看到需要擴(kuò)容的鏡像id,在ceph上擴(kuò)容:

rbd resize --size 2048 kubernetes-dynamic-pvc-572a74e9-db6a-11e9-9b3a-525400e65297 -p test

修改pv配置為對應(yīng)大小,重啟對應(yīng)容器即可。

當(dāng)前題目:Rancher(2),K8S持久性存儲CephRBD搭建及配置
網(wǎng)站地址:http://muchs.cn/article8/phoiip.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計(jì)公司企業(yè)建站、App開發(fā)面包屑導(dǎo)航、網(wǎng)站改版、軟件開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設(shè)計(jì)公司