转载注明出处,陈小跑 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. 【CodeForces】841C. Leha and Function(Codeforces Round #429 (Div. 2))

    [题意]定义函数F(n,k)为1~n的集合中选择k个数字,其中最小数字的期望. 给定两个数字集A,B,A中任意数字>=B中任意数字,要求重组A使得对于i=1~n,sigma(F(Ai,Bi))最 ...

  2. ShadowBroker公开的SMB远程命令执行漏洞修复

    有人不知道如何获得MS对应的补丁KB编号,可以看这篇文章了~ 漏洞编号为ms17-010,如何查看对应MS号的补丁已经安装: 下载微软官方的补丁信息列表(Microsoft Security Bull ...

  3. jetty bleed漏洞利用工具

    两个exp: https://github.com/AppSecConsulting/Pentest-Tools/blob/master/jetty-bleed.py https://github.c ...

  4. windows注册表存储位置

    win7/8/10 通常情况: HKEY_LOCAL_MACHINE \SYSTEM : \system32\config\system HKEY_LOCAL_MACHINE \SAM : \syst ...

  5. django返回二进制图片

    @login_required def down_img(request, path): content = Storage().download(path) from django.http imp ...

  6. kuangbin带你飞 匹配问题 二分匹配 + 二分图多重匹配 + 二分图最大权匹配 + 一般图匹配带花树

    二分匹配:二分图的一些性质 二分图又称作二部图,是图论中的一种特殊模型. 设G=(V,E)是一个无向图,如果顶点V可分割为两个互不相交的子集(A,B),并且图中的每条边(i,j)所关联的两个顶点i和j ...

  7. platform_driver_register,什么时候调用PROBE函数 注册后如何找到驱动匹配的设备【转】

    转自:http://blog.chinaunix.net/uid-25508271-id-2979412.html kernel_init中do_basic_setup()->driver_in ...

  8. Python标准库——collections模块的Counter类

    1.collections模块 collections模块自Python 2.4版本开始被引入,包含了dict.set.list.tuple以外的一些特殊的容器类型,分别是: OrderedDict类 ...

  9. C中的volatile关键字

    volatile提醒编译器它后面所定义的变量随时都有可能改变,因此编译后的程序每次需要存储或读取这个变量的时候,都会直接从变量地址中读取数据.如果没有volatile关键字,则编译器可能优化读取和存储 ...

  10. Mac-item+zsh

    $brew cask install iterm2 $ sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/m ...