转载注明出处,陈小跑 http://www.cnblogs.com/chenxianpao/p/5770271.html

一、安装环境

OS:CentOS7.2

VSM:v2.1 released

二、安装说明

VSM系统分两个角色,一个是vsm-controller,另外一个是vsm-agent。vsm-agent部署在ceph节点上,vsm-controller部署在单独的任意节点。vsm-controller应该也可以部署在ceph节点上,没尝试过。

VSM有两种包。一种是released版本,一种是源码版本。源码版本需要编译。我使用的是released版本。

解压之后文件夹结构如下图:

├── CHANGELOG

├── installrc

├── INSTALL.md

├── install.sh

├── uninstall.sh

├── LICENSE

├── manifest

│   ├── cluster.manifest.sample

│   └── server.manifest.sample

├── NOTICE

├── README

└── vsmrepo

├── python-vsmclient_2.0.0-123_amd64.deb

├── Packages.gz

├── vsm_2.0.0-123_amd64.deb

├── vsm-dashboard-2.0.0-123_amd64.deb

└── vsm-deploy-2.0.0-123_amd64.deb

mainifest文件夹主要存放各个节点的配置信息。installrc文件配置具体安装的节点。vsmrepo放置vsm的依赖包,install.sh会自动去github获取,如果获取失败了可以从https://github.com/01org/vsm-dependencies/下载v2.1版本的依赖包,放到vsmrepo文件夹中。get_pass.sh是安装完成后获取admin用户密码用的,执行就可以输出密码。

三、安装步骤

以四台服务器,即一个controller节点,三个agent节点为例。

1. 修改installrc文件,填入controller节点ip和agent节点ip。

AGENT_ADDRESS_LIST="192.168.123.21 192.168.123.22 192.168.123.23" CONTROLLER_ADDRESS="192.168.123.10"

2. 然后在manifest文件夹中新建四个文件夹分别以四个ip地址命名。

├── 192.168.123.10

├── 192.168.123.21

├── 192.168.123.22

├── 192.168.123.23

├── cluster.manifest.sample

└── server.manifest.sample

3. 把cluster.manifest.sample拷到controller节点ip的文件夹中,重命名成cluster.manifest。

修改里面的storage_class、storage_group、addr等信息,一般是你使用哪种硬盘就改成哪种,ip地址修改成相应的网段;把Server.manifest.sample拷贝到其余三个节点ip的文件夹中。修改vsm_controller_ip、role和硬盘路径。具体配置信息可参考官网的配置文档。

https://github.com/01org/virtual-storage-manager/blob/master/INSTALL.md#Configure_Cluster_Manifest

https://github.com/01org/virtual-storage-manager/blob/master/INSTALL.md#Configure_Server_Manifest

├── 192.168.123.10

│   └── cluster.manifest

├── 192.168.123.21

│   └── server.manifest

├── 192.168.123.22

│   └── server.manifest

├── 192.168.123.23

│   └── server.manifest

├── cluster.manifest.sample

└── server.manifest.sample

4. 在四台服务器中的/etc/hosts文件中添加以下信息

192.168.123.10 vsm-controller

192.168.123.21 vsm-node1

192.168.123.22 vsm-node2

192.168.123.23 vsm-node3

5. 执行以下命令修改相应的hostname

$ sudo hostnamectl set-hostname vsm-node1

6. CentOS一定要添加epel源,如果下载失败,就把URL的最后的文件路径去掉,找到最新的epel.rpm。安装过程下载依赖包需要这个。

yum install http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm

7. 在三个agent节点执行如下命令,把/dev/sdb和/dev/sdc格式化供ceph使用。

$ sudo parted /dev/sdb -- mklabel gpt

Information: You may need to update /etc/fstab.

$ sudo parted -a optimal /dev/sdb -- mkpart primary 1MB 100%

Information: You may need to update /etc/fstab.

$ sudo parted /dev/sdc -- mklabel gpt

Information: You may need to update /etc/fstab.

$ sudo parted -a optimal /dev/sdc -- mkpart primary 1MB 100%

Information: You may need to update /etc/fstab.

8. 最后在主节点上执行如下命令,打通ssh。

Root@vsm-controller:~$ ssh-keygen

Generating public/private rsa key pair.

Enter file in which to save the key (/home/cephuser/.ssh/id_rsa):

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Root@vsm-controller:~$ ssh-copy-id vsm-node1

Root@vsm-controller:~$ ssh-copy-id vsm-node2

Root@vsm-controller:~$ ssh-copy-id vsm-node3

9. 结束之后执行./install.sh -u root -v 2.2即可。安装流程是先在controller节点下载安装相关依赖包,之后再拷贝到agent节点安装。结束之后在浏览器输入https://192.168.123.10/dashboard/vsm即可访问。执行get_pass.sh脚本获取admin用户密码。创建集群之后就可以使用了。

注:v2.2版本还是测试版本,安装之后web界面是中文的,但是亲测web界面会出现按钮提交失败的情况,由于不懂前端开发所以暂时不知道原因。建议还是先用v2.1版本。

内网服务器安装方法:在外网安装时,修改/etc/yum.conf将keepcache的值由原来的0(表示安装后删除软件包)修改为1(表示安装后保留软件包)。安装完成之后把/var/cache/yum下所有缓存的包拷到内网的相同目录下。再执行安装命令。如果期间出现yum问题,修改yum的源为内网源即可。

VSM(Virtual Storage Manager For Ceph)安装教程的更多相关文章

  1. VSM(Virtual Storage Manager) add new osd 代码分析

    vsm add new osd 流程 后台获取可用设备 | 选择可用设备及osd相关信息等 | 点击add按钮,把准备部署的osd信息添加到需要部署的item列表中 | 点击submit按钮,添加it ...

  2. CEPH安装教程(上)

    环境拓扑 主机 配置 地址 运行服务 node CPU:1 内存:2GB 磁盘:vda(20GB) br-mgmt:92.0.0.250 br-ex:192.168.203.250/19 ntp an ...

  3. CEPH安装教程(下)

    创建 CEPH 文件系统 创建存储池 # ceph osd pool create cephfs_data 64 # ceph osd pool create cephfs_metadata 64 创 ...

  4. CEPH安装教程(中)

    NTP服务配置 NTP客户端配置 # vim /etc/ntp.conf server 92.0.0.250 ### 手动同步下时间 # ntpdate -u 92.0.0.250 ### 启动服务 ...

  5. eclipse安装ADT插件重启后不显示Android SDK Manager和Android Virtual Device Manager图标的一种解决办法

    通常安装,搭建安卓环境后,不显示Android SDK Manager和Android Virtual Device Manager ize解决方法:Eclipse ->window->c ...

  6. centos6.4 ceph安装部署之ceph object storage

    preface: ceph-deploy does not provide a rapid installation for Ceph Object Storage install Configura ...

  7. OpenStack 安装教程(使用Fuel )

    OpenStack Fuel 安装教程 1介绍 OpenStack 是由 Rackspace 和 NASA 共同开发的云计算平台,帮助服务商和企业内部实现类似于 Amazon EC2 和 S3 的云基 ...

  8. Docker和Docker-compose安装教程以及docker-elk,docker-storm安装教程

    此安装教程仅供我自己安装配置时查看,其他的人不可以偷看!!! 安装Docker 1. Update package information, ensure that APT works with th ...

  9. RHEL 6.3 详细安装教程

    以前刚接触linux时,什么都不懂,为了学习,在电脑上安装双系统(原系统为Win7),吃过不少苦头,在网上搜教程,很多都是语焉不详,导致安装过程中战战兢兢.最近朋友面试运维,面试官有考他对linux安 ...

随机推荐

  1. sql 批量更新表中多字段为不同的值

    ,),,),rand()) select newid() ,) update tablename , FB,)) , ), FC,)) , )

  2. 在SDK中使用Ubuntu仿真器

    Ubuntu仿真器是开发过程中非常有用,尤其是在没有任何Ubuntu设备时.在将仿真器附加到SDK后,你便可以在上面运行程序,安装点击数据包,等等,类似在物理设备上的操作一样. 在这里,您可以了解如何 ...

  3. mhn 实际部署记录

    新增蜜罐时需要注意,server/collector_v2.py中的DEFAULT_CHANNELS,没有注册这个事件是接收不到新蜜罐的消息的

  4. linux基础——关于chmod用户权限和文件的相关操作

    第一部分:1) 新建用户natasha,uid为1007,gid为555,备注信息为“master” 操作:useradd natasha新建natasha:修改uid是,usermod -u 100 ...

  5. 使用maven构建第一个web项目

    在eclipse中,正常创建maven项目后,发现在index.jsp中会报错,此时在pom.xml中加入如下依赖关系即可 <dependency> <groupId>java ...

  6. OpenCV-2.4.6-android-sdk 人脸识别demo搭建

    最近项目需要研究下人脸识别,在领导推荐下准备研究OpenCV 一,上官网了解下 基本知识 http://docs.opencv.org/doc/tutorials/introduction/andro ...

  7. 利其器之webstorm快捷键

    总结几个webstorm常用的快捷键(macbook下) 最实用: command + option + 左/右箭头           定位到历史记录中上次/下次编辑的位置 command + b ...

  8. Bot Framework测试

    在开发完成Bot Framework后,在本机的模拟器都是成功的,但未知在发布后会出现什么样的问题,所以需要将本机发布的站点给到Bot 1.在Bot Framework注册一个Bot,打开Bot Fr ...

  9. 实例教程:1小时学会Python(转)

    1 序言 面向读者 本文适合有经验的程序员尽快进入Python2.x世界.特别地,如果你掌握Java和Javascript,不用1小时你就可以用Python快速流畅地写有用的Python程序. Pyt ...

  10. 操作Image,封装的方法

    using System; using System.Collections; using System.IO; using System.Drawing; using System.Drawing. ...