CloudStack初级部署与实例创建

article/2025/9/9 21:46:25

1 CloudStack

1.1 查看并修改虚拟机网络

打开虚拟机VMware Workstation,选择菜单栏“编辑”->虚拟网络编辑器,查看VMnet8的子网地址。

每台机器VMnet8被分配的子网地址都不相同,但在每个网段中,本机都默认为1,网关都默认为2。

以本机“192.168.221.0”网段为例,在该网段中,默认本机的IP地址为“192.168.221.1”,默认网关的IP地址为“192.168.221.2”。

综上,本机虚拟网络相关的信息如下:

地址范围:192.168.221.100-192.168.221.254
网关:192.168.221.2
子网掩码:255.255.255.0

1.2 创建Manager节点

本文先创建manager节点虚拟机,安装必要的软件后,会克隆该虚拟机作为agent节点,再分别部署各自节点。

本文manager节点IP设置为192.168.221.100,agent节点IP设置为192.168.221.101。

在VmWare Station 中新建虚拟机,在新建向导中依次选择“典型”、“稍后安装操作系统”、“Linux”、“CentOS 7 64位”。

命名该虚拟机为Manager,避免混淆。Manager配置如下:

在这里插入图片描述
Manager节点推荐内存为2G,

处理器内核2颗,开启“虚拟化Intel VT-x/EPT 或AMD-V/RVI”,

CD驱动器加载CentOS的iso镜像,并确定已勾选启动时连接,

再删除多余的声卡和打印机硬件,

点击“关闭”并点击“完成”。

在Manager安装过程中,网络设置如下:

静态IP地址“192.168.221.100”,子网掩码“255.255.255.0”,网关“192.168.221.2”,DNS服务器输入阿里DNS服务器223.5.5.5

1.3 配置Manager节点

  • 在XShell中,创建新会话,名称为“manager”,主机为192.168.221.100。
  • 设置IP映射
    设置后可以直接通过Hostname,访问到对应节点。
 vi /etc/hosts

在该文件新的一行中插入以下内容:

      192.168.221.100 manager192.168.221.101 agent
  • 关闭防火墙
      systemctl disable firewalldsystemctl stop firewalld
  • 设置selinux为permissive模式
      vi /etc/selinux/config 

找到selinx并改成

      SELINUX=permissive

重启生效

      reboot
  • 查看selinux
      getenforce 

时区设置(非必要)

timedatectl set-timezone  Asia/Shanghai

查看时区

      timedatectl
  • 安装EPEL
      yum -y install epel*

重建本地仓库缓存

      yum clean all && yum makecache

安装VIM,用以编辑文件

      yum -y install vim

安装lrzsz,用以向虚拟机发送文件

      yum -y install lrzsz
  • 安装时间同步模块
      yum -y install chrony

修改配置文件

      vim /etc/chrony.conf

将服务器修改为阿里云的时间同步服务器

      server 0.centos.pool.ntp.org iburstserver 1.centos.pool.ntp.org iburstserver 2.centos.pool.ntp.org iburstserver 3.centos.pool.ntp.org iburst
  改为
      server ntp1.aliyun.com iburstserver ntp2.aliyun.com iburstserver ntp3.aliyun.com iburstserver ntp4.aliyun.com iburst

重启chronyd服务

      systemctl restart chronyd
  • 安装NFS服务
      yum -y install nfs-utils

编辑配置文件

      vim /etc/sysconfig/nfs

取消如下项的注释。其中,RQUOTAD_PORT需要手动添加

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

启动服务并设置开机启动

      systemctl enable rpcbindsystemctl start rpcbindsystemctl enable nfssystemctl start nfs

查看新增硬盘

      fdisk -l

在这里插入图片描述

格式化硬盘,建立ext4文件系统,“Process anyway?”选择“y”

      mkfs.ext4 /dev/sdb

至此,两节点的通用配置已完成。

1.4 克隆Agent节点

关闭manager节点,在库中,右键manager节点,选择“管理”->“克隆”,进入克隆虚拟机向导。

依次选择“克隆当前状态”、“创建完整克隆”,命名为“agent”,然后点击完成。

由于克隆后agent节点IP与manager冲突,先在虚拟机内部修改完静态IP地址后,再通过XShell配置。

  • 修改host名
      vim /etc/hostname

修改manager为agent

  • 修改IP地址
      vim /etc/sysconfig/network-scripts/ifcfg-ens33

将IPADDR修改为192.168.221.101,修改后如下

      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="d0a5b749-1159-45cc-8a88-c8bb250101a1"255
  • 重启虚拟机
      reboot
  • 在XShell中,创建新会话,名称为“agent”,主机为192.168.221.101,
    在XShell的会话中完成后续配置。

1.5 配置NFS服务

1.5.1 Manager节点

  • 创建挂载点
      mkdir -p /export/secondary
  • 硬盘挂载
       echo "/dev/sdb  /export/secondary  ext4 defaults 0 0"  >> /etc/fstab
  • 快速挂载
      mount -a
  • 查看挂载
      df -h

在这里插入图片描述

  • 设置共享目录
      vim /etc/exports
  • 添加
      /export/secondary *(rw,async,no_root_squash,no_subtree_check)
  • 重新导入共享目录配置
      exportfs -a

1.5.2 Agent节点

  • 创建挂载点
      mkdir -p /export/primary
  • 硬盘挂载
      echo "/dev/sdb  /export/primary  ext4 defaults 0 0"  >> /etc/fstab
  • 快速挂载
      mount -a
  • 查看挂载
      df -h

在这里插入图片描述

  • 设置共享目录
      vim /etc/exports
  • 添加
      /export/primary *(rw,async,no_root_squash,no_subtree_check)
  • 重新导入共享目录配置
      exportfs -a

1.5 3 验证共享

  • manager 节点查看 agent的共享目录
      showmount -e agent
  • agent 节点查看 manager 的共享目录
      showmount -e manager

1.6 安装MySQL服务

1.6.1 Manager节点

    yum -y install mariadb-server mariadb
  • 编辑 mariadb 配置文件
      vim /etc/my.cnf

在mysqld 模块下加入

      innodb_rollback_on_timeout=1innodb_lock_wait_timeout=600max_connections=350log-bin=mysql-binbinlog-format = 'ROW'bind-address = 0.0.0.0
  • 启动mariadb 并设置为开机启动
      systemctl enable mariadbsystemctl start mariadb
  • 执行数据库初始化安全操作
      mysql_secure_installation

初始未设置密码按回车跳过,选择设置密码,设置为******,移除匿名用户,不屏蔽远程登录等,其他按回车选择默认

  • 赋予 root 远程登录权限
      mysql -uroot -p[你的密码] -e "GRANT ALL PRIVILEGES ON *.* TO root@'%' IDENTIFIED BY '832547' WITH GRANT OPTION";

1.7 设置Agent节点网络桥接

    yum -y install net-tools bridge-utils
  • 编辑网卡桥接文件 cloudbr
      vim /etc/sysconfig/network-scripts/ifcfg-cloudbr0

修改后内容如下

      TYPE=BridgeBOOTPROTO=noneDEVICE=cloudbr0ONBOOT=yesIPADDR=192.168.221.101NETMASK=255.255.255.0GATEWAY=192.168.221.2DNS1=223.5.5.5STP=yes
  • 设置网卡文件
      vim /etc/sysconfig/network-scripts/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="d0a5b749-1159-45cc-8a88-c8bb250101a1"DEVICE="ens33"ONBOOT="yes"BRIDGE=cloudbr0
  • 重新启动网络服务
      systemctl restart network
  • 查看 网桥 和路由
      brctl show route -n

1.8 安装CloudStack

  • 配置网络源文件,两台节点配置相同
      vi /etc/yum.repos.d/cloudstack.repo

添加

      [cloudstack]name=cloudstackbaseurl=http://cloudstack.apt-get.eu/centos7/4.13/enabled=1gpgcheck=0
  • manager节点
      yum -y install cloudstack-management
  • agent 节点
      yum -y install cloudstack-agent
  • manager节点安装KVM模板
      /usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /export/secondary -u http://cloudstack.apt-get.eu/systemvm/4.11/systemvmtemplate-4.11.3-kvm.qcow2.bz2 -h kvm -F
  • agent 节点配置libvirt
    编辑QEMU VNC配置文件
      vim /etc/libvirt/qemu.conf

取消注释

      vnc_listen="0.0.0.0"

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

      vim /etc/libvirt/libvirtd.conf

取消注释或添加

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

配置/etc/sysconfig/libvirtd文件

      vim /etc/sysconfig/libvirtd

取消注释

      LIBVIRTD_ARGS="--listen"

重启libvirtd 并设置为开机自启

      systemctl restart libvirtdsystemctl enable libvirtd

1.9 配置CloudStack

  • 登录CloudStack
    默认访问端口为manager节点IP的8080端口。
    打开浏览器,访问http://192.168.221.100:8080/client/
    默认账号为admin,默认密码为password,选择语言为“简体中文”,登陆。
    在这里插入图片描述

    初次登陆选择左下角“我以前使用过”。

  • 选择左下角“全局设置”,搜索并修改以下设置。

      host 192.168.221.100                          //host地址,即管理节点IP地址cpu.overprovisioning.factor 2.0               //CPU超配mem.overprovisioning.factor 2.0               //内存超配,即2GB变4GBsecstorage.allowed.internal.sites 0.0.0.0/0   //从该网段下载ISO或模板,后期搭建ngix服务器可修改management.network.cidr 192.168.221.0/24      //管理网段,可不修改,但会有警报信息

在manager节点中,重启cloudsatck-management服务

      systemctl restart cloudstack-management
  • 创建资源域
    重新登录,选择左下角“基础架构”,选择“资源域”,点击工具栏“+ 添加资源域”。配置如下即可。
    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    点击“启动资源域”,等待创建完成,然后启动即可。

1.10 注册ISO,添加实例,创建模板

如下,等待系统VM创建成功后,开始后续步骤。

在这里插入图片描述

1.10.1 Agent节点

创建一个NGINX 服务器当作镜像下载站

  • 安装 nginx 软件
      yum -y install nginx
  • 编辑 nginx 配置文件
      vim  /etc/nginx/nginx.conf 
  • 在access_log /var/log/nginx/access.log main一行后加上
      autoindex on;# 显示目录autoindex_exact_size on;# 显示文件大小autoindex_localtime on;# 显示文件时间
  • 清空 /usr/share/nginx/html 目录
      cd /usr/share/nginx/htmlrm -rf *

将准备好的ISO镜像放进去,本文使用的是虚拟机的镜像,直接拖入会话框,传送至/usr/share/nginx/html目录

  • 重启nginx 服务,设置为开机启动
      systemctl enable nginxsystemctl start nginx
  • 可通过浏览器直接访问agent节点IP地址查看

在这里插入图片描述

1.10.2 注册ISO

选择左侧“模板”->选择视图“ISO”,点击工具栏“注册ISO”
在这里插入图片描述

依次填写所有信息,URL可以从192.168.221.101网页中复制链接

在这里插入图片描述

点击“确定”,点击该ISO,点击“资源域”,查看状态
在这里插入图片描述

1.10.3 添加实例

依次选择左边“实例”->工具栏“添加实例”。

选择ISO创建

在这里插入图片描述

选择刚刚注册的ISO。

在这里插入图片描述

计算方案选择Medium,分配内存为1GB,可在“服务方案”中修改

在这里插入图片描述

其余一律默认即可,最后填写信息。

在这里插入图片描述

启动VM,等待VM创建并运行。

选择该虚拟机快速查看->查看控制台。

在这里插入图片描述

在弹出的控制台网页中,安装ISO即可。

在这里插入图片描述

安装过程同虚拟机大致一样,不同的是网络只需打开即可,不需要设置静态IP和主机名。

安装完成后,重启

至此,一台可以用于生产的实例已经部署完成,后续可以安装其他生产环境,仅做测试,安装系统即可。

1.10.4 创建模板

接下来是,将安装有生产环境的示例创建模板,用以创建更多实例。

关闭实例。“快速查看”->停止。
在这里插入图片描述

等待停止后,点击“查看卷”。

在这里插入图片描述

选择“快速查看”->“创建模板”
在这里插入图片描述

填写信息后,创建即可。

在这里插入图片描述

以后添加实例时,选择该模板即可创建一模一样的实例。

在这里插入图片描述
在这里插入图片描述

1.10.5 管理界面

  • 控制板
    在这里插入图片描述

  • 基础架构

在这里插入图片描述

  • 实例

在这里插入图片描述

  • 存储

在这里插入图片描述

  • 模板
    在这里插入图片描述

参考资料
[1]https://blog.csdn.net/qq_44714521/article/details/109145500
[2]http://docs.cloudstack.apache.org/en/latest/quickinstallationguide/qig.html


http://chatgpt.dhexx.cn/article/RhNv83Rd.shtml

相关文章

搭建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…

Linux —— 线程池

目录 一、什么是线程池 二、线程池的优点 三、线程池的应用 四、实现一个简单的线程池 五、单例模式 1. 饿汉实现方式 2. 懒汉实现方式 3. 单例模式实现线程池(懒汉方式) 六、其他常见的各种锁 一、什么是线程池 线程池是线程的一种使用模式。在…

线程池的实现原理

系统学习性,移步 IT-BLOG 线程池做的工作主要是控制运行的线程数量,处理过程中将任务放入队列,然后在线程创建后启动这些任务,如果线程数超过了最大数量超出数量的线程排队等候,等其他线程执行完毕,再从队列…

java——线程池

一、线程池 线程池可以看做是线程的集合。它的工作主要是控制运行的线程的数量,处理过程中将任务放入队列,然后在线程创建后 启动这些任务,如果线程数量超过了最大数量超出数量的线程排队等候,等其它线程执行完毕, 再…