ceph-anisble部署
自從要上kubernetes開始一直考慮容器的數據持久化存儲是個問題,調研后決定要使用Ceph,但是使用Ceph-deploy是能部署上去,但是本地環境和線上環境都是用手動部署的話......? ?手動部署是不可能手動部署了!
環境說明
建議系統內核升級到4.x,不然容易出各種問題,不要給自己找不必要的麻煩。
升級內核
#?載入公鑰 rpm?--import?https://www.elrepo.org/RPM-GPG-KEY-elrepo.org #?安裝ELRepo rpm?-Uvh?http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm #?載入elrepo-kernel元數據 yum?--disablerepo=\*?--enablerepo=elrepo-kernel?repolist #?查看可用的rpm包 yum?--disablerepo=\*?--enablerepo=elrepo-kernel?list?kernel* #?安裝最新版本的kernel yum?--disablerepo=\*?--enablerepo=elrepo-kernel?install?-y?kernel-ml.x86_64 #查看默認啟動順序 awk?-F\'?'=="menuentry?"?{print?}'?/etc/grub2.cfg CentOS?Linux?(3.10.0-862.3.3.el7.x86_64)?7?(Core) CentOS?Linux?(3.10.0-514.el7.x86_64)?7?(Core) CentOS?Linux?(0-rescue-cacfb77f99dc43f5a7d9b51bbedf922d)?7?(Core) #默認啟動的順序是從0開始,新內核是從頭插入(目前位置在0,而4.4.4的是在1),所以需要選擇0。 grub2-set-default?0 reboot uname?-a #?刪除老內核以及內核工具 rpm?-qa|grep?kernel|grep?3.10 rpm?-qa|grep?kernel|grep?3.10|xargs?yum?remove?-y #?安裝新版本工具包 yum?--disablerepo=\*?--enablerepo=elrepo-kernel?install?-y?kernel-ml-tools.x86_64 rpm?-qa|grep?kernel
內核版本我這里選的的ml,如果求穩妥可以選擇lt版本。
ansible安裝
pip?install?ansible==2.4.2
嚴格按照官方文檔的要求來,ansible版本過新或舊都會有各種報錯。?ceph-ansible官方安裝文檔
免密登錄配置 (略)
可參考之前ceph-deploy
安裝
wget?-c?https://github.com/ceph/ceph-ansible/archive/v3.1.7.tar.gz tar?xf?v3.1.7.tar.gz cd?ceph-ansible-3.1.7
vim?hosts ###?ceph [mons] 192.168.10.2 192.168.10.3 192.168.10.4 [osds] 192.168.10.2 192.168.10.3 192.168.10.4 [mgrs] 192.168.10.2 192.168.10.3 192.168.10.4 [mdss] 192.168.10.2 192.168.10.3 192.168.10.4 [clients] 192.168.10.1 192.168.10.2 192.168.10.3 192.168.10.4 192.168.10.5 192.168.10.6
cp?group_vars/all.yml.sample?group_vars/all.yml cp?group_vars/osds.yml.sample?group_vars/osds.yml cp?site.yml.sample?site.yml vim?group_vars/all.yml ceph_origin:?repository ceph_repository:?community ceph_mirror:?http://mirrors.aliyun.com/ceph ceph_stable_key:?http://mirrors.aliyun.com/ceph/keys/release.asc ceph_stable_release:?luminous ceph_stable_repo:?"{{?ceph_mirror?}}/rpm-{{?ceph_stable_release?}}" fsid:?54d55c64-d458-4208-9592-36ce881cbcb7?##通過uuidgen生成 generate_fsid:?false cephx:?true public_network:?192.168.10.0/24 cluster_network:?192.168.10.0/24 monitor_interface:?eth0 ceph_conf_overrides: ????global: ??????rbd_default_features:?7 ??????auth?cluster?required:?cephx ??????auth?service?required:?cephx ??????auth?client?required:?cephx ??????osd?journal?size:?2048 ??????osd?pool?default?size:?3 ??????osd?pool?default?min?size:?1 ??????mon_pg_warn_max_per_osd:?1024 ??????osd?pool?default?pg?num:?128 ??????osd?pool?default?pgp?num:?128 ??????max?open?files:?131072 ??????osd_deep_scrub_randomize_ratio:?0.01 ????mgr: ??????mgr?modules:?dashboard ????mon: ??????mon_allow_pool_delete:?true ????client: ??????rbd_cache:?true ??????rbd_cache_size:?335544320 ??????rbd_cache_max_dirty:?134217728 ??????rbd_cache_max_dirty_age:?10 ????osd: ??????osd?mkfs?type:?xfs ??????osd?mount?options?xfs:?"rw,noexec,nodev,noatime,nodiratime,nobarrier" ??????ms_bind_port_max:?7100 ??????osd_client_message_size_cap:?2147483648 ??????osd_crush_update_on_start:?true ??????osd_deep_scrub_stride:?131072 ??????osd_disk_threads:?4 ??????osd_map_cache_bl_size:?128 ??????osd_max_object_name_len:?256 ??????osd_max_object_namespace_len:?64 ??????osd_max_write_size:?1024 ??????osd_op_threads:?8 ??????osd_recovery_op_priority:?1 ??????osd_recovery_max_active:?1 ??????osd_recovery_max_single_start:?1 ??????osd_recovery_max_chunk:?1048576 ??????osd_recovery_threads:?1 ??????osd_max_backfills:?4 ??????osd_scrub_begin_hour:?23 ??????osd_scrub_end_hour:?7 ?????? ?????#?bluestore?block?create:?true ?????#?bluestore?block?db?size:?73014444032 ?????#?bluestore?block?db?create:?true ?????#?bluestore?block?wal?size:?107374182400 ?????#?bluestore?block?wal?create:?true vim?group_vars/osds.yml devices: ??-?/dev/vdc ??-?/dev/vdd ??-?/dev/vde osd_scenario:?collocated osd_objectstore:?bluestore #osd_scenario:?non-collocated #osd_objectstore:?bluestore #devices: #??-?/dev/sdc #??-?/dev/sdd #??-?/dev/sde #dedicated_devices: #??-?/dev/sdf #??-?/dev/sdf #??-?/dev/sdf #bluestore_wal_devices: #??-?/dev/sdg #??-?/dev/sdg #??-?/dev/sdg # #monitor_address:?192.168.10.125 #?注釋不需要的組件 vim?site.yml --- #?Defines?deployment?design?and?assigns?role?to?server?groups -?hosts: ??-?mons #??-?agents ??-?osds ??-?mdss #??-?rgws #??-?nfss #??-?restapis #??-?rbdmirrors ??-?clients ??-?mgrs #??-?iscsigws #??-?iscsi-gws?#?for?backward?compatibility?only! ansible-playbook?-i?hosts?site.yml
至此ceph部署完成,登陸ceph節點檢查狀態。
cp?infrastructure-playbooks/purge-cluster.yml?purge-cluster.yml?#?必須copy到項目根目錄下 ansible-playbook?-i?hosts?purge-cluster.yml
ceph-ansible極大的提升工作效率,并且很好的減少人為的手工操作失誤,解放勞動力的利器!
華為云APP
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。