CloudStack的创建

article/2025/9/9 21:46:23

安装虚拟机

  1. 创建节点

    准备两台VMware Workstations虚拟机进行基本设置,一台作为manager管理节点,一台作为agent计算节点。网络适配器选择NAT模式。
    配置:

    • manager节点需有2G内存
    • agent节点需有4G内存(虚拟机是运行于计算节点上的,所以内存需要多些)

    在安装的最后一步需要在自定义硬件中勾选虚拟化VT选项。
    在这里插入图片描述
    在这里插入图片描述

  2. 网络配置

    安装完成启动后,需要修改网卡配置文件

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

    修改配置项为ONBOOT=YES,保存后退出(Esc+:wq)
    重启网络服务

    systemctl restart network
    

    重启后使用命令ip addr查看虚拟机ip地址。
    在这里插入图片描述
    获取到ip后使用xshell连接
    在这里插入图片描述

  3. 升级系统

    使用centos最小版本安装,需升级系统版本以及所有包。

    yum -y upgrade
    

基本设置

【两个节点都需要完成,可以先完成一个节点后另一个节点使用克隆得到】

  1. 安装常用软件

    yum install vim -y
    yum install lrzsz -y
    yum install epel* -y 
    

    vim为常用文本编辑器,lrzsz用于本地windows系统与虚拟机之间的文件上传下载。epel为CentOS提供额外的软件包。cloudstack软件很多依赖包都要通过epel安装,因此一定要安装epel。

    重建本地仓库缓存

    yum clean all && yum makecache
    
  2. 设置主机名
    主机名设置的配置文件位于/etc/hostname,使用命令

    vi /etc/hostname 
    

    使用快捷键dd删除原有内容,还用a/i/o进入编辑模式,修改内容并保存。

    manager 节点主机名: manager.ly.cloud
    agent 节点主机名: agent.ly.cloud

    修改后需重新启动reboot才能生效。
    修改后效果

  3. 设置IP
    设置静态IP:

    manager节点: 192.168.239.154
    agent 节点: 192.168.239.155

    这里设置的IP即为上面获取到的VMware Workstations分配给虚拟机的IP,需要在网卡文件ifcfg-ens33中写入。

    Manager节点
    vi /etc/sysconfig/network-scripts/ifcfg-ens33 
    

    原有设置不要删除,将BOOTPROTO=dhcp修改为BOOTPROTO=static,改变或新增如下内容:

    IPADDR=192.168.239.154
    NETMASK=255.255.255.0
    GATEWAY=192.168.239.2
    

    IPADDR:要设置的IP,需要注意的是设置的IP需要与网关相对应;
    NETMASK:子网掩码;
    GATEWAY:网关,一般最后一位都为2

    查看网关:
    点击WMware Workstations选项卡,编辑→虚拟网络编辑器
    在这里插入图片描述
    如果在创建虚拟机时选择了NAT模式,选中VMnet8,点击NAT设置可以查看网关
    在这里插入图片描述
    编辑保存后,重启network服务使配置文件生效。

    systemctl restart network
    
    Agent节点

    与Manger节点相同,只是将IP修改为对应的IP

    vi /etc/sysconfig/network-scripts/ifcfg-ens33 
    
    原有设置不要删除,改变或新增如下内容:
    
    IPADDR=192.168.239.155
    NETMASK=255.255.255.0
    GATEWAY=192.168.239.2
    

    编辑保存后,重启network服务使配置文件生效。

    systemctl restart network
    
  4. 修改dns服务器

    vi /etc/resolv.conf
    

    添加文件内容

    search ly.cloud
    nameserver 8.8.8.8
    nameserver 8.8.4.4
    

    8.8.8.8和8.8.4.4 是谷歌提供的两个公共dns服务器

  5. 设置HOST和IP映射
    编辑 /etc/hosts 文件

    vi /etc/hosts
    

    新增以下内容:
    192.168.239.154 manager.ly.cloud
    192.168.239.155 agent.ly.cloud
    修改后可以ping相互的主机测试映射是否成功。

    ping manager.ly.cloud
    
    ping agent.ly.cloud
    
  6. 关闭防火墙
    设置防火墙关闭且开机不启动

    systemctl disable firewalld
    systemctl stop firewalld
    

    设置selinux为permissive模式

    vi /etc/selinux/config 
    

    修改配置项

    SELINUX=permissive
    

    重启后生效
    可以使用getenforce查看当前当前selinux

安装服务

  1. 安装时间同步模块
    安装chrony(默认是已经安装的)

    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
    

    【可以在vim/vi的命令模式下使用快捷键dd删除原有内容后再进行添加】
    修改保存后,重启chronyd

    systemctl restart chronyd
    
  2. NFS服务
    将主存储放在agent计算节点,二级存储放在manager管理节点

    yum -y install nfs-utils
    

    编辑配置文件固定 nfs 服务使用的端口。如果不指明,可能会使用随机端口。可能占用cloudstack所需,因此固定端口。

    vim /etc/sysconfig/nfs
    

    指定端口

    LOCKD_TCPPORT=32803
    LOCKD_UDPPORT=32769
    MOUNTD_PORT=892
    RQUOTAD_PORT=875
    STATD_PORT=662
    STATD_OUTGOING_PORT=2020
    

    可以在vim的命令模式下使用快捷键\进行搜索,找到后去掉前面的#号注释,指定端口。
    启动服务并设置开机启动

    systemctl enable rpcbind
    
    systemctl start rpcbind
    
    systemctl enable nfs
    
    systemctl start nfs
    
    manager节点设置二级存储使用的NFS共享目录

    1). 新增硬盘
    在VMware Workstation的选项卡中选择虚拟机→设置。在弹出的页面中点击添加。
    在这里插入图片描述
    选中硬盘,添加一块20G的硬盘后重启虚拟机reboot
    查看新增硬盘

    fdisk -l
    

    在这里插入图片描述
    2). 新增硬盘为 /dev/sdb,格式化硬盘,建立文件系统格式 ext4

    mkfs.ext4 /dev/sdb
    

    创建挂载点

    mkdir -p /export/secondary
    

    硬盘挂载写入 /etc/fstab 开机挂载

    echo "/dev/sdb  /export/secondary  ext4 defaults 0 0"  >> /etc/fstab
    

    快速挂载 /etc/fstab 中内容

    mount -a
    

    查看文件挂载

    df -h
    

    在这里插入图片描述
    设置共享目录

    vim /etc/exports
    

    添加内容/export/secondary *(rw,async,no_root_squash,no_subtree_check)
    重新导入共享目录配置

    exportfs -a
    

    在agent节点查看manager的共享目录

    showmount -e manager.ly.cloud
    

    在这里插入图片描述

    agent节点设置主存储使用的NFS共享目录

    1). 新增硬盘
    首先与manager节点相同,添加一块20G的硬盘
    2). 格式化硬盘,建立文件系统格式ext4

    mkfs.ext4 /dev/sdb
    

    创建挂载点

    mkdir -p /export/primary
    

    硬盘挂载写入 /etc/fstab 开机挂载

    echo "/dev/sdb  /export/primary  ext4 defaults 0 0"  >> /etc/fstab
    

    快速挂载 /etc/fstab 中内容

    mount -a
    

    设置共享目录

    vim /etc/exports
    

    添加内容/export/primary *(rw,async,no_root_squash,no_subtree_check)
    重新导入共享目录配置

    exportfs -a
    

    manager 节点查看 agent的共享目录

    showmount -e agent.ly.cloud
    

    在这里插入图片描述

  3. MySql服务
    在manager节点安装mariadb
    manager节点执行

    yum -y install mariadb-server mariadb
    

    编辑 mariadb 配置文在[mysqld]模块添加

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

    启动mariadb 并设置为开机启动

    systemctl enable mariadb
    systemctl start mariadb
    

    执行数据库初始化安全操作

    mysql_secure_installation
    

    设置密码,删除无用数据库等,大多是选择默认即可,一般在屏蔽远程连接时选n。初始密码为空,只需要回车即可。可以设定一个新的密码:123456
    在这里插入图片描述
    设置赋予root远程登录权限

    mysql -uroot -p123456 -e "GRANT ALL PRIVILEGES ON *.* TO root@'%' IDENTIFIED BY '123456' WITH GRANT OPTION";
    

安装CloudStack软件

使用本地安装,通过以下三个链接下载yum源至本地安装。
http://cloudstack.apt-get.eu/centos7/4.13/cloudstack-management-4.13.1.0-1.el7.x86_64.rpm
http://cloudstack.apt-get.eu/centos7/4.13/cloudstack-agent-4.13.1.0-1.el7.x86_64.rpm
http://cloudstack.apt-get.eu/centos7/4.13/cloudstack-common-4.13.1.0-1.el7.x86_64.rpm
如果上述的链接下载速度还是慢,可以尝试以下通过ftp服务器下载。
ftp://47.93.5.35/CloudStack/
下载完成后可以通过xshell直接将文件拖入对话黑框中,或是执行rz命令,将rpm文件上传至root的根目录下。其中manager节点需要上传manager包和common包,agent节点需要上传agent包和common包。

manager节点安装CloudStack-Manager
yum -y install cloudstack-common-4.13.1.0-1.el7.x86_64.rpm cloudstack-management-4.13.1.0-1.el7.x86_64.rpm

安装完成后需要初始化数据库,这一步在数据库中创建cloudstack使用的库表,并创建初始数据。 会在mysql中新创建一个 cloud 用户

cloudstack-setup-databases cloud:123456@localhost --deploy-as=root:123456

启动management

cloudstack-setup-management

此时可以在xshell中新建一个与管理节点manager的对话,使用

tail -f /var/log/cloudstack/management/management-server.log

实时监听启动过程中是否存在报错。

安装系统模板到二级存储

这里使用kvm模板,下载至本地安装
下载链接:http://cloudstack.apt-get.eu/systemvm/4.11/systemvmtemplate-4.11.3-kvm.qcow2.bz2
如果下载慢,也可以使用以下的ftp链接进行下载
ftp://47.93.5.35/CloudStack/systemvmtemplate-4.11.3-kvm.qcow2.bz2
下载后也是通过rz将文件上传至root根目录,完成后执行命令

/usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt  \
-m /export/secondary \
-f /root/systemvmtemplate-4.11.3-kvm.qcow2.bz2 \
-h kvm -F
agent节点安装CloudStack-agent
  1. 安装NET-TOOLS 工具,设置网络桥接
    在安装cloudstack之前,要先设置桥接。

    yum -y install net-tools bridge-utils
    

    编辑网卡桥接文件 cloudbr

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

    内容如下,需要根据实际IP和网关进行修改

    TYPE=Bridge
    BOOTPROTO=none
    DEVICE=cloudbr0
    ONBOOT=yes
    IPADDR=192.168.239.155
    NETMASK=255.255.255.0
    GATEWAY=192.168.239.2
    STP=yes
    

    设置网卡文件

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

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

    BRIDGE=cloudbr0
    

    修改后的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=9400b283-bb44-4068-8819-d7c353f56cc3
    DEVICE=ens33
    ONBOOT=yes
    BRIDGE=cloudbr0
    

    重新启动网络服务

    systemctl restart network
    

    查看网桥和路由

    brctl show
    route -n
    

    在这里插入图片描述

  2. 安装CloudStack-agent进行基本设置
    将下载的commonagent的rpm文件上传至agent节点的根目录下后,进行本地安装

    yum -y install cloudstack-common-4.13.1.0-1.el7.x86_64.rpm cloudstack-agent-4.13.1.0-1.el7.x86_64.rpm 
    
  3. 修改相应配置
    1) 编辑QEMU VNC配置文件/etc/libvirt/qemu.conf

    vim /etc/libvirt/qemu.conf
    

    去掉注释

    vnc_listen="0.0.0.0"
    

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

    vim /etc/libvirt/libvirtd.conf
    

    修改以下内容:

    listen_tls = 0
    listen_tcp = 1
    tcp_port = "16509"
    auth_tcp = "none"
    mdns_adv = 0
    

    部分内容只需去掉修改,部分内容需要修改值
    3) 配置/etc/sysconfig/libvirtd文件

    vim /etc/sysconfig/libvirtd
    

    去掉注释

    LIBVIRTD_ARGS="--listen"
    

    重启libvirtd并设置为开机自启

    systemctl restart libvirtd
    systemctl enable libvirtd
    

访问Web,创建资源域

在浏览器中输入管理节点Manager的ip:8080,登入管理平台。

用户名:admin
密码:password
在登录页面选择语言:简体中文

在这里插入图片描述
登入后在全局设置中搜索host,设置host 修改为管理节点IP192.168.239.254
在这里插入图片描述
设置超配倍数 可分配资源 = 实际资源 * 超配倍数。包括 CPU 内存 主存储容量等。一般不设置内存超配,CPU超配大概3~4倍。这里都修改成了2倍。

cpu.overprovisioning.factor   	CPU超配倍数
mem.overprovisioning.factor		内存超配倍数

设置secstorage 设置允许从该网段下载ISO或模板

secstorage.allowed.internal.sites = 0.0.0.0/0

在这里插入图片描述
设置完成需重启 cloudsatck-management
在xshell的manager对话框,使用命令

systemctl restart cloudstack-management
创建资源域

再次访问 WEB UI界面,点击基础架构→资源域→查看全部,点击添加资源域。
在这里插入图片描述
在这里插入图片描述

名称任意,其中的DNS可以填写在配置环境中设置的值,虚拟机管理程序选择KVM

在这里插入图片描述

在这里插入图片描述

提供点名称随意,预留网关与子网掩码与上面环境配置中设置的相同,可以在VMWare Workstation中查看,预留系统IP范围必须在VMWare Workstation分配的虚拟机范围当中。
查看方法
点击WMWare WorkStations中的编辑虚拟网络编辑器,在弹出的新窗口中选中VMnet8(NAT模式),点击DHCP设置
>在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

群集名称随意

添加资源域
在这里插入图片描述

主机名称填写agent计算节点的IP地址,用户名为root,密码为虚拟机的root密码

在这里插入图片描述

名称随意
协议选中nfs
服务器为agent计算节点的IP地址
路径为/export/primary,与上面在agent节点中设置的相同

在这里插入图片描述

提供程序选择NFS
名称随意
服务器为manager管理节点的IP地
路径为/export/secondary,与上面在manager节点中设置的相同

在这里插入图片描述

点击启动资源域按钮开始安装
在这里插入图片描述
在这里插入图片描述

确认是否安装成功

在这里插入图片描述

在基础架构中,可以看到与未创建之前相比,资源域数目变为了1,并且系统VM数量变为了2。可以点击查看全部(在刚创建后代理状态可能为disconnected,稍等即可)
在这里插入图片描述


http://chatgpt.dhexx.cn/article/7slslvEC.shtml

相关文章

cloudstack 术语

CloudStack术语 关于地区 为了提高云的可靠性,您可以选择将资源分组到多个地理区域。区域是CloudStack部署中最大的可用组织单位。区域由多个可用区域组成,其中每个区域大致相当于数据中心。每个区域由其自己的管理服务器集群控制,在其中一…

cloudstack java api_python访问cloudstack的api接口

1.CloudStack API 如同 AWS API 一样,CloudStack API 也是基于 Web Service,可以使用任何一种支持 HTTP 调用的语言(例如 Java,python,)编写代码。 调用代码(caller)首先需要在管理服务器进行认证。目前 CloudStack 采用两种认证方式&#xf…

CloudStack初级部署与实例创建

1 CloudStack 1.1 查看并修改虚拟机网络 打开虚拟机VMware Workstation,选择菜单栏“编辑”->虚拟网络编辑器,查看VMnet8的子网地址。 每台机器VMnet8被分配的子网地址都不相同,但在每个网段中,本机都默认为1,网…

搭建CloudStack环境(Windows版)

应项目需求,需要使用CloudStack搭建云平台,结合官方文档和网上资料,网上资料参差不齐,最后还是自己总结一下安装CloudStack的详细教程。 目录 Step 1) 安装Cygwin Step 2) 安装JDK Step 3) 安装Python 2.7 Step 4) 安装Tomca…

CloudStack高级网络设置

基本设置 参考 https://blog.csdn.net/dandanfengyun/article/details/105726448 测试使用高级网络设置。和基本网络设置基本一样直到添加资源域时状态。。。 开始添加 资源域 添加资源以 选择高级网络设置 配置区域 和基本网络设置类似 注 来宾CIDR 没有必要去修改。。。如…

cloudstack java api_CloudStack API编程指引

前言 本文阐述为CloudStack编写新API或者更新已存在API时应遵循的约定和编程指引。 参考文档 (暂略) 介绍 当你需要为CS添加新的API时,需要创建一个Request类和Response类(或者在扩展CS API功能时它的API Responese已经定义的情况下重用已经存在的API Response类)。…

CloudStack 4.17 安装部署

市面上cloudstack大多部署教程都比较旧,这里写一篇最新版本的部署安装教程(4.17),为了方便解释相关配置以及进行相关配置,本篇会把管理节点和计算节点分开写 1.管理节点部署(admin) 管理节点ip&…

Cloudstack

1、cloudstack介绍 一个开源具有高可用性及扩展性的云计算平台,Cloudstack是一个开源的云操作系统; cloudstack支持管理大部分主流的hypervisors,如:VMware,KVM,Citrix XenServer,Xen Cloud Pla…

【私有云架构】Cloudstack 与 OpenStack:哪个更适合您?

创建云管理平台是因为云计算几乎已成为大多数日常业务使用的必需品。CloudStack 与 OpenStack 之争并不是很重要,而是在控制大量数据的高级云管理平台之间进行选择。 对于许多组织而言,重要的一步是实施逻辑云管理,该管理拥有许多用于控制各种…

CloudStack那些事儿1 : 初识CloudStack

CloudStack是什么呢?百科上对CloudStack的定义如下: CloudStack是一个开源的具有高可用性及扩展性的云计算平台,同时是一个开源云计算解决方案。可以加速高伸缩性的公共和私有云(IaaS)的部署、管理、配置。使用CloudSt…

OpenStack与CloudStack

目录 一、云计算 二、IaaS 三、OpenStack与CloudStack (一)概述 (二)项目历史与运营团队 (三)架构 (四)计算 (五)网络 (六)存…

CloudStack(二)基础网络模式安装部署

概述: 在CloudStack(一)简介及相关理论介绍里面简单的介绍了下cloudstack的相关概念好让我们安装部署的时候好理解一点,在cloudstack的区域里面有两种网络模式, 基础模式 基础网络模式只提供了简单的网络模型,管理网络、来宾网络(只支持1个来宾网络)、存储网络、V-Route(只提供…

CloudStack 云计算平台框架

前言 CloudStack 和OpenStack 一样都是IaaS层 开源框架,可以管理XenServer、ESXI、KVM、OVM等主流虚拟机,相对OpenStack比较简单、稳定; 二、Cloud Stack架构 Zone:相当于现实中的1个数据中心,它是CloudStack中最大的一…

【大数据实验1】cloudstack安装部署(小白式傻瓜教学)

cloudstack安装部署 0 说明1 Prerequisites 先决条件2 Environment 环境2.0 先看看有没有KVM2.1 Operating System 操作系统2.2 Configuring the network 配置网络2.3 Hostname2.4 SELinux2.5 NTP2.6 Configuring the CloudStack Package Repository 配置CloudStack软件包存储库…

Java线程池

目录 一、什么是线程池 二、线程池有哪些好处? ①降低资源的消耗 ②提高响应速度 ③提高线程的可管理能力 三、线程池如何使用 ①创建线程池​编辑 工厂模式: 工厂模式代码实现: ②往线程池当中添加任务 四、Java当中有哪些线程池 ​编辑 ①Executors.newFixedThreadPool …

线程池(一)线程池的基本使用

一、线程池简介 线程池的概念 线程池就是首先创建一些线相衬,它们的集合称为线程池,使用线程池可以很好的提高性能,线程池在系统启动时既创建大量空闲的线程,程序将一个任务传给线程池。线程池就会启动一条线程来执行这个任务&…

线程池介绍及创建线程池的4种方式

1. 什么是线程池 Java中的线程池是运用场景最多的并发框架,几乎所有需要异步或并发执行任务的程序 都可以使用线程池。在开发过程中,合理地使用线程池能够带来3个好处。 第一:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成…

线程池的使用

1.线程池使用场景 java中经常需要用到多线程来处理一些业务,我们非常不建议单纯使用继承Thread或者实现Runnable接口的方式来创建线程,那样势必有创建及销毁线程耗费资源、线程上下文切换问题。同时创建过多的线程也可能引发资源耗尽的风险,这…

线程池_线程池详解

1 线程池使用场景? java中经常需要用到多线程来处理一些业务,我们非常不建议单纯使用继承Thread或者实现Runnable接口的方式来创建线程,那样势必有创建及销毁线程耗费资源、线程上下文切换问题。同时创建过多的线程也可能引发资源耗尽的风险&…

Netty 线程池

Netty的线程池有什么样的特性 Java 原生线程池 Java 原生的线程池主要有三种:ThreadPoolExecutor、ScheduledThreadPoolExecutor、ForkJoinPool。 ThreadPoolExecutor 是最古老的类,我们通常说的线程池,也是指这个类。 ScheduledThreadPoo…