convirt2.5在虚拟机上安装笔记-阿里云开发者社区

开发者社区> 疯狂小兵> 正文

convirt2.5在虚拟机上安装笔记

简介: <span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">convirt2.5在虚拟机上安装笔记</span> 简介:ConVirt开源是业内领先的Xen/KVM开源管理产品, 使企业能够以集中的方式管理其虚拟环境。
+关注继续查看

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">convirt2.5在虚拟机上安装笔记</span>


简介:ConVirt开源是业内领先的Xen/KVM开源管理产品, 使企业能够以集中的方式管理其虚拟环境。ConVirt开源支持企业通过一个交互式的Web用户界面进行虚拟机部署、性能诊断、负载均衡。ConVirt开源对用户完全开放、免费。

 

开源ConVirt的关键特性:

 

三层的标准架构
ConVirt开源采用了一个全新的三层标准架构,提供了强大的可伸缩性、安全性和系统集成能力,可以满足企业最苛刻的需求。

 

服务器池为基础的管理
为了充分利用虚拟化敏捷优势,您需要根据IT策略和资源限额统一管理服务器池。ConVirt开源通过划分服务器池(一个服务器池通常是一个集群)的方式对硬件资源进行重新组织, 支持用户以服务器池为单元进行虚拟机的监控、部署及配置,极大地简化服务器及虚拟机的管理。

 

模板为前提的配置
ConVirt开源基于模板配置服务器, 标准化您的虚拟环境。在短短几分钟内,通过分配CPU和内存,定义网络参数/指定共享存储/创建新的专属模板, 或干脆使用第三方虚拟设备,只需一个点击便可轻松创建到新的或现有的服务器。

 

监控和配置管理
ConVirt开源提供监控与配置管理功能,它使您可以快速地发现瓶颈、进行资源再分配并保证遵循企业规定。具体功能包括:24 x7监控虚拟机可用性和性能、追踪历史信息、收集详细的配置信息、确保基于模板的配置。

 

集中管理
ConVirt开源让您可以集中管理全部的虚拟机。

 

自动化
ConVirt开源支持您自动在线迁移与部署虚拟机,以满足您的业务目标。

 

存储监测与配置
ConVirt开源支持您关联共享存储NAS/SAN 到服务器池。关联成功后,该服务器池中新建的虚拟机将具有相同的存储配置。ConVirt开源自动统计服务器池中的存储使用信息,使您可以实时地监测资源消耗情况。

 

网络配置
ConVirt开源支持您自定义私有网络,自动化部署私有网络所需的配置,如DHCP配制。

官方帮助文档

安装:

1.     通过sphereclient 登录(192.168.100.30)服务端(root/tes.srv0)添加虚拟机

2.     右键文件>新建虚拟机,在配置中选择自定义创建好新的虚拟机环境

3.    启动虚拟机(例:test_jing),点击上方的光盘和扳手在一起的按钮,选择“连接到本地磁盘的iso镜像”,输入路径\\192.168.100.15\Tools\Linux,选择需要的系统-->打开

4.    按ctrl+alt+insert 组合键后进入系统的安装(例:centos 6.4 )

a)      选择 Install system  with base video driver

b)     Skip (不选择OK,测试时间太长)

c)       以下就遵照centos的安装步骤,在选择安装的使用环境时选择desktop,现在自定义,将TurboGears 、mysql的服务端和客户端选择上。--> 下一步安装系统

5.    配置网络使其能连接上外网(需要下载软件)

a)      192.168.100.6为该虚拟机添加ip(例:192.168.108.83)

b)     设置虚拟机为ip获取方式为dhcp

6.    ConVirt 2.0 Setup for Fedora/RHEL/CentOS(重点开始)

a)      切换到root用户

b)     设置 ConVirt 的源

For rhel 6.x

#cd/etc/yum.repos.d;
#wget   --no-cache http://www.convirture.com/repos/definitions/rhel/6.x/convirt.repo

c)      安装socat

#yum install socat

d)     要安装cms(ConVirt  management  server),最好切换到普通用户 convirt,切换到用户主目录

$cd  ~;

e)      如果有代理服务器可以配置代理服务器,没有的话就跳过这一步

exporthttp_proxy="http://company-proxy-server:80"

 注意:代理端口根据实际情况而定

f)       从Convirt网站下载所需要的包


$wget --no-cache http://www.convirture.com/downloads/convirt/2.5/convirt-install-2.5.tar.gz;
$wget --no-cache http://www.convirture.com/downloads/convirt/2.5/convirt-2.5.tar.gz;
$wget --no-cache http://www.convirture.com/downloads/convirture-tools/2.5/convirture-tools-2.5.tar.gz
g)      在主目录中解压,你将会在主目录中看到包含创建TurboGerars2环境和Cms 的脚本的目录。

$tar -xzf convirt-install-2.5.tar.gz
h)     以root用户或者sudo 安装依赖

$cd  ~/convirt-install/install/cms/scripts/;
$sudo ./install_dependencies

会提示输入convirt的密码,输入”convirt”后可能会提示用户不在sudo组中。将convirt添加到管理员组中。

切到root用户

#chmod  u+w  /etc/sudoers 开启写权限
#vim /etc/sudoers

找到root位置 在下一行添加命令

convirt ALL=(ALL)   ALL

#chmod  u-w  /etc/sudoers 关闭写权限
$ sudo ./install_dependencies

Centos6下自动安装的是mysql,centos7下自动安装的是mariadb数据库,需要替换掉,看Centos7下安装mysql”文档

 执行到后面会启动mysqld服务,需要用户密码,因为预先安装的mysql,没有设置root密码,直接按enter键。设置root密码,重复两次(例密码:root)。

然后系统询问是否删除匿名用户(Y/N),“Y“!

不允许root远程连接(Y/N),”Y”.

删除预置的test数据库(Y/N),”Y”.

马上重新载入特权表(Y/N),”Y”.

i)   设置 innodb 缓存和内存池

切换权限为root

修改/etc/my.cnf文件

#vim /etc/my.cnf

[mysqld]下添加下面两行

innodb_buffer_pool_size=1G

innodb_additional_mem_pool_size=20M

j)        重启mysql服务

$sudo  /etc/init.d/mysqld   restart

7.    安装ConVirt ,以非root用户登录

a)      如果有需要,再次设置代理服务器。否则直接跳过

export http_proxy="http://company-proxy-server:80"

b)     默认的cms 会安装在主目录下的~/convirt ,可以通过修改配置文件更改安装的位置.

$cd  ~/convirt-install/install/cms/scripts
$vim install_config

将CONVIRT-BASE=~改为CONVIRT-BASE=~/cms

重新载入install_config配置文件

~$source  ~/convirt-install/install/cms/scripts/install_config
 

c)      解压 cms包到刚才设置的目录

创建$mkdir  ~/cms目录

$tar  -xzf   convirt-2.5.tar.gz  -C $CONVIRT_BASE

d)     设置 TurboGears (python的轻量级框架)

~/convirt-install/install/cms/scripts/setup_tg2

e)      设置 ConVirt

修改~/cms/convirt/src/convirt/web/convirt/development.ini中的sqlalchemy.url选项内容来映射mys数据库的用户名和密码。

$vim ~/cms/convirt/src/convirt/web/convirt/development.ini

“/sqlalchemy.url”命令查找其位置

#sqlalchemy.url=postgres://username:password@hostname:port/databasename?charset=utf8

sqlalchemy.url=mysql://root:root@localhost:3306/convirt?charset=utf8

 


注:后台收集的cpu、内存等信息都会保存到数据库中,默认为365天,数据量非常大,造成后期mysql查询很慢,磁盘IO很高,如果机器性能不好,应该修改下面的参数,来减少数据保存的时间:

 

1.  purge_hr_data = 60

2.  purge_day_data = 30

3.  purge_week_data = 30

4.  purge_month_data =30

5.  purge_raw_data = 30

6.  task_results_purge_interval=30

7.  TaskPaneLimit=7

8.  task_panel_row_limit=200

9.  notifications_row_limit=200

 

刚才设置的mysql密码为root。

然后执行$~/convirt-install/install/cms/scripts/setup_convirt

会要求输入passPhrase。

Enterpassphrase(empty for no passphrase):记住密语以后会用到(例:testOS

Entersame  passphrase again: 记住密语以后会用到(例:testOS

cms启动时也会用到,通过密语来连接cmsmanaged server

PS:

如果在这里出现 convirt-ctl   setup error 同意思的字样,可能得删除数据库中的convirt数据库,然后重新执行

~/convirt-install/install/cms/scripts/setup_convirt

有时候mysql数据库是用root用户启动的,那么cms也必须用root用户启动

8.    使CMS设置生效

a)      启动cms服务

$~/cms/convirt/convirt-ctl  start

将命令设置为:

$alias cv_start=”/home/convirt/cms/convirt/convirt-ctlstart”
$alias cv_stop=”/home/convirt/cms/convirt/convirt-ctlstop”

服务名称为:paster  代理服务:ssh-agent

可以通过ps  -e | grep paster 查看服务是否开启

b)     如果开启着防火墙,配置访问策略(root权限)

#iptables -I INPUT -p tcp --dport 8081 -j  ACCEPT

c)      验证是否运行成功

不成功就重启下cms服务和防火墙,返回a).b)

如果多次启动仍然不成功,切换到root用户再次重试

查看ip:#ifconfig eth0  得ip(192.168.108.83)

在另一台机器上浏览器中输入:http://192.168.108.83:8081

这样就是成功了。

d)     关闭服务

$~/cms/convirt/convirt-ctl   stop

9.    准备好Managed Servers

a)      安装虚拟化平台KVM    

安装另外的被管理的服务端,即manager server

PS:在选择系统安装环境时,默认选择是最小安装,通常是安装带有桌面版的,但在这里需要选择“Virtual Host”安装选项。安装完成没有图形界面,只有命令行。

下面红字是在同一台机器上练习kvm,失败

对于RHEL6centos6.X版本的改动如下:

Centos中默认没有安装KVM

安装#yum -y groupinstall 'Virtualization' 'Virtualization Client' 'VirtualizationPlatform' 'Virtualization Tools'

 

查看模块:lsmod | grep kvm

b)     修改网络配置:

The/etc/sysconfig/network-scripts/ifcfg-eth0 content looks as follows on defaultinstallation.

DEVICE="eth0"
HWADDR=specifc mac address
NM_CONTROLLED="yes"
ONBOOT="no"
 

ForDHCP, configure the interface as follows.

DEVICE="eth0"
HWADDR=specifc mac address
NM_CONTROLLED="no"
ONBOOT="yes"
BOOTPROTO="dhcp"

 

 Restart the network after configuration.
/etc/init.d/network restart

ForStatic ip, configure it as follows

DEVICE="eth0"
HWADDR=specifc mac address
NM_CONTROLLED="no"
ONBOOT="yes"
BOOTPROTO="static"
IPADDR=ip address here.
NETMASK=netmask here.
Change the /etc/sysconfig/network to have the GATEWAY.
 
NETWORKING=yes
HOSTNAME=www1.nixcraft.in
GATEWAY=gateway address here.
 
Change /etc/resolve.conf
nameserver Specify ip address of dns server/usually same as gateway.
For example configuration, see  Method #3 
http://www.cyberciti.biz/faq/rhel-centos-fedoracore-linux-network-card-configuration/
Restart the network after configuration.
/etc/init.d/network restart

配置文件中的mac地址必须要和ifconfig查看的对应接口的地址一样,否则会报错。测试能连接上网络之后操作下一步。

c)      检查系统cpu是否支持KVM虚拟化

在Linux环境下,在终端输入#egrep -c ‘(vmx|svm)’ /proc/cpuinfo

0 表示不支持,1 表示支持。

d)     加载kvm模块

#modprobe  kvm

#modprobe  kvm_amd

#modprobe  kvm_intel

硬件不支持虚拟化操作

10.             运行 convirt-tool

a)      cms 账户登录

下载工具包:convirture-tools-2.5.tar.gz 前面已经下载

b)     将convirture-tools-2.5.tar.gz复制到 managed server:

$scp convirture-tools-2.5.tar.gz  root@managed-server:/root

c)      $使用cms账户(convirt)远程登录到managed server 作为root用户。

$ssh   root@ managed-server

root/123456

d)     解压:convirture-tools-2.5.tar.gz

tar -xzf convirture-tools-2.5.tar.gz

e)      切换到convirt-tool所在目录,使用该命令检查或配置Managed Server,登录身份必须为root

#cd  /root/convirture-tools/install/managed_server/script

查看帮助信息

#./convirt-tool  -h

使平台生效:

#./convirt-tool  --detect_only  setup (detect 前有两个”-”)

原因是该软件现在正常情况是不支持Centos6之上版本的。网上也没有这方面的资料,偷个懒,破坏下规则,修改脚本文件

--> 结果就是:web上登录进去时显示”internal  server  error”.

-->  所以不建议这样做

 

修改如下图:

修改/root/convirture-tools/install/managed_server/scripts/convirt-tool

添加上两个条件

添加依赖包

#./convirt-tool  install_dependencies

下一步需要网络配置为一个接口桥接,否则远程访问登录就会断掉。

 

配置文件如下:

#cd/etc/sysconfig/network-script/

#vim  ifcfg-em1


#ifcfg-br1

修改完后如果不能联网,重启系统试试

启动工具

 #~/convirture-tools/install/managed_server/script/convirt-tool    setup

 

重启系统

如果这时候网络断掉了,基本上就直接在服务器面前操作了,参照上面的配置图将网桥配置上。

通过测试ssh能够远程访问后就成功了。

11.             使用ConVirt管理服务器

a)      启动cms管理程序

/home/convirt/cms/convirt/convirt-ctlstart

b)     终端通过浏览器访问:http://ip-address:8081

登录:(默认为admin/admin)

c)      选择想要添加新的被管理服务端的服务池,比如:QA Pool

d)     右击从菜单上选择”Add Server”

e)      选择虚拟化的平台

f)       提供打算将要管理的被管理服务端(managed server)的IP地址或者主机名,也可以提供ssh证书或者在高级选项中点击”Use Keys”(需要配置ssh免密码登录)

g)      点击OK添加。

新添加的managed server 将会显示在服务池中,现在就可以创建和管理这台服务器上的虚拟机了。

详细参考文档地址:http://www.convirture.com/wiki/index.php?title=Convirt2_doc

12. 为了更好的操作,现在配置VNC

a)      为了在浏览器上显示图形界面的对虚拟机的控制,还需要做一些额外的步骤。

前提:浏览器安装了java插件,需要运行VNC applet

Convirt允许执行某个主机作为VNC守护,默认为CMS机器。

登录CMS主机并且开启CMS( ./convirt-ctl start)。

作为CMS设置的一部分,~/.ssh/cms_id_rsa and cms_id_rsa.pub files已经产生。

现在,从cms主机,尝试登录managed server 使用 设定的key,输入在安装cms时使用的密语(passphrase)。

eval  ‘ssh-agent –s’;
ssh-add  ~/.ssh/cms_id_rsa;
如果出现Could not open a connection to your authentication agent
执行   ssh-agent bash  后再次执行ssh-add  ~/.ssh/cms_id_rsa;
 

b)     现在就可以登录任一台那些key已经设置好的managed server

         ssh root@managed-server

ps:大多数情况下,当你输入凭证,同时在添加managed server需要检查“use Keys”时,convirt会自动给managed server 添加一个cms_id_rsa 到审定的主机。

如果因为某些原因,这样行不通,就需要复制cms_id_rsa到每个managed server 并且再把这个文件克隆一份并命名为: authorized_keys

 

      scp ~/.ssh/cms_id_rsa.pub root@managed-server:/root/.ssh/vnc_proxy_id_rsa.pub
       ssh root@managed-server
       cat ~/.ssh/vnc_proxy_id_rsa.pub >> ~/.ssh/authorized_keys

c)      更改cms上的防火墙,使其允许端口(6900-6999)通过,这些端口用作convirt允许VNC applet 获取到虚拟机的控制权,以root身份登录cms,并执行命令

iptables -I INPUT -m state --state NEW -p tcp --dport 6900:6999 -j ACCEPT

13.   VNC的详细配置用于convirt

术语:

CMSserver : 运行CMS 服务的物理主机

ManagedServer:运行虚拟平台并运行一个或多个虚拟机的服务。

VNCProxy Host:默认设置在CMS server上。

Vm-vnc-port:虚拟机需要使用的VNC端口

a)    详细配置:

浏览器上VNC的连接路径:

Browser/Applet---tcp/ip--> CMS Server:socat listen:6900-6999 --ssh--> ManagedServer:socat --> Managed Server:vm-vnc-port

(1)为了获取可视控制的请求,cms首先启动socat来监听6900:6999间可用端口

(2)浏览器连接的端口由CMS服务指定

(3)Socat接收Applet的连接请求,执行ssh连接到managed Server 使用sshkeys,并启动另一个socat进程。

(4)Managed server上的scoatt,为了连接vm-vnc-port会使用127.0.0.1:vm-vnc-port。

(5)下面是设置使用的命令

socat-d -d -d -d TCP-LISTEN:6900 EXEC:'/usr/bin/ssh root@srv-001 socat -TCP\:127.0.0.1\:5902' > /tmp/6900_5902_qKhAFc.log 2>&1 &

6900是从cms上选择的端口,srv-001是被管理的服务器,5902是vm-vnc-port

现在可以再cms上尝试上一命令,并开启一个vnc客户端,标记为vncviewer cms_server :6900

 

解决cms免密码无法登录到managed server

获取cms   id

$ssh-keygen-t rsa -f ~/.ssh/cms_id_rsa
$chmod0600 ~/.ssh/cms_id_rsa*

开启ssh代理和载入key

$eval `ssh-agent -s`
$ssh-add~/.ssh/cms_id_rsa

登录managed server

$ ssh root@managed-server

仍然无法免密码登录的解决方法

 
$scp  ~/.ssh/cms_id_rsa.pub  root@managed-server: /root/.ssh/ vnc_proxy_id_rsa.pub
$ssh root@managed-server  (You would be prompted for password.)
$cat ~/.ssh/vnc_proxy_id_rsa.pub >>~/.ssh/authorized_keys
$iptables -I INPUT -m state --state NEW -ptcp --dport 6900:6999 -j ACCEPT
 

再不行就关闭防火墙,重启电脑

 如果出现HostKeys object has no attribute has_key

#vim /home/convirt/cms/convirt/src/convirt/core/utils/phelper.py

修改内容:将has_key 替换为 get

 

 

 

 

 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
飞天加速计划初体验
最近因需要使用云服务器来学习,老师让我们用这个阿里云类进行相关的学习,让我们先进行免费的使用进行学习,慢慢了解,毕竟对于首次接触的事物都是了解为主不会投入大量资金。阿里云平台有详细的教程,让初学者能十分轻松的进行学习。飞天加速计划是个好想法,可以让我们这些学生进行学习,制作出自己的网站。让我在暑假对计算机有了浓厚的兴趣,于是在阿里云我选择了飞天加速计划,学习大数据和服务器啥的,让自己get到更多的知识~
3 0
Cordova应用的JavaScript代码和自定义插件代码的调试
Cordova应用的JavaScript代码和自定义插件代码的调试
4 0
ECS使用感受
阿里云服务器初体验
3 0
微信小程序开发系列教程三:微信小程序的调试方法
微信小程序开发系列教程三:微信小程序的调试方法
3 0
云服务器ECS使用体验
最近因需要使用云服务器来运行我在学校做的综合课程设计,查来查去发现阿里云具有学生优惠政策可以免费领取使用。太棒了!!!
4 0
如何用Chrome自带的截屏功能截取超过一个屏幕的网页
如何用Chrome自带的截屏功能截取超过一个屏幕的网页
3 0
如何实现Windows宿主系统和虚拟机ubuntu系统文件互相访问
如何实现Windows宿主系统和虚拟机ubuntu系统文件互相访问
4 0
最简单的教程:在Ubuntu操作系统里安装Docker
最简单的教程:在Ubuntu操作系统里安装Docker
3 0
将Chrome调试器里的JavaScript变量保存成本地JSON文件
将Chrome调试器里的JavaScript变量保存成本地JSON文件
6 0
在Windows 10 系统上启用Hyper V遇到的错误:0x800f0831
在Windows 10 系统上启用Hyper V遇到的错误:0x800f0831
6 0
+关注
66
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载