天天看点

CentOS7 安装CloudStack4.14.0

https://blog.csdn.net/dandanfengyun/article/details/107220199#comments_13468183

按照4.13.1设置首先进行基本设置及基础软件安装完成。然后将4.13.1的安装包改成4.14.0的基本就可以了。

管理节点安装cloudsatck-management

更改cloudstack安装源,尽管是将安装包下载到本地安装,但还是有其他依赖软件可能要从安装源上下载,因此设置成版本14 最好

vi /etc/yum.repos.d/cloudstack.repo
           
[cloudstack]
name=cloudstack
baseurl=http://cloudstack.apt-get.eu/centos7/4.14/
enabled=1
gpgcheck=0
           

还是将安装包下载到本地安装。

yum -y localinstall cloudstack-common-4.14.0.0-1.el7.x86_64.rpm cloudstack-management-4.14.0.0-1.el7.x86_64.rpm 
           

安装完成设置 Java JRE版本 确定为JAVA 11

alternatives --config java
           
CentOS7 安装CloudStack4.14.0

虽然当前显示只有一个选项,但是如果之前安装过jre之类的需要设置成版本11.

初始化数据库,这一步在数据库中创建cloudstack使用的库表,并创建初始数据。 会在mysql中新创建一个 cloud 用户

cloudstack-setup-databases cloud:[email protected] --deploy-as=root:123456
           

初始化启动management

cloudstack-setup-management
           

这时已经可以通过 manager的IP访问到UI界面了。

http://manager:8080/client/
           

安装系统模板到二级存储

http://cloudstack.apt-get.eu/systemvm/4.14/systemvmtemplate-4.14.0-kvm.qcow2.bz2

/usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt  \
-m /export/secondary \
-f /root/systemvmtemplate-4.14.0-kvm.qcow2.bz2 \
-h kvm –F
           

计算节点安装cloudsatck-agent

更改cloudstack安装源,尽管是将安装包下载到本地安装,但还是有其他依赖软件可能要从安装源上下载,因此设置成版本14 最好

vi /etc/yum.repos.d/cloudstack.repo
           
[cloudstack]
name=cloudstack
baseurl=http://cloudstack.apt-get.eu/centos7/4.14/
enabled=1
gpgcheck=0
           

还是将安装包下载到本地安装。安装设置和 4.13.1 没什么区别

安装net-tools 工具,设置网络桥接

在安装cloudstack之前,要先设置桥接。因为计算节点运行的虚拟机通过网桥同计算节点通信,除了使用linux自带的桥接设置外,还可用一种软件switch可设置桥接,示例使用基础设置。

yum -y install net-tools bridge-utils
           

编辑网卡桥接文件 cloudbr

vim /etc/sysconfig/network-scripts/ifcfg-cloudbr0
           

内容如下,根据自己实际IP修改

TYPE=Bridge
BOOTPROTO=none
DEVICE=cloudbr0
ONBOOT=yes
IPV6INIT=no
IPV6_AUTOCONF=no
DELAY=5
IPADDR=192.168.199.92
NETMASK=255.255.255.0
GATEWAY=192.168.199.1
STP=yes
           

设置网卡文件

vi /etc/sysconfig/network-scripts/ifcfg-ens33
           

添加如下内容。将原IP 网关 子网掩码设置删除

HOTPLUG=no
BRIDGE=cloudbr0
           

HOTPLUG=no

表示不支持热插拔;举例来说,在Windows XP、Windows 7等系统中对U盘、网卡之类的硬件是支持热插拔的; 这就意味着,你不能在不断电的情况下直接插拔网卡,否则可能出现错误。

这样ifcfg-ens33文件看上去像这个样子

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="none"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="0ffad9c6-4d9b-4813-b9f7-e67aad7383fa"
DEVICE="ens33"
ONBOOT="yes"
HOTPLUG=no
BRIDGE=cloudbr0
           

重新启动网络服务

systemctl restart network
           

查看 网桥 和路由

brctl show
route -n
           
CentOS7 安装CloudStack4.14.0

安装cloudstack-agent 进行基本设置

安装依赖

yum install -y epel-release
yum install -y python36-libvirt
           

本地安装

yum -y localinstall cloudstack-common-4.14.0.0-1.el7.x86_64.rpm cloudstack-agent-4.14.0.0-1.el7.x86_64.rpm 
           

cloudstack管理虚拟机,底层的虚拟机创建等还是通过kvm qemu等实现,libvirtd提供接口 访问虚拟机等。因此安装完成要修改相应配置。

计算节点也要设置 Java JRE版本 确定为JAVA 11

alternatives --config java
           

CloudStack通过libverd来管理所有的kvm

有两部分需要进行配置, libvirt和QEMU

1) 编辑QEMU VNC配置文件/etc/libvirt/qemu.conf

vim /etc/libvirt/qemu.conf
           

去掉注释

vnc_listen="0.0.0.0"
           

2)CloudStack使用libvirt管理虚拟机

配置/etc/libvirt/libvirtd.conf文件

vim /etc/libvirt/libvirtd.conf
           
listen_tls = 0
listen_tcp = 1
tcp_port = "16509"
auth_tcp = "none"
mdns_adv = 0
           

配置/etc/sysconfig/libvirtd文件

vim /etc/sysconfig/libvirtd
           
LIBVIRTD_ARGS="--listen"
           

3)重启libvirtd 并设置为开机自启

systemctl restart libvirtd
systemctl enable libvirtd
           

资源域创建之类的同4.13.1 一致。不再重复

从4.13.1 升级到 4.14.0

官方文档 概述升级大概分 11步 。

1. Check any customisations and integrations
2. Upload the 4.14.0 System VM template if not already using it.
3. Confirm Java 11 is the default Java version
4. Stop all running management servers
5. Backup CloudStack database (MySQL)
6. Add “serverTimezone=UTC” to your “db.properties”
7. Upgrade 1st CloudStack management server
8. Update hypervisors specific dependencies
9. Restart 1st management server
10. Check that your upgraded environment works as expected
11. Upgrade and restart the remaining management servers
           

bd tx 翻译大概就是

1. 检查插件等。
2. 如果尚未使用4.14.0系统VM模板,则上传它到CloudStack模板中。
3. 确认Java 11是默认的Java版本
4. 停止所有运行的管理服务器
5. 备份CloudStack数据库(MySQL)
6. 在“db.properties”中添加“serverTimezone=UTC”
7. 升级第一CloudStack管理服务器(如果有多个管理服务器)
8. 更新管理程序特定的依赖项。就是升级cloudstack-agent及其依赖
9. 重新启动第一管理服务器
10. 检查升级后的环境是否正常工作。
11. 升级并重新启动其余的管理服务器
           
1. 检查 插件,第三方工具等。。。如 定制的CSS,插件,第三方整合等。。。最好升级前验证升级后是否可用
2.下载 4.14.0 的系统模板。。。不同的 虚拟机管理程序下载不同的模板。 如个人使用的KVM

名称:systemvm-kvm-4.14.0

描述:systemvm-kvm-4.14.0

URL:Http://download.cloudstack.org/systemvm/4.14/systemvmtemplate-4.14.0-kvm.qcow2.bz2

Zone:选择使用此hypervisor的区域

管理程序:KVM

格式:QCOW 2

操作系统类型:DebianGNU/Linux7.0(64位)(或下拉列表中提供的最高Debian发行号)

可提取性:否

启用密码:否

公众:不

特色:否

路由:否

CentOS7 安装CloudStack4.14.0

确认成功后继续。。。可能下载时间挺长的,网速不好的话。

3. 配置Java 版本为 Java 11
alternatives --config java
           

不过如果此前安装的是4.13.1 及之前版本,可能是是没有安装JAVA 11的。。。也就无法选择只能等到升级安装包4.14.0后们才能执行这一步

4. 停止管理服务器和 usage 服务器(如果有)
systemctl stop cloudstack-management
           
systemctl stop cloudstack-usage
           
5. 备份数据库。以便升级失败后 重新 恢复现有环境
mysqldump -u root -p -R cloud > cloud-backup_`date +%Y-%m-%d`.sql
mysqldump -u root -p cloud_usage > cloud_usage-backup_`date +%Y-%m-%d`.sql
           
6. 4.14.0 开始显式配置时区。。

编辑/etc/cloudstack/management/db.properties 文件

vim /etc/cloudstack/management/db.properties
           
db.cloud.url.params=prepStmtCacheSize=517&cachePrepStmts=true&sessionVariables=sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'&serverTimezone=UTC
db.usage.url.params=serverTimezone=UTC
           
7. 更改cloudstack源 为4.14后。升级 management
vi /etc/yum.repos.d/cloudstack.repo
           
[cloudstack]
name=cloudstack
baseurl=http://cloudstack.apt-get.eu/centos7/4.14/
enabled=1
gpgcheck=0
           
yum upgrade cloudstack-management
           

升级后别忘 设置 Java版本 为 Java 11

alternatives --config java
           

如果使用了 usage服务器 ,也要升级

yum -y upgrade cloudstack-usage
           
8. 更改cloudstack源 为4.14后。升级 agent。 4.14.0 的 KVM依赖epel python36-libvirt

更换4.14.0 源

vi /etc/yum.repos.d/cloudstack.repo
           
[cloudstack]
name=cloudstack
baseurl=http://cloudstack.apt-get.eu/centos7/4.14/
enabled=1
gpgcheck=0
           

安装agent 及依赖

yum install -y epel-release
yum install -y python36-libvirt
yum -y upgrade cloudstack-agent
           

不忘也设置 JAVA 版本

alternatives --config java
           

重新启动 agent

systemctl stop cloudstack-agent 
systemctl start cloudstack-agent 	
           
9. 重新启动 管理服务器
systemctl restart cloudstack-management
           
10. 手动重启 系统虚拟机 和路由器。。。重启后再次重启 管理服务器
CentOS7 安装CloudStack4.14.0

如果 不管用。销毁然后等待自动重新生成。。。或者可能就需要使用脚本cloudstack-sysvmadm

通过使用“integration.api.port”全局参数,确保管理端口设置为8096。此端口由升级过程末尾的CloudStack-sysvmadm脚本使用.

CentOS7 安装CloudStack4.14.0

如果您从管理服务器外部运行CloudStack-sysvmadm脚本,请确保本地主机防火墙中打开了端口8096。

警告

绝不允许从公共互联网访问端口8096!管理服务器不需要在此端口上进行身份验证就接受API调用,这可能会带来严重的安全风险。

有一个脚本可以帮您完成这个任务,您所需要做的就是运行脚本并为MySQL实例和MySQL凭据提供IP地址:

可以监视日志的进度。重新启动系统VM的过程可能需要一个小时或更长时间。

tail -f sysvm.log
           

输出到sysvm.log看起来会是这样的:

Stopping and starting 1 secondary storage vm(s)...
Done stopping and starting secondary storage vm(s)
Stopping and starting 1 console proxy vm(s)...
Done stopping and starting console proxy vm(s).
Stopping and starting 4 running routing vm(s)...
Done restarting router(s).
           

升级过程完成后,可以通过将“integration.api.port”设置为0,再次禁用未经身份验证的API访问。

CentOS7 安装CloudStack4.14.0

不要忘记重新启动管理服务器。

继续阅读