CentOS 6系统 模板封装教程 产品版本 ZStack 2.3.2
CentOS 6系统 模板封装教程 / 版权声明 版权声明 版权所有 上海云轴信息科技有限公司 2018 保留一切权利 非经本公司书面许可 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部 并不得以任 何形式传播 商标说明 ZStack商标和其他云轴商标均为上海云轴信息科技有限公司的商标 本文档提及的其他所有商标或注册商标 由各自的所有人拥有 注意 您购买的产品 服务或特性等应受上海云轴公司商业合同和条款的约束 本文档中描述的全部或部 分产品 服务或特性可能不在您的购买或使用范围之内 除非合同另有约定 上海云轴公司对本文 档内容不做任何明示或暗示的声明或保证 由于产品版本升级或其他原因 本文档内容会不定期进行更新 除非另有约定 本文档仅作为使用 指导 本文档中的所有陈述 信息和建议不构成任何明示或暗示的担保 I
CentOS 6系统 模板封装教程 / 目录 目录 版权声明... I 1 环境准备... 1 1.1 准备软件工具... 1 2 准备安装镜像... 2 2.1 添加安装镜像... 2 2.2 创建云盘规格... 3 3 安装操作系统... 5 3.1 安装云主机镜像-CentOS 6... 5 3.2 系统模板配置... 10 3.3 创建系统模板... 12 术语表... 16 II
CentOS 6系统 模板封装教程 / 1 环境准备 1 环境准备 1.1 准备软件工具 可用的ZStack云平台 CentOS 6镜像路径, 例如 https://mirrors.aliyun.com/centos/6.9/isos/x86_64/centos-6.9x86_64-bin-dvd1.iso 1
CentOS 6系统 模板封装教程 / 2 准备安装镜像 2 准备安装镜像 2.1 添加安装镜像 背景信息 将CentOS 6添加到ZStack的镜像列表 以备安装操作系统时使用 操作步骤 1. 在ZStack私有云主菜单 点击云资源池 > 镜像按钮 2. 在镜像页面 点击添加镜像按钮 3. 在弹出的添加镜像界面 可参考以下示例输入相应内容 名称 设置镜像名称 简介 可选项 可留空不填 镜像类型 选择系统镜像 镜像格式 选择ISO 平台 选择Linux平台 镜像服务器 选择已创建的镜像服务器 镜像路径 选择并填写添加镜像的URL路径或本地文件路径 注: URL路径支持HTTP/HTTPS ftp sftp和file:///格式 其中file:///格式目前仅支 持Sftp镜像服务器和镜像仓库 本地文件 表示选择当前浏览器可访问的镜像直接上传 支持镜像仓库 如图 1: 添加镜像所示 点击确定 完成Linux镜像添加 图 1: 添加镜像 2
CentOS 6系统 模板封装教程 / 2 准备安装镜像 2.2 创建云盘规格 背景信息 根据需求创建合适的云盘规格大小 用于CentOS 6云主机系统硬盘 若安装CentOS 6命令行界面 推荐设定40GB的云盘规格 若安装CentOS 6图形界面 GNOME 推荐设定60GB的云盘规格 3
CentOS 6系统 模板封装教程 / 2 准备安装镜像 操作步骤 1. 在ZStack私有云主菜单 点击云资源池 > 云盘规格按钮 2. 在云盘规格页面 点击创建云盘规格按钮 3. 在弹出的创建云盘规格界面 可参考以下示例输入相应内容 名称 填写云盘规格的名称 简介 可选项 可留空不填 容量 选择或填写云盘容量 例如 40G 磁盘带宽 可选项 可留空不填 如图 2: 创建云盘规格所示 图 2: 创建云盘规格 4. 点击确定 完成云盘规格创建 4
CentOS 6系统 模板封装教程 / 3 安装操作系统 3 安装操作系统 3.1 安装云主机镜像-CentOS 6 操作步骤 1. 新建云主机 在ZStack私有云主菜单 点击云资源池 > 云主机按钮 在云主机界面点击创建云主机 在弹 出的创建云主机页面中 可参考以下示例输入相应内容 添加方式 选择添加云主机的方式 名称 设置云主机的名称 简介 可选项 可留空不填 计算规格 选择适合的计算规格 根云盘规格 选择合适的根云盘规格 镜像 选择云主机的镜像 网络 选择创建云主机的三层网络 如图 3: 创建CentOS 6 云主机所示 点击确定按钮 完成CentOS 6云主机创建 系统会自动 进入安装引导模式 图 3: 创建CentOS 6 云主机 5
CentOS 6系统 模板封装教程 / 3 安装操作系统 2. 安装CentOS 6镜像 a) 进入控制台 在云主机界面选中云主机名称 点击更多操作 > 打开控制台按钮 进入控制台系统会进行初 始化 完成后显示云主机镜像安装界面 如图 4: CentOS 6安装界面所示 图 4: CentOS 6安装界面 6
CentOS 6系统 模板封装教程 / 3 安装操作系统 b) 可选 修改Hostname名称 建议在安装引导中 将Hostname改为localhost 如图 5: 设置Hostname所示 图 5: 设置Hostname 7
CentOS 6系统 模板封装教程 / 3 安装操作系统 c) 可选 磁盘分区环节 默认磁盘不进行分区 如果用户需要根据自己的使用习惯对磁盘进行分区 建议/boot/分 配1G swap分配2gb 剩下可以分配给根分区 如图 6: 选择安装种类所示 图 6: 选择安装种类 8
CentOS 6系统 模板封装教程 / 3 安装操作系统 d) 安装系统 设置完成后 选择安装类型 完成后续安装操作 如图 7: 选择安装种类所示 注: 若安装命令行界面 建议选择Basic Server 包含系统基本安装包 若安装图形界 面GNOME 建议选择Minimal Desktop 图 7: 选择安装种类 9
CentOS 6系统 模板封装教程 / 3 安装操作系统 安装完成后 点击右下角Reboot按钮重启 完成系统安装 3.2 系统模板配置 操作步骤 1. 指定hostname 默认的主机名为IP地址 可以使用hostname localhost 指定为localhost 如果想要永久生 效 执行 vim /etc/sysconfig/network 修改如下 HOSTNAME=localhost.domain.com 重启 后生效 2. 开启ssh密码服务 在CentOS 6中 ssh默认可能无法使用root密码登陆 执行vim /etc/ssh/sshd_config 将PasswordAuthentication改为 yes 如图 8: 修改sshd_config文件所示 图 8: 修改sshd_config文件 10
CentOS 6系统 模板封装教程 / 3 安装操作系统 3. 查看网络配置 执行命令ifconfig 查看IP配置信息 如图 9: 查看网络配置信息所示 图 9: 查看网络配置信息 注: 从上图中可以看到 IP配置信息中并没有显示网卡设备eth0的基本信息 4. 执行vim /etc/sysconfig/network-scripts/ifcfg-eth0命令 可查询到eth0的配置信息 我们 将ONBOOT改为 yes 保存并退出 如图 10: 配置信息所示 图 10: 配置信息 5. 删除相关网卡名称规则 执行命令如下 [root@localhost ~]#sed -i '/SUBSYSTEM/d' /etc/udev/rules.d/70-persistent-net.rules [root@localhost ~]#sed -i '/^UUID'/d /etc/sysconfig/network-scripts/ifcfg-eth0 11
CentOS 6系统 模板封装教程 / 3 安装操作系统 [root@localhost ~]#sed -i '/^HWADDR'/d /etc/sysconfig/network-scripts/ifcfg-eth0 将/etc/sysconfig/network-scripts/ifcfg-eth0文件修改为以下内容 删除相关UUID的指定信息 [root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 TYPE=Ethernet ONBOOT=yes BOOTPROTO=dhcp NAME=eth0 执行命令service network restart 使配置信息生效 6. 安装Qemu Guest Agent a) 使用命令yum install qemu-guest-agent -y安装qga b) 使用命令chkconfig qemu-guest-agent on设置开机启动 c) 使用getenforce命令检查SELINUX状态 如果返回Enforcing 则执行vi /etc/selinux/config命 令修改SELINUX状态为disabled 保存并退出 d) 执行命令reboot重启云主机 7. 可选 安装Cloud-init 重启云主机 执行yum install cloud-init -y命令在云主机中安装cloud-init 如果云主机无法访 问外网 建议配置内部yum源进行安装 3.3 创建系统模板 操作步骤 1. 在云主机界面 点击更多操作 > 创建镜像按钮 2. 在创建镜像界面 参考以下示例输入相应内容 名称 设置镜像名称 简介 可选项 可留空不填 平台 安装镜像的平台 选择Linux 镜像服务器 选择已创建的镜像服务器 如图 11: 创建镜像界面所示 图 11: 创建镜像界面 12
CentOS 6系统 模板封装教程 / 3 安装操作系统 注: 在线创建镜像 云主机运行时 镜像仓库和Ceph镜像服务器支持在线创建镜像 关机创建镜像 云主机关机后 各种镜像服务器均支持创建镜像 在线创建镜像时 如果加载了数据云盘 请勿修改/etc/fstab文件 否则使用该镜像 创建的云主机无法启动 3. 点击确定按钮 创建镜像 4. 导出镜像 创建镜像完成后 可以拷贝云主机镜像进行再次定制 不同类型镜像服务器的导出方法不 同 如下所示 镜像服务器采用ImageStore类型 在镜像页面点击更多操作 > 导出按钮 可导出需要的镜像 如图 12: 镜像导出所示 图 12: 镜像导出 13
CentOS 6系统 模板封装教程 / 3 安装操作系统 镜像生成后 可以在基本属性页面复制已导出的镜像URL下载镜像 如图 13: 拷贝镜像路 径界面所示 图 13: 拷贝镜像路径界面 镜像服务器采用Ceph块存储类型 在基本属性页面复制镜像服务器路径会显示Ceph中对应的pool和image信息 拷贝此镜像 路径后 需要在Ceph服务器上执行rbd命令将Ceph镜像导出 假设镜像存储路径为ceph#//bak-t-c9923f982/61ece0adc72操作如下 [root@ceph-node1 ~]#rbd export bak-t-c9923f982/61ece0adc72 /root/export-test.image #bak-t-c9923f982表示镜像所在的pool的名字 #61ece0adc72表示镜像的名字 #/root/export-test.image表示导出的目标文件名字 镜像服务器采用FusionStor类型 14
CentOS 6系统 模板封装教程 / 3 安装操作系统 使用 lichbd export pool/image /root/xxx -p nbd命令导出镜像 例如 lichbd export bak-t-8e694c40cf214db1af9e5d641b2e792d/8f1e0debfae042e5ae074 133a59c0622 /root/test.img -p nbd 至此 基于CentOS系统模板封装操作全部完成 用户可以使用此镜像创建更多的CentOS云主 机 后续操作 云主机在线创建镜像时需注意 如果加载数据云盘后修改云主机的/etc/fstab文件 对该云主机在线创建镜像 使用该镜像创建其它 云主机时 由于fstab文件没有相应的挂载信息 再创建的云主机会hang住无法启动 Linux云主机加载云盘后不能修改/etc/fstab文件 正确的做法 进入/etc/rc.local执行mount命令来挂载云盘 # chmod +x /etc/rc.local # mount -t 云盘UUID 目标挂载路径 注: 建议使用云盘的ID来挂载而非/dev/vdb类似的盘符来挂载 15
CentOS 6系统 模板封装教程 / 术语表 术语表 区域 Zone ZStack中最大的一个资源定义 包括集群 二层网络 主存储等资源 集群 Cluster 一个集群是类似物理主机 Host 组成的逻辑组 在同一个集群中的物理主机必须安装相同的操作 系统 虚拟机管理程序 Hypervisor 拥有相同的二层网络连接 可以访问相同的主存储 在实 际的数据中心 一个集群通常对应一个机架 Rack 管理节点 Management Node 安装系统的物理主机 提供UI管理 云平台部署功能 计算节点 Compute Node 也称之为物理主机 或物理机 为云主机实例提供计算 网络 存储等资源的物理主机 主存储 Primary Storage 用于存储云主机磁盘文件的存储服务器 支持本地存储 NFS Ceph FusionStor Shared Mount Point等类型 镜像服务器 Backup Storage 也称之为备份存储服务器 主要用于保存镜像模板文件 建议单独部署镜像服务器 镜像仓库 Image Store 镜像服务器的一种类型 可以为正在运行的云主机快速创建镜像 高效管理云主机镜像的版本变迁 以及发布 实现快速上传 下载镜像 镜像快照 以及导出镜像的操作 云主机 VM Instance 运行在物理机上的虚拟机实例 具有独立的IP地址 可以访问公共网络 运行应用服务 镜像 Image 云主机或云盘使用的镜像模板文件 镜像模板包括系统云盘镜像和数据云盘镜像 16
CentOS 6系统 模板封装教程 / 术语表 云盘 Volume 云主机的数据盘 给云主机提供额外的存储空间 共享云盘可挂载到一个或多个云主机共同使用 计算规格 Instance Offering 启动云主机涉及到的CPU数量 内存 网络设置等规格定义 云盘规格 Disk Offering 创建云盘容量大小的规格定义 二层网络 L2 Network 二层网络对应于一个二层广播域 进行二层相关的隔离 一般用物理网络的设备名称标识 三层网络 L3 Network 云主机使用的网络配置 包括IP地址范围 网关 DNS等 公有网络 Public Network 由因特网信息中心分配的公有IP地址或者可以连接到外部互联网的IP地址 私有网络 Private Network 云主机连接和使用的内部网络 L2NoVlanNetwork 物理主机的网络连接不采用Vlan设置 L2VlanNetwork 物理主机节点的网络连接采用Vlan设置 Vlan需要在交换机端提前进行设置 VXLAN网络池 VXLAN Network Pool VXLAN网络中的 Underlay 网络 一个 VXLAN 网络池可以创建多个 VXLAN Overlay 网络 即 VXLAN 网络 这些 Overlay 网络运行在同一组 Underlay 网络设施上 VXLAN网络 VXLAN 使用 VXLAN 协议封装的二层网络 单个 VXLAN 网络需从属于一个大的 VXLAN 网络池 不同 VXLAN 网络间相互二层隔离 17
CentOS 6系统 模板封装教程 / 术语表 云路由 vrouter 云路由通过定制的Linux云主机来实现的多种网络服务 安全组 Security Group 针对云主机进行第三层网络的防火墙控制 对IP地址 网络包类型或网络包流向等可以设置不同的 安全规则 弹性IP EIP 公有网络接入到私有网络的IP地址 快照 Snapshot 某一个时间点上某一个磁盘的数据备份 包括自动快照和手动快照两种类型 18