jjzjj

CloudStack 4.17 安装部署

旅途丶 2023-04-08 原文

市面上cloudstack大多部署教程都比较旧,这里写一篇最新版本的部署安装教程(4.17),为了方便解释相关配置以及进行相关配置,本篇会把管理节点和计算节点分开写
1.管理节点部署(admin)
管理节点ip:192.168.1.11/24–hk.admin
计算节点ip:192.168.1.12/24–hk.node1–需要开启虚拟化功能(VT)
NFS节点ip:192.168.1.13/24–hk.nfs.node1
注意:管理节点、计算节点路由可达即可,两者是通过ssh端口(22)来通信,NFS节点(主存储用NFS)必须要放到距离计算节点最近最优的地方,可以不为同一个局域网,但时延最好不要超过10ms,主存储可以是本地存储,二级存储必须为NFS或者为可选里面的任意一个,主存储是放到计算节点上面的(如果主存储也是NFS,即主存储是挂载到计算节点上),二级存储都是挂载到管理节点上,主要是用于存放一些模板、镜像之类的数据,主存储主要是存放用户磁盘数据,本篇主存储和二级存储都采用NFS(大型公有云建设建议接入性能更好的ceph块存储,ceph安装配置请参考https://blog.csdn.net/weixin_43838503/article/details/122251323)

操作系统:centos7.9 最小安装
内核版本:建议升级到5.x
如果要升级内核版本置5.x,请执行以下命令

yum -y install http://mirror.cloud.idcsmart.com/cloud/kernel/5.4.166/kernel-lt-5.4.166-1.el7.elrepo.x86_64.rpm
grub2-set-default 'CentOS Linux (5.4.166-1.el7.elrepo.x86_64) 7 (Core)'
reboot

开始安装管理节点(192.168.1.11)
基础环境准备

hostnamectl set-hostname hk.admin
yum -y update
yum -y install bash-c* vim net-tools wget lrzsz
systemctl stop firewalld
systemctl disable firewalld
vim /etc/selinux/config
SELINUX=disabled
reboot

主机解析配置

echo 192.168.1.11 hk.admin >>/etc/hosts
echo 192.168.1.12 hk.node1 >>/etc/hosts

配置epel

yum -y install epel*
yum clean all
yum makecache

时间同步设置

timedatectl set-timezone  Asia/Shanghai
yum -y install chrony
vim /etc/chrony.conf
将以下内容
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst
替换成
server ntp1.aliyun.com iburst
server ntp2.aliyun.com iburst
server ntp3.aliyun.com iburst
server ntp4.aliyun.com iburst
重启服务
systemctl restart chronyd

NFS配置(192.168.1.13)
配置主存储、二级存储

yum -y update
yum -y install bash-c* vim net-tools wget lrzsz
systemctl stop firewalld
systemctl disable firewalld
vim /etc/selinux/config
SELINUX=disabled
reboot

yum -y install epel-release
yum install -y rpcbind nfs-utils
mkdir -p /data/hk.nfs.node1.secondary
mkdir -p /data/hk.nfs.node1.primary
vim /etc/exports
/data/hk.nfs.node1.secondary  192.168.1.11(rw,no_root_squash,sync)
/data/hk.nfs.node1.primary    192.168.1.12(rw,no_root_squash,sync)

systemctl start rpcbind.service
systemctl start nfs.service
systemctl enable rpcbind.service
systemctl enable nfs.service

回到管理节点,先挂载二级存储到管理节点,给后面导入系统模板用
**注意:**建议后面每添加一个二级存储都先手动挂载到管理节点后执行一下导入系统模板命令,否则可能会导致添加完资源域后二级存储显示为0,具体命令在后文会介绍

yum install -y rpcbind nfs-utils
mkdir -p /data/hk.node1.secondary

测试到服务器端存储目录可访问性
showmount -e 192.168.1.13
输出结果为NFS服务器上配置的一致即可

挂载:
mount -t nfs 192.168.1.13:/data/hk.nfs.node1.secondary /data/hk.node1.secondary

开机自动挂载
vim /etc/fstab
192.168.1.13:/data/hk.nfs.node1.secondary      /data/hk.node1.secondary	   nfs     defaults        0 0


开始mysql配置
可以单独安装mysql,我这里为了节约时间,使用yum一键安装

yum -y install mariadb-server mariadb
在mysqld模块下引入
vim /etc/my.cnf
innodb_rollback_on_timeout=1
innodb_lock_wait_timeout=600
max_connections=350 #这个值通常是管理节点个数*350
log-bin=mysql-bin
binlog-format = 'ROW'
bind-address = 0.0.0.0

启动数据库
systemctl start mariadb
systemctl enable mariadb

数据库初始化安全配置
mysql_secure_installation
如果看不懂英文,请翻译确认一下是什么意思再回车,基本都是默认,禁止root登陆那一项选no就行

授权root远程登陆权限(密码12345678,测试使用,生产环境请更改为安全度更高的复杂密码)
mysql -uroot -p12345678 -e "GRANT ALL PRIVILEGES ON *.* TO root@'%' IDENTIFIED BY '12345678' WITH GRANT OPTION";

开始安装cloudstack管理节点
安装源配置,这里采用在线安装,如果网速慢,请先下载到本地再安装

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

yum clean all
yum makecache
yum -y install cloudstack-management
cloudstack数据库初始化
cloudstack-setup-databases cloud:12345678@localhost --deploy-as=root:12345678

启动cloudstack
cloudstack-setup-management

访问测试,默认账号admin、默认密码password
http://192.168.1.11:8080

安装系统模板到二级存储

/usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /data/hk.nfs.node1.secondary/ -u http://cloudstack.apt-get.eu/systemvm/4.17/systemvmtemplate-4.17.0-kvm.qcow2.bz2 -h kvm -F

重启cloudstack
systemctl restart cloudstack-management

日志查看
tail -f /var/log/cloudstack/management/management-server.log

开始安装计算节点(192.168.1.12)
基础环境配置

hostnamectl set-hostname hk.node1
echo 192.168.1.11 hk.admin >>/etc/hosts
echo 192.168.1.12 hk.node1 >>/etc/hosts
yum -y update
yum -y install bash-c* vim net-tools wget lrzsz
systemctl stop firewalld
systemctl disable firewalld
vim /etc/selinux/config
SELINUX=disabled
reboot

epel安装

yum -y install epel*
yum clean all
yum makecache

时间同步设置

timedatectl set-timezone  Asia/Shanghai
yum -y install chrony
vim /etc/chrony.conf
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst
替换成
server ntp1.aliyun.com iburst
server ntp2.aliyun.com iburst
server ntp3.aliyun.com iburst
server ntp4.aliyun.com iburst
重启
systemctl restart chronyd

NFS配置

管理节点和计算节点通信后会自动挂载主存储,这里无需手动挂载

网络配置
对应的网卡名字和ip地址请大家按自己配置的填写

yum -y install net-tools bridge-utils
vim /etc/sysconfig/network-scripts/ifcfg-cloudbr0
TYPE=Bridge
BOOTPROTO=none
DEVICE=cloudbr0
ONBOOT=yes
IPV6INIT=no
IPV6_AUTOCONF=no
DELAY=5
IPADDR=192.168.1.12
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
STP=yes

vi /etc/sysconfig/network-scripts/ifcfg-ens192
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
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="ens192"
DEVICE="ens192"
ONBOOT="yes"
HOTPLUG=no
BRIDGE=cloudbr0

systemctl restart network

开始安装cloudstack计算节点
安装源配置

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

yum clean all
yum makecache
yum -y install cloudstack-agent

配置KVM基本环境

编辑QEMU VNC配置文件/etc/libvirt/qemu.conf
vim /etc/libvirt/qemu.conf
去掉注释
vnc_listen="0.0.0.0"

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"

systemctl restart libvirtd
systemctl enable libvirtd

加载kvm模块,注意,确保计算节点的cpu虚拟化功能有开启
modprobe kvm
lsmod | grep kvm

登陆cloudstack修改全局设置
这里需要修改一些default配置,例如cpu超频、镜像下载站点网络授权等
为了方便大家查看设置,以下以图片的形式为主


cpu超倍:cpu.overprovisioning

ISO镜像下载授权配置,这里按实际所需配置,我这里授权的是允许所有网络访问下载

重启管理节点服务,让全局设置生效

systemctl restart cloudstack-management

添加第一个zone(资源域),相关概念不在介绍
注意:如果是虚拟机环境,先把管理节点、计算节点、NFS节点先快照一份,最新版本添加资源域问题较多,以便把配置好的环境快速还原,另外,cloudstack4.17版本创建资源域的时候,网络部分先不要选高级,对于新手来说,选这个就意味着资源域会创建失败,因为高级网络部分还需要一些其他配置,这里不作介绍,后面会单独出一篇或者续写一下高级网络部分和NAT部分



这里需要注意的是,流量类型是指对应的计算节点桥接的网卡名称,不能写错,前文网络部分有写明桥接网卡名称,我这里管理网络和来宾网络都是cloudbr0

以下配置简单说明一下,提供点名称自行填写就好,但最好有个命名规范,系统预留ip是指这些ip是给系统VM用的,最少需要3个,一般预留2个,5个即可,系统VM的ip段可以不与接下来要配置的来宾ip段一样,但是这两者必须要路由可达,即两者要能互通,我建议用同一个地址段,系统VM不需要占用太多ip,关于系统VM的概念,请参考cloudstack相关文档,这里不在介绍

来宾网段指的是给客户虚拟机使用的ip,不管是公网ip还是私网ip做的nat,如果客户有互联网的需求,这段地址必须要能上网


添加主机建议直接填写root账户,如果是其它账户,请参考cloudstack相关文档进行配置



开始执行以上配置任务,添加主机不出问题,基本就ok了



这样就ok了,主要看能不能读到二级存储,能读到就说明安装成功,如果发现读不到,二级存储显示为0,请检查以上步骤是否有遗漏,或者在执行一次系统模板安装命令,再重启管理节点,若以上操作都不行,看一下系统VM状态,首次创建资源域的时候,会创建两台系统VM,一台是给访问实例控制台用,一台是给二级存储代理用,这两台VM状态必须要为正在运行和up为绿色,如果是灰色,控制台或者二级存储肯定不能访问,这是acs的第一个门槛,80%的人会遇到,这个是日志目录/var/log/cloud.log,需要登陆进二级存储系统VM,密码是password, 如图

关于系统模板、iso镜像制作都比较简单,大家去搜索一下就懂了,这里不在单独写了

有关CloudStack 4.17 安装部署的更多相关文章

  1. ruby - 在 64 位 Snow Leopard 上使用 rvm、postgres 9.0、ruby 1.9.2-p136 安装 pg gem 时出现问题 - 2

    我想为Heroku构建一个Rails3应用程序。他们使用Postgres作为他们的数据库,所以我通过MacPorts安装了postgres9.0。现在我需要一个postgresgem并且共识是出于性能原因你想要pggem。但是我对我得到的错误感到非常困惑当我尝试在rvm下通过geminstall安装pg时。我已经非常明确地指定了所有postgres目录的位置可以找到但仍然无法完成安装:$envARCHFLAGS='-archx86_64'geminstallpg--\--with-pg-config=/opt/local/var/db/postgresql90/defaultdb/po

  2. ruby - 完全离线安装RVM - 2

    我打算为ruby​​脚本创建一个安装程序,但我希望能够确保机器安装了RVM。有没有一种方法可以完全离线安装RVM并且不引人注目(通过不引人注目,就像创建一个可以做所有事情的脚本而不是要求用户向他们的bash_profile或bashrc添加一些东西)我不是要脚本本身,只是一个关于如何走这条路的快速指针(如果可能的话)。我们还研究了这个很有帮助的问题:RVM-isthereawayforsimpleofflineinstall?但有点误导,因为答案只向我们展示了如何离线在RVM中安装ruby。我们需要能够离线安装RVM本身,并查看脚本https://raw.github.com/wayn

  3. ruby-on-rails - rails 目前在重启后没有安装 - 2

    我有一个奇怪的问题:我在rvm上安装了ruby​​onrails。一切正常,我可以创建项目。但是在我输入“railsnew”时重新启动后,我有“程序'rails'当前未安装。”。SystemUbuntu12.04ruby-v"1.9.3p194"gemlistactionmailer(3.2.5)actionpack(3.2.5)activemodel(3.2.5)activerecord(3.2.5)activeresource(3.2.5)activesupport(3.2.5)arel(3.0.2)builder(3.0.0)bundler(1.1.4)coffee-rails(

  4. ruby - 如何为 emacs 安装 ruby​​-mode - 2

    我刚刚为fedora安装了emacs。我想用emacs编写ruby。为ruby​​提供代码提示、代码完成类型功能所需的工具、扩展是什么? 最佳答案 ruby-mode已经包含在Emacs23之后的版本中。不过,它也可以通过ELPA获得。您可能感兴趣的其他一些事情是集成RVM、feature-mode(Cucumber)、rspec-mode、ruby-electric、inf-ruby、rinari(用于Rails)等。这是我当前用于Ruby开发的Emacs配置:https://github.com/citizen428/emacs

  5. ruby-on-rails - 无法在centos上安装therubyracer(V8和GCC出错) - 2

    我正在尝试在我的centos服务器上安装therubyracer,但遇到了麻烦。$geminstalltherubyracerBuildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingtherubyracer:ERROR:Failedtobuildgemnativeextension./usr/local/rvm/rubies/ruby-1.9.3-p125/bin/rubyextconf.rbcheckingformain()in-lpthread...yescheckingforv8.h...no***e

  6. ruby - 通过 RVM (OSX Mountain Lion) 安装 Ruby 2.0.0-p247 时遇到问题 - 2

    我的最终目标是安装当前版本的RubyonRails。我在OSXMountainLion上运行。到目前为止,这是我的过程:已安装的RVM$\curl-Lhttps://get.rvm.io|bash-sstable检查已知(我假设已批准)安装$rvmlistknown我看到当前的稳定版本可用[ruby-]2.0.0[-p247]输入命令安装$rvminstall2.0.0-p247注意:我也试过这些安装命令$rvminstallruby-2.0.0-p247$rvminstallruby=2.0.0-p247我很快就无处可去了。结果:$rvminstall2.0.0-p247Search

  7. ruby - 如何在 Lion 上安装 Xcode 4.6,需要用 RVM 升级 ruby - 2

    我实际上是在尝试使用RVM在我的OSX10.7.5上更新ruby,并在输入以下命令后:rvminstallruby我得到了以下回复:Searchingforbinaryrubies,thismighttakesometime.Checkingrequirementsforosx.Installingrequirementsforosx.Updatingsystem.......Errorrunning'requirements_osx_brew_update_systemruby-2.0.0-p247',pleaseread/Users/username/.rvm/log/138121

  8. ruby - Fast-stemmer 安装问题 - 2

    由于fast-stemmer的问题,我很难安装我想要的任何ruby​​gem。我把我得到的错误放在下面。Buildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingfast-stemmer:ERROR:Failedtobuildgemnativeextension./System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/rubyextconf.rbcreatingMakefilemake"DESTDIR="cleanmake"DESTDIR=

  9. ruby-on-rails - 每次我尝试部署时,我都会得到 - (gcloud.preview.app.deploy) 错误响应 : [4] DEADLINE_EXCEEDED - 2

    我是Google云的新手,我正在尝试对其进行首次部署。我的第一个部署是RubyonRails项目。我基本上是在关注thisguideinthegoogleclouddocumentation.唯一的区别是我使用的是我自己的项目,而不是他们提供的“helloworld”项目。这是我的app.yaml文件runtime:customvm:trueentrypoint:bundleexecrackup-p8080-Eproductionconfig.ruresources:cpu:0.5memory_gb:1.3disk_size_gb:10当我转到我的项目目录并运行gcloudprevie

  10. ruby - 安装 Ruby 时遇到问题(无法下载资源 "readline--patch") - 2

    当我尝试安装Ruby时遇到此错误。我试过查看this和this但无济于事➜~brewinstallrubyWarning:YouareusingOSX10.12.Wedonotprovidesupportforthispre-releaseversion.Youmayencounterbuildfailuresorotherbreakages.Pleasecreatepull-requestsinsteadoffilingissues.==>Installingdependenciesforruby:readline,libyaml,makedepend==>Installingrub

随机推荐