Ceph叢集Docker容器化部署
目標:使用Docker部署Ceph儲存叢集
環境:CentOS 7
步驟:建立Ceph專用網路->建立Monitor->建立OSD->建立RGW並測試物件儲存->建立MDS並測試檔案系統->建立MGR
前期準備:Linux主機需提前安裝Docker
1.建立Ceph專用網路
為了和docker預設網路區別,新建一個ceph叢集專用網路:
docker network create --driver bridge ceph-net
docker network inspect ceph-net
2.建立Monitor
完成專用網路構建後,開始部署ceph叢集,第一步為啟動Ceph Monitor - 叢集監控容器。
Ceph Monitor 維護著展示叢集狀態的各種圖表。
路徑設定:DIR $(pwd)
docker run -d --net=ceph-net -v ${DIR}/ceph:/etc/ceph -v ${DIR}/lib/ceph/:/var/lib/ceph/ -e MON_IP=172.19.0.2 -e CEPH_PUBLIC_NETWORK=172.19.0.0/16 --name=mon1 ceph/daemon mon
檢視monitor部署情況:
docker exec -ti mon1 ceph -v
docker exec -ti mon1 ceph -s
3.建立OSD
Ceph OSD為物件儲存守護程序,提供實際的儲存,預設情況下ceph叢集需要部署3個OSD。
環境準備:為Linux主機新增3塊20GB硬碟(/dev/vdb、/dev/vdc、/dev/vdd)
docker run -d --net=ceph-net --privileged=true --pid=host -v ${DIR}/ceph:/etc/ceph -v ${DIR}/lib/ceph/:/var/lib/ceph/ -v /dev/:/dev/ -e OSD_DEVICE=/dev/vdb -e OSD_TYPE=disk -e OSD_FORCE_ZAP=1 --name osd1 ceph/daemon osd
檢視osd部署情況:
docker exec -ti osd1 df | grep "osd"
docker exec -ti mon1 ceph -s
osd2與osd3部署過程類似,只需將/dev裝置換成對應的即可。
4.建立RGW並測試物件儲存
Ceph RGW - Rados閘道器:提供S3與Swift相容的API,儲存資料至物件儲存。
docker run -d --net=ceph-net -v ${DIR}/lib/ceph/:/var/lib/ceph/ -v ${DIR}/ceph:/etc/ceph -p 8080:8080 --name=rgw1 ceph/daemon rgw
curl工具測試部署情況:
curl -H "Content-Type: application/json" "http://127.0.0.1:8080"
下載測試檔案:
wget "https://gist.githubusercontent.com/kairen/e0dec164fa6664f40784f303076233a5/raw/33add5a18cb7d6f18531d8d481562d017557747c/s3client"
chmod u+x s3clinet
安裝執行依賴:
yum install python-pip
pip install boto
物件儲存測試:
(1)建立一個使用者
docker exec -ti rgw1 radosgw-admin user create --uid="test" --display-name="I'm Test account" --email="[email protected]"
(2)建立環境引數配置檔案
vim s3key.sh
key資訊對照test使用者
(3)列出當前bucket
./s3client list
(4)建立一個bucket並上傳檔案
./s3client create files
./s3client upload files s3key.sh /
./s3client list files
5.建立MDS並測試檔案系統
Ceph MDS - 元資料伺服器,為ceph檔案系統儲存元資料。
docker run -d --net=ceph-net -v ${DIR}/lib/ceph/:/var/lib/ceph/ -v ${DIR}/ceph:/etc/ceph -e CEPHFS_CREATE=1 --name=mds1 ceph/daemon mds
檢視部署情況:
docker exec -ti mds1 ceph mds stat
docker exec -ti mds1 ceph fs ls
6.建立MGR
Ceph MGR - 叢集管理元件
docker run -d --net=ceph-net -v ${DIR}/ceph:/etc/ceph -v ${DIR}/lib/ceph/:/var/lib/ceph/ --name=mgr1 ceph/daemon mgr
docker ps
docker exec -it mon1 ceph -s
以上,Ceph叢集容器化部署完成。
相關推薦
Ceph叢集Docker容器化部署
目標:使用Docker部署Ceph儲存叢集環境:CentOS 7步驟:建立Ceph專用網路->建立Monitor->建立OSD->建立RGW並測試物件儲存->建立MDS並測試檔案系統->建立MGR前期準備:Linux主機需提前安裝Docker1.
Docker容器化部署嘗試——多容器通訊(node + mongoDB + nginx)
原因是這樣的 想要部署一個mocker平臺,就在朋友的推薦下選擇了api-mocker這個現成的專案 該專案分為服務端node、客戶端vue、以及資料庫mongoDB 在嘗試直接部署的時候發現需要裝一大堆的環境,node、mongo、nginx啊,特別的麻煩,之前簡單的使用過docker,就在
專案docker容器化部署步驟
Docker在部署時的一些基本步驟(主要針對我公司的專案環境): 1.專案中存在不需要使用容器化的服務,所以請安裝jdk7、redis、mq、zookeeper、dubbo控制檯 2.映象匯入 #cat sdzn_docker_tomcat.tar|docker impor
處理Docker容器化部署Tomcat服務碰到的時區問題
用Docker工具容器化部署服務之後,碰到的問題比較多。 其中比較特出的問題是這個時區問題。 1 問題現象: 舉個例子,有個小功能,需要記錄計劃開始時間。 前臺輸入的時間是:2018.4.24 00:00:00。 後臺記錄的計劃開始時間卻是:201
Docker容器化部署Python應用
1. 簡介 Docker是目前主流IT公司廣泛接受和使用的,用於構建、管理和保護它們應用程式的工具。 容器,例如Docker允許
容器化部署——docker常用命令
pro images 圖片 png docke ps命令 log ESS src 1、使用docker ps命令查看有哪些進程 2、進入容器:容器化部署——docker常用命令
spring eureka叢集+spring boot 微服務,容器化部署示例
1.搭建eureka docker叢集 (1)建立eureka容器 參考如下指令,在不同的伺服器上建立eureka容器。(提前在docker hup 上下載好java:8的映象) docker run -d --name registry1 -p 8762:808
Openstack容器化部署研究之:Kolla離線製作Openstack服務的Docker容器映象
1、前言 作為擁抱Docker容器技術的代表,Kolla已成為當前Openstack生態圈中最為熱門的專案之一。Kolla專案目前已被拆分為三個部分,即用以Build Docker映象的Kolla專案和用以編排部署Docker映象的Kolla-ansible和Kolla-
Kubernetes(K8S)叢集管理Docker容器(部署篇)
今天這篇文章教給大家如何快速部署一套Kubernetes叢集。K8S叢集部署有幾種方式:kubeadm、minikube和二進位制包。前兩者屬於自動部署,簡化部署操作,我們這裡強烈推薦初學者使用二進位制
docker-compose編排LNMP容器化部署
01 為什麼要使用 docker-compose 用通俗的語言來說,我們平時操作 docker 還是很原始的一系列動作,如果你要對映硬碟,設定nat網路或者橋接網路,等等…你就要做更多的 docker 操作, 這顯然是非常沒有效率的。 有了 docker-compos
通過Jenkins + Docker實現antdPro自動化推送私服、自動容器化部署功能
ash let agen 體系 pig 優化 war包 自動 情況 Docker與Docker私服 1. 安裝docker https://docs.docker.com/install/ 2. 配置docker鏡像加速 https://www.daocloud.io/mi
Kubernetes(K8S)集群管理Docker容器(部署篇)
kubernetes k8s今天這篇文章教給大家如何快速部署一套Kubernetes集群。K8S集群部署有幾種方式:kubeadm、minikube和二進制包。前兩者屬於自動部署,簡化部署操作,我們這裏強烈推薦初學者使用二進制包部署,因為自動部署屏蔽了很多細節,使得對各個模塊感知很少,非常不利用學習。所以,這
[ci]jenkins-slave-ssh docker容器化-自動註入key
server serve 註入 docker容器 容器 動態 ssh key class src jenkins server 再啟動slave時候,動態的註入sshkey 只要slave有ssh+jdk即可.無需事先預置用戶名密碼給slave. 配置 inject ss
在Docker容器中部署靜態網頁的方法教程
tin uri ash led att bin get acf code 步驟:1.創建映射端口的交互式容器docker run -p 80 --name web -i -t daocloud.io/ubuntu /bin/bash2.安裝Nginxapt-get inst
談談surging引擎的tcp、http、ws協議和如何容器化部署
spro inter span ppi package completed module out 選址 1、前言 分布式已經成為了當前最熱門的話題,分布式框架也百花齊放,群雄逐鹿。從中心化服務治理框架,到去中心化分布式服務框架,再到分布式微服務引擎,這
Spring Boot Tomcat 容器化部署實踐與總結
打通 目的 rim attribute exceptio process ntc with 初始化 在平時的工作和學習中經常會構建簡單的web應用程序。如果只是HelloWorld級別的程序,使用傳統的Spring+SpringMVC框架搭建得話會將大部分的時間花費在搭建框
jenkins+Docker持續化部署(筆記)
配置 地址 技術分享 html https build target 參數 jenkins安裝 參考資料:https://www.cnblogs.com/leolztang/p/6934694.html (Jenkins(Docker容器內)使用宿主機的docker命令)
Docker容器化虛擬機器:拋棄傳統虛擬機器
Win10 Docker與VMware和Oracle VirtualBox衝突,使得在包含有VMware或Oracle VirtualBox的主機上不能成功安裝Win10 Docker,同理在Win10 Docker機器上也不能正常使用VMware和Oracle VirtualBox。Windo
spring cloud docker容器化
spring cloud docker外掛自動化部署 通用步驟 dockerfile-maven-plugin外掛入門 docker-maven-plugin 外掛預設連線本地 Docker 地址為:localhost:2375,所以我們需要先設定下環境變數
微服務之docker容器化引擎
什麼是Docker 首先docker也是一個虛擬技術 Docker 在容器的基礎上,進行了進一步的封裝,從檔案系統、網路互聯到程序隔離等等,極大的簡化了容器的建立和維護。使得 Docker 技術比虛擬機器技術更為輕便、快捷。 傳統虛擬機器技術是虛擬出一套硬體後,