转载注明出处,陈小跑 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. Linux下程序对拍_C++ (付费编号1001)

    本博客为精品博客,涉及利益问题,严禁转载,违者追究法律责任 一.对拍背景 对拍是一种十分实用的检查程序正确性的手段,在比赛时广泛使用 我们一般对拍两个程序,一个是自己不确定正确性的高级算法,另一个一般 ...

  2. Linux 开机自动挂载windows分区

    blkid 查看 uuid如下ps:或者使用uuidgen <设备>查看具体设备的uuidreddusty@reddusty-X550JK:~$ sudo blkid[sudo] pass ...

  3. algorithm ch6 priority queque

    堆数据结构的一个重要用处就是:最为高效的优先级队列.优先级队列分为最大优先级队列和最小优先级队列,其中最大优先级队列的一个应用实在一台分时计算机上进行作业的调度.当用堆来实现优先级队列时,需要在队中的 ...

  4. 关于might_sleep的一点说明---CONFIG_DEBUG_ATOMIC_SLEEP【转】

    转自:http://blog.chinaunix.net/uid-23769728-id-3157536.html 这个函数我在看代码时基本上是直接忽略的(因为我知道它实际上不干什么事),不过因为内核 ...

  5. jQuery九宫格图片拉伸变大代码

    之前看到网上有jQuery九宫格图片拉伸变大代码只可以动六张图片,我改了改做了九张图片都可以做的 图片的布局 成品就是每一个图片都可以动看到大图 css样式 <style> /*九宫格*/ ...

  6. 如何修改linux 的SSH的默认端口号?

    http://blog.chinaunix.net/uid-7551698-id-1989086.html   在安装完毕linux,默认的情况下ssh是开放的,容易受到黑客攻击,简单,有效的操作之一 ...

  7. Selenium2+python自动化67-用例失败自动截图【转载】

    前言: 装饰器其实就是一个以函数作为参数并返回一个替换函数的可执行函数 上一篇讲到用装饰器解决异常后自动截图,不过并没有与unittest结合,这篇把截图的装饰器改良了下,可以实现用例执行失败自动截图 ...

  8. MySQL 基础内容

    创建数据库 对于表的操作需要先进入库 use 库名: -- 创建一个名为 inana_db 的数据库,数据库字符编码指定为 utf8create database inana_db character ...

  9. MATLAB的简单动画制作

    这里介绍两种类型的动画实现,一种使用getframe和movie命令实现帧动画,另一种使用comet(comet3)命令实现画图过程的动画. ①getframe和movie命令实现帧动画 例如,创建一 ...

  10. ORM中的N+1问题

    在orm中有一个经典的问题,那就是N+1问题,比如hibernate就有这个问题,这一般都是不可避免的. [N+1问题是怎么出现的] N+1一般出现在一对多查询中,下面以Group和User为例,Gr ...