CloudStack安装笔记
前些天安装CloudStack记录的一些笔记,在此记录一下
查看当前CentOS版本(适用于RedHat,CentOS)
cat /etc/redhat-release
如果是CentOS6 可能需要安装epel-release再安装tmux
准备好网络连接后安装常用组件,个人偏爱这个,只是体积有点大,看来得需要适应自带的vi
yum install -y emacs
同步时间
yum install -y ntpdate
可以用以下命令查看时区设置
date -R
进行时间同步
ntpdate cn.pool.ntp.org
也可以用阿里的服务器
ntpdate ntp1.aliyun.com
Centos7默认已带openssh,要使用netstat等命令需要安装net-tools
yum install -y net-tools
在CentOS7里更改主机名用hostnamectl
hostnamtctl set-hostname cloud1
重新登录有效
关闭防火墙
systemctl start firewalld.service
systemctl stop firewalld.service
systemctl disable firewalld.service //禁止开机启动
安装MySQL
使用wget下载yum源
yum install -y wget
wget https://repo.mysql.com//mysql80-community-release-el7-1.noarch.rpm
yum localinstall mysql80-community-release-el7-1.noarch.rpm
查看配置源中与mysql相关的软件包
yum repolist all |grep mysql
默认使用mysql80,如果需要指定安装mysql57则需要进行如下配置
yum install -y yum-utils
yum-config-manager --disable mysql80-community
yum-config-manager --enable mysql57-community
yum install mysql-community-server
修改/etc/my.cnf中的参数[mysqld]
innodb_rollback_on_timeout=1
innodb_lock_wait_timeout=600
max_connections=350
log-bin=mysql-bin
binlog-format = 'ROW'
启动服务
service mysqld start
查看服务状态
service mysqld status
查看当前开放端口信息
netstat -ntlp
安装好mysql后,默认密码在/var/log/mysqld.log里
grep 'password' /var/log/mysqld.log
登录后修改root密码
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'rootpwd';
为Mysql创建用户,新版mysql使用了密码策略,简单密码会报错,当然也可以修改密码策略
CREATE USER 'admin'@'%' IDENTIFIED BY 'admin';
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' WITH GRANT OPTION;
如果是mysql80,需要使用mysql_native_password才能用远程登录
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'rootpwd';
要从远程登录mysql需要关闭CentOS7防火墙
systemctl stop firewalld.service
导入 GPG public key,并安装connector
rpm --import http://repo.mysql.com/RPM-GPG-KEY-mysql
yum install mysql-connector-python
安装cloudstack-management
yum -y install cloudstack-management
初始化cloudstack数据库
cloudstack-setup-databases cloud:password@localhost --deploy-as=root:rootpwd
文档中没有加root密码,如果设置root默认登录可以,应该可以不用写密码(推测,未测试)
修改/etc/libvirt/qemu.conf 时,要加双引号,否则会无法启动libvirtd
vnc_listen=“0.0.0.0”
修改/etc/libvirt/libvirtd.conf 时需要注意文件名,有一个libvirt.conf,还有一个libvirtd.conf,修改内容如下
listen_tls = 0
listen_tcp = 1
tcp_port = "16509"
auth_tcp = "none"
mdns_adv = 0
官网上的tcp_port为16059,我在配置文件里看到注释掉的内容为16509,就配置成了16509了
安装cloudstack-agent并初始化cloudstack-agent
yum -y install cloudstack-agent
cloudstack-setup-agent
client的agent无法启动
service cloudstack-agent status
或用
systemctl status cloudstack-agent
都可以检查服务运行状态
查看日志/var/log/cloudstack/agent/agent.log发现有如下错误
Unable to start agent: Failed to get private nic name
agent在启动时,默认会创建cloudbr0和cloudbr1两个网桥
如果想修改为其它名字,那么需要在配置文件/etc/cloudstack/agent/agent.properties里指定修改两面两个参数
private.network.device
public.network.device
因在配置网络地址里配置的文件为
/etc/sysconfig/network-scripts/ifcfg-eno1
所以修改上述文件内容为
private.network.device=eno1
public.network.device=eno1
还修改了host
host=<server ip or name>
网上查到如果出现Failed to create vnet
是尝试创建高级网络时出现异常,需要安装vconfig程序
yum install vconfig
这个问题目前还未发现