侧边栏壁纸
  • 累计撰写 30 篇文章
  • 累计创建 3 个标签
  • 累计收到 4 条评论
标签搜索

目 录CONTENT

文章目录

Cloudstack4.19部署

小裴
2024-04-26 / 0 评论 / 2 点赞 / 399 阅读 / 1,960 字

Cloudstack

OpenStack是目前最大和最活跃的开源云计算项目,OpenStack已经获得了很多的支持,包括很多大牌厂商,例如Rackspace、戴尔、惠普、思科、VMware和红帽等。与此同时,另外一个开源云计算项目CloudStack也正迅猛的增长,对OpenStack发起挑战,目前主要受到思杰(Citrix)和其他较小厂商的支持。

CloudStack是一个开源的具有高可用性及扩展性的云计算平台。2012年4月Ctrtix宣布将CloudStack加入Apache软件基金会,成为Apache许可下的完全开源软件。可以加速高伸缩性的公共和私有云(基础设施即服务)的部署、管理、配置。提到开源的云计算平台,相信大家首先想到的可能是OpenStack,目前国内的几家云计算平台如阿里云、盛大云以及新浪SAE貌似都基于OpenStack做了二次开发。OpenStack由NASA和Rackspace合作研发的的云计算平台,以Apache许可证授权,旨在为公有云及私有云的建设与管理提供软件的自由软件和开源项目。同时兼容亚马逊AWSAPI 接口,可用来管理AWS的资源。

如何选择cloudstack 一个考虑的点:

如果公司是偏向于项目集成的,并不想在底层做太多的投入,只希望有一个稳定的底层,自己根据用户的业务场景进行二次开发,那么CloudStack 很适合你。CloudStack的底层功能已经做的很完善了,目前CloudStack的落地项目很多,功能和稳定性上更适合商用。国内的公司只需要做一些界面的开发,结合客户的业务做一些定制即可。相对来说,开发难度低很多。国内的java程序员要比python程序员多很多,招人也方便。

OpenStack和CloudStack虽然都对VMware的ESXi虚拟化技术提供支持,但支持方式是不一样的,如图所示。CloudStack要经过vCenter才可以实现对ESXi宿主机上虚拟机的管理;而OpenStack支持直接和ESXi通信,实现对虚拟机的基本管理,只有高级功能才需要vCenter的支持。针对目前中小企业普遍采用VMware的免费虚拟化技术而没有vCenter的现状,这也是在平台选择时需要考虑的。

准备

使用 CentOS 7.9.2009

节点 主机名 配置
192.168.1.111 cloudone 8G_2V_单网卡
192.168.1.112 cloudwo 8G_2V_单网卡
192.168.1.115 nfs 1G_1V_单网卡

使用阿里源

[root@localhost ~]# rm -rf /etc/yum.repos.d/*
[root@localhost ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
[root@localhost ~]# yum install wget -y 
[root@localhost ~]# wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo

在开始之前更新系统:
都执行

[root@localhost ~]# yum -y upgrade
主
[root@localhost ~]# hostnamectl set-hostname cloudone
[root@cloudone ~]# bash
从
[root@localhost ~]# hostnamectl set-hostname cloudtwo
[root@cloudtwo ~]# bash
两台主机
都添加
[root@cloudone ~]# vi /etc/hosts
192.168.1.111 cloudone
192.168.1.112 cloudtwo                        

关闭selinux和防火墙

[root@localhost ~]# setenforce 0 ; systemctl stop firewalld ; systemctl disable firewalld 
[root@localhost ~]# vi /etc/selinux/config 
修改
SELINUX=disabled

安装时钟服务器同步

[root@cloudone ~]# yum install chrony -y 
[root@cloudtwo ~]# yum install chrony -y
cloudone:
[root@cloudone ~]# vi /etc/chrony.conf 
注释掉server开头的
#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 cloudone iburst
# Allow NTP client access from local network. 修改
allow 192.168.1.0/24

# Serve time even if not synchronized to a time source. 修改
local stratum 10
[root@cloudtone ~]# systemctl enable chronyd --now


cloudtwo节点:
[root@cloudtwo ~]# vi /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 cloudtwo iburst
[root@cloudtwo ~]# systemctl enable chronyd --now

2个节点都配置CloudStack软件包存储库

[root@cloudtwo ~]# vi /etc/yum.repos.d/1.repo 
[cloudstack]
name=cloudstack
baseurl=http://download.cloudstack.org/centos/$releasever/4.19/
enabled=1
gpgcheck=0

FNS节点

[root@localhost ~]#  yum -y install nfs-utils
注意一下,其他两个节点都创建这2个目录
[root@localhost ~]# mkdir -p /export/primary
[root@localhost ~]# mkdir /export/secondary
[root@localhost ~]# vi /etc/exports
/export/secondary *(rw,async,no_root_squash,no_subtree_check)
/export/primary *(rw,async,no_root_squash,no_subtree_check)
[root@localhost ~]# systemctl restart rpcbind.service
[root@localhost ~]# systemctl restart nfs.service
[root@localhost ~]# systemctl enable rpcbind.service
[root@localhost ~]# systemctl enable nfs.service

主节点配置

数据库安装和配置

yum -y install wget
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum -y install mysql-server

需要对 /etc/my.cnf 文件修改添加

innodb_rollback_on_timeout=1
innodb_lock_wait_timeout=600
max_connections=350
log-bin=mysql-bin
binlog-format = 'ROW'

启动

systemctl enable mysqld
systemctl start mysqld

数据库初始化安全配置

mysql_secure_installation
如果看不懂英文,请翻译确认一下是什么意思再回车,基本都是默认,禁止root登陆那一项选no就行
授权root远程登陆权限
mysql -uroot -p000000 -e "GRANT ALL PRIVILEGES ON *.* TO root@'%' IDENTIFIED BY '000000' WITH GRANT OPTION";

安装管理服务器

yum -y install cloudstack-management

cloudstack数据库初始化

cloudstack-setup-databases cloud:000000@localhost --deploy-as=root:000000
启动cloudstack
cloudstack-setup-management

系统模板设置
CloudStack使用许多系统虚拟机来提供访问的功能。 实例控制台,提供各种联网服务,以及 管理存储的各个方面。
我们需要下载 systemVM 模板并将其部署到辅助存储。 我们将使用本地路径 (/export/secondary),因为我们已经在 NFS 服务器本身上, 但否则,您需要将辅助存储挂载到临时挂载点,然后使用 该挂载点,而不是 /export/secondary 路径。
执行以下脚本:

/usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /export/secondary -u http://download.cloudstack.org/systemvm/4.19/systemvmtemplate-4.19.0-kvm.qcow2.bz2 -h kvm -F

重启cloudstack

systemctl restart cloudstack-management

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

从节点配置

确保“bridge-utils”和“net-tools”已安装且可用:

[root@localhost ~]# yum install bridge-utils net-tools -y

创建并打开 /etc/sysconfig/network-scripts/ifcfg-cloudbr0

[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-cloudbr0
DEVICE=cloudbr0
TYPE=Bridge
ONBOOT=yes
BOOTPROTO=static
IPV6INIT=no
IPV6_AUTOCONF=no
DELAY=5
IPADDR=192.168.1.112 #(or e.g. 192.168.1.2)
GATEWAY=192.168.1.1 #(or e.g. 192.168.1.1 - this would be your physical/home router)
NETMASK=255.255.255.0
DNS1=192.168.1.1
STP=yes
USERCTL=no
NM_CONTROLLED=no
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=yes
NAME=eth0
DEVICE=eth0
ONBOOT=yes
BRIDGE=cloudbr0
[root@localhost ~]# systemctl disable NetworkManager; systemctl stop NetworkManager
Removed symlink /etc/systemd/system/multi-user.target.wants/NetworkManager.service.
Removed symlink /etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service.
Removed symlink /etc/systemd/system/network-online.target.wants/NetworkManager-wait-online.service.
[root@localhost ~]# systemctl enable network
network.service is not a native service, redirecting to /sbin/chkconfig.
Executing /sbin/chkconfig network on
[root@localhost ~]# reboot

安装cloudstack-agent

yum -y install cloudstack-agent

QEMU 配置

vi /etc/libvirt/qemu.conf
vnc_listen=0.0.0.0

Libvirt 配置

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"
重新启动 libvirt
systemctl restart libvirtd

KVM配置完成
为了完整起见,您应该检查 KVM 是否在您的 机器(您应该看到kvm_intel或kvm_amd模块显示为已加载):

lsmod | grep kvm
kvm_intel              55496  0
kvm                   337772  1 kvm_intel
kvm_amd # if you are in AMD cpu

UI 访问
要访问CloudStack的Web界面,只需将浏览器指向 您机器的 IP 地址,例如 http://192.168.1.111:8080/client 默认用户名为“admin”,默认密码为“password”。
设置区域
区域是CloudStack中最大的组织实体
在UI中添加

2

评论区