• CloudStack 4.17 安装部署


    市面上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
    
    • 1
    • 2
    • 3

    开始安装管理节点(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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    主机解析配置

    echo 192.168.1.11 hk.admin >>/etc/hosts
    echo 192.168.1.12 hk.node1 >>/etc/hosts
    
    • 1
    • 2

    配置epel

    yum -y install epel*
    yum clean all
    yum makecache
    
    • 1
    • 2
    • 3

    时间同步设置

    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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    回到管理节点,先挂载二级存储到管理节点,给后面导入系统模板用
    **注意:**建议后面每添加一个二级存储都先手动挂载到管理节点后执行一下导入系统模板命令,否则可能会导致添加完资源域后二级存储显示为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
    
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    开始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";
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21

    开始安装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
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    访问测试,默认账号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
    
    
    • 1
    • 2

    重启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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    epel安装

    yum -y install epel*
    yum clean all
    yum makecache
    
    • 1
    • 2
    • 3

    时间同步设置

    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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    NFS配置

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

    网络配置
    对应的网卡名字和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
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35

    开始安装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
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    配置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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24

    登陆cloudstack修改全局设置
    这里需要修改一些default配置,例如cpu超频、镜像下载站点网络授权等
    为了方便大家查看设置,以下以图片的形式为主
    在这里插入图片描述
    在这里插入图片描述
    cpu超倍:cpu.overprovisioning
    在这里插入图片描述
    ISO镜像下载授权配置,这里按实际所需配置,我这里授权的是允许所有网络访问下载
    在这里插入图片描述

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

    systemctl restart cloudstack-management
    
    • 1

    添加第一个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镜像制作都比较简单,大家去搜索一下就懂了,这里不在单独写了

  • 相关阅读:
    分页文件pagefile.sys引出的疑问
    3年半测试经验,20K我都没有,看来是时候跳槽了...
    SLAM中的李群和李代数
    攻防世界-adworld-fileinclude
    【linux】环境基础开发工具使用
    Xcode应用安全堡垒:全方位安全性测试指南
    带你了解树的全家桶(BST树到AVL树到B树到B+树)
    C++类构造函数和析构函数
    ToBeWritten之记录狩猎过程
    【Reinforcement Learning】Ubuntu中mujoco210 mujoco_py D4RL安装及错误解决
  • 原文地址:https://blog.csdn.net/weixin_43838503/article/details/127549883