关于安装agent的一些问题
1、本文主要是记录
1.首先在开启虚拟机之前,也就是电源状态为关机时,打开本台虚拟机设置,勾选VT,cpu至少是双核如图,之后开启虚拟机。

2、配置防火墙
iptables -I INPUT -p tcp -m tcp --dport 22 -j ACCEPT
iptables -I INPUT -p tcp -m tcp --dport 1798 -j ACCEPT
iptables -I INPUT -p tcp -m tcp --dport 16509 -j ACCEPT
iptables -I INPUT -p tcp -m tcp --dport 5900:6100 -j ACCEPT
iptables -I INPUT -p tcp -m tcp --dport 49152:49216 -j ACCEPT
保存防火墙设置
iptables-save > /etc/sysconfig/iptables
如果语句添加不了证明还没有这个服务,请先下载
yum install iptables-services -y
3、1.安装ntp
yum install ntp
chkconfig ntpd on (开机自启)
配置与本地Management Server时钟同步
vi /etc/ntp.conf
在# Please consider joining the pool下面添加
server 192.168.xxx.xxx(管理节点的主机ip)
2.修改selinux
vi /etc/selinux/config
SELINUX=permissive
3.配置本地域名解析
需要修改三处位置,分别是/etc/sysconfig/network、/etc/hosts
/etc/sysconfig/network
在文件加上
NETWORKING=yes
HOSTNAME=c7_agent(主机名称)
/etc/hosts
文件的最后增加(IP为主机IP):192.168.xxx.xxx(本台agent ip) c7_agent
为保万一 执行 hostnamectl set-hostname c7_agent
重启
输入hostname --fqdn查看本地域名设置是否成功,成功应该只显示c7_agent
输入getenforce 查看 selinux是否设置成功
输入service ntpd status 查看ntpd是否已启动,没有,输入service ntpd start
4、执行命令:
# lsmod |grep kvm
如果出现类似以下内容,证明本机已有kvm
kvm_intel 53484 0
kvm 316506 1 kvm_intel
若是没有则执行命令:
yum install libvirt* qemu*
或者yum install kvm和yum install virt*(本机执行该命令,虚拟机出现黑屏,重启出现错误,应该是因为本机已有kvm,文件冲突)
5、下载cloudstack-agent-4.11.1.0-1.el7.centos.x86_64.rpm和cloudstack-common-4.11.1.0-1.el7.centos.x86_64.rpm
下载地址http://download.cloudstack.org/centos/7/4.11/?C=M;O=A ,通过运程访问工具或通过图形界面下载,将其放置在将要安装agent的某个文件夹下上,具体放置的路径按个人习惯,例如本人放在/usr/local上
通过yum install cloudstack-common-4.11.1.0-1.el7.centos.x86_64.rpm
yum install cloudstack-agent-4.11.1.0-1.el7.centos.x86_64.rpm安装相关的rpm包,注意这里安装一定要安装此顺序,否则安装不成功
6、配置libvirtd
# vi /etc/libvirt/libvirtd.conf
listen_tls = 0
listen_tcp = 1
tcp_port = "16509"
auth_tcp = "none"
mdns_adv = 0
# vi /etc/sysconfig/libvirtd
LIBVIRTD_ARGS="--listen"
# vi /etc/libvirt/qemu.conf
vnc_listen = "0.0.0.0"
启动libvirtd服务 输入service libvirtd restart
7、启动可能会失败,错误信息如图,去系统的日志文件看错误信息位置是/var/log/messages
发现错误如图,大概讲的是目前的centos7版本无法运行这个版本的libvirt
下面还提示我们remove 包libvirt_storage_backend_rbd.so
cd到错误信息中提示的路径
执行命令:
mv libvirt_storage_backend_rbd.so libvirt_storage_backend_rbd.so.bak

8、重新启动libvirtd服务
systemctl restart libvirtd
查看当前libvirtd的运行状态
systemctl status libvirtd
服务正常运行

9、修改agent.properties
vim /etc/cloudstack/agent/agent.properties
将其中的guest.network.device、private.network.device、public.network.device的注释去掉,并将值改为virbr0(这里是本人这里的虚拟网卡,可以通过ifconfig查看,后面增加的网卡,virbr0是名称,填写名称即可,如图),并将host的地址给改成服务器ip
guest.network.device=virbr0
private.network.device=virbr0
public.network.device=virbr0
host=192.168.xxx.xxx(管理服务器的ip地址)
10、最后重新执行
systemctl restart cloudstack-agent.service
或者systemctl start cloudstack-agent.service
没有报错
systemctl status cloudstack-agent.service查看状态
正常运行
也可以使用cloudstack-setup-agent(网上说用这条命令启动不好,有关安全方面的证书会出现问题,但在我这根本没有可见的影响)

11、去cloudstack webUI 添加主机,如果能添加成功,如图一则无需继续,有时候状态也可能是Alex,等待一会再刷新或者remove host 再重新添加都行。
否则请继续看下去,这里启动agent看似没有问题,问题在于管理服务器添加这台主机时,可能会因为ssl双向认证导致添加失败,一直报ssl握手失败的错误,从官方发出来的文档来看,如果更新到最新环境,也就能使问题解决,


12、下面这几条语句能解决相关问题
yum install epel-release -y
yum update -y
yum install python-pip -y
pip install ifcfg
yum install openvswitch.x86_64 openvswitch-controller.x86_64 NetworkManager-ovs -y
最后在cloud stack web上添加主机即可,若是添加后主机状态为Alex,可以稍微刷新一下页面或者remove host 再重新添加
13、本人记录:通过修改数据库cloud.configuration中的ca.plugin.root.auth.strictness的值,依然没有解决ssl问题,yum update -y升级的是整台虚拟机的环境。