博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用Proxmox搭建私有云平台
阅读量:4170 次
发布时间:2019-05-26

本文共 4895 字,大约阅读时间需要 16 分钟。

企业目前上云,有多种选择,那么对于中小企业,从成本和规模考虑,如何搭建自己的私有云环境,笔者这里根据自己的一个实践环境,尝试搭建一套小型私有云环境,功能并不完善,但基本能满足中小企业的需求。


硬件环境准备

环境的搭建,硬件成本是必须的,没有物理设备,那么巧妇难为无米之炊~~

  • 服务器设备:

建议采购3台以上X86两路服务器,CPU配置根据需求,建议5218金牌。内存配置256G以上。配置SSD卡(32G以上、2块RAID-1)、SSD硬盘(512G以上、2块以上)、大容量4T的SATA硬盘(根据预算,配置8块以上,同时也考虑实际使用情况扩容)。配置万兆网卡2口2块(实现冗余)、配置千兆网卡4口2块(实现冗余)。

这样的硬件设备,配置较好的CPU、SSD硬盘、大容量SATA硬盘,可以实现计算和存储节点在一块,也有一些超融合的概念。

  • 配套网络设备

万兆网络交换机

千兆网络交换机


软件准备

相信很多企业都在使用VMware的Exsi,VMware的价格还是比较高的,那么再新建一套虚拟化环境,从成本考虑采用开源的免费软件,这里选择了Proxmox,目前版本是6.0.(下载地址:)

Proxmox集成了Ceph功能,配合上述说的计算存储统一部署,那么选择Proxmox节省了很多部署上的问题,使得整个部署更简单。

有了虚拟化软件,那么还需要一套云管平台,统一来纳管资源,包括VMware和新的虚拟化资源池。

支持Vmware的云管平台很多,但是同时支持VMware和Proxmox的云管平台比较少,有些云管平台支持早期的Proxmox版本,但是最新的都需要自定义开发,这里选择了某厂商的一个云管平台,对Proxmox6.0支持并不完全。

迁移,如果需要迁移一部分VMware虚拟机到Proxmox,这里可以参考VMware导出OVA模板,在导出模板后加一个Ios后缀,上传至Proxmox,解压-导入。具体可参考:


安装配置

系统安装

Proxmox目前网络上有很多安装文档,大致雷同,这里就不在重复累赘,截取需要注意的几部分:

使用U盘或者刻盘安装都可以,基本都是下一步点击,这里注意:

选择系统安装硬盘,因为服务器中有多个盘,这里记得选择下。

网卡配置,记得这里有多块网卡,要区分做管理网段的网卡、业务网段网卡、Ceph集群网卡。

接下来按部就班完成安装即可。

假设目前环境中已经有ntp服务器,那么上诉服务器能链接外网,强烈建议

apt-get install ntp

如果设备你在内网那么ntp安装稍微麻烦一点,首先Proxmox基于Debian,那么要去Debian官网去下载相关软件包进行安装。 搜索安装包离线安装,同时会有一些依赖,依次下载安装。

地址配置

每台设备安装完成后,根据需求,一般正式环境有管理网段、生产网段、Ceph网段。使用nano命令打开文件进行配置。

nano /etc/network/interface配置网卡eth0的IP地址auto eth0 表示网卡随系统自动请iface eth0 inet static 表示网卡为静态ip地址address 192.168.2.147 表示设置ip地址netmask 255.255.255.0 表示子网掩码gateway 192.168.2.1 表示网关。配置多块网卡,记得根据接入的交换机,网关地址不设置。理论上多块网卡配置业务网卡bond绑定,Ceph网络bond绑定,管理网卡可考虑单口

考虑Ceph模块的在线下载,那么编辑 /etc/resolv.conf 配置DNS

完成后重启网络服务即可。systemctl restart networking

注意:这里没有ifconfig命令,查看IP请用ip addr

集群配置

在每天设备的/etc/hosts配置好相应的IP和主机名,通过浏览器登录: 登录名为:root密码为安装时候设置的密码。

选择其中一台主机来创建集群,这些都可以在页面上操作完成,然后把其余的几台设备添加进来,这时候建议ssh登录服务器,执行:

pvecm add IPyes查看输出,成功即可

输入:

pvecm status 查看集群状态

登录之前的浏览器页面

这时候Proxmox集群就完成了。

Ceph模块安装

Ceph模块安装还是建议先把设备连接至外网,点击之前浏览器页面中每台主机的ceph选项,在外网通讯正常情况下会自动安装。

之前先进行网络配置或者检查网络配置

配置Ceph网卡,Proxmox其实是一个定制化的Debian。

nano /etc/network/interface中选择万兆网卡,其实写入配置文件。配置网卡eth0的IP地址auto eth0 表示网卡随系统自动请iface eth0 inet static 表示网卡为静态ip地址address IP地址 表示设置ip地址netmask 255.255.255.0 表示子网掩码gateway 网关地址不需要,因为之前业务网卡已经配置过网关,这里选择另外网段的地址来作为ceph的网络

如果设备链接在外网,那么Proxmox6版本中,点击左侧ceph,自动会进行安装,4台机器都安装ceph。

另外一种方式,通过登录服务器命令行去安装:

pveceph install --version 需要的版本 --每个节点安装ceph软件包pveceph init --network 192.168.10.0/24 初始化ceph的网络pveceph createmon --创建mon

 

配置ntp服务,对于Ceph来说,ntp服务是必须的,如果有内网ntp可以通过设置ntpdate来进行时间同步,不然会一直报错。

之后登录网页管理控制台,在其余三个节点都创建mon。

之后再创建OSD,把目前系统上识别出来的硬盘,逐步添加:

 

 

注意:Ceph配置完成后记得创建pool,这也只需要页面点击即可,命名,size=3表示是三副本(正常),min_size表示最小数据副本,这里需要注意pg_num,一般要保证每一个硬盘上不少于30个,不然整个ceph集群中会有警告,那么根据自身的硬盘数量来设置,后期也可以改,那么就需要去重平衡,这个时间会比较久~

创建RBD存储池,点击左侧存储,添加即可,选择之前的节点即可。

 

云管平台纳管

选择一款云管平台,接入纳管VMware和Proxmox,编辑工单实现资源的分配、扩容、销毁等功能。

 

 新建用户:

设计相关流程和工单:

虚拟机新建

熟悉VMware的,其实用Proxmox很容易上手,点击主机,右键选择新建即可:

选择Ceph存储,其他选项下一步根据实际情况来选择。

    整个集群状态

    虚拟机状态

 

常用命令

整个搭建过程并不复杂,登录服务器,常用命令如下:

qm是最重要的命令:

USAGE: qm <COMMAND> [ARGS] [OPTIONS]

    qm cloudinit dump <vmid> <type>
    qm guest cmd <vmid> <command>
    qm guest exec-status <vmid> <pid>
    qm guest passwd <vmid> <username> [OPTIONS]
    qm guest exec <vmid> [<extra-args>] [OPTIONS]
    qm clone <vmid> <newid> [OPTIONS]
    qm config <vmid> [OPTIONS]
    qm create <vmid> [OPTIONS]
    qm delsnapshot <vmid> <snapname> [OPTIONS]
    qm destroy <vmid> [OPTIONS]
    qm list [OPTIONS]
    qm listsnapshot <vmid>
    qm migrate <vmid> <target> [OPTIONS]
    qm move_disk <vmid> <disk> <storage> [OPTIONS]
    qm pending <vmid>
    qm reset <vmid> [OPTIONS]
    qm resize <vmid> <disk> <size> [OPTIONS]
    qm resume <vmid> [OPTIONS]
    qm rollback <vmid> <snapname>
    qm sendkey <vmid> <key> [OPTIONS]
    qm set <vmid> [OPTIONS]
    qm shutdown <vmid> [OPTIONS]
    qm snapshot <vmid> <snapname> [OPTIONS]
    qm start <vmid> [OPTIONS]
    qm stop <vmid> [OPTIONS]
    qm suspend <vmid> [OPTIONS]
    qm template <vmid> [OPTIONS]
    qm unlink <vmid> --idlist <string> [OPTIONS]
    qm cleanup <vmid> <clean-shutdown> <guest-requested>
    qm importdisk <vmid> <source> <storage> [OPTIONS]
    qm importovf <vmid> <manifest> <storage> [OPTIONS]
    qm monitor <vmid>
    qm mtunnel
    qm nbdstop <vmid>
    qm rescan [OPTIONS]
    qm showcmd <vmid> [OPTIONS]
    qm status <vmid> [OPTIONS]
    qm terminal <vmid> [OPTIONS]
    qm unlock <vmid>
    qm vncproxy <vmid>
    qm wait <vmid> [OPTIONS]

查看当前主机的虚拟机

    root@pve1:~# qm list
    VMID NAME STATUS MEM(MB) BOOTDISK(GB) PID
    103 redhat6o11g stopped 16384 150.00 0

ceph命令,熟悉ceph的同学,ceph的命令在这边都是适用的。

 如查看集群状态:

    root@pve1:~# ceph -s
    cluster:
    id: 580f4d51-b80e-4842-b394-484cbd3ad0b6
    health: HEALTH_OK
    services:
    mon: 4 daemons, quorum pve1,pve2,pve3,pve4 (age 4d)
    mgr: pve1(active, since 3d)
    osd: 40 osds: 40 up (since 3d), 40 in (since 4d)
    data:
    pools: 2 pools, 640 pgs
    objects: 105.74k objects, 410 GiB
    usage: 237 GiB used, 130 TiB / 130 TiB avail
    pgs: 640 active+clean
------------------------------------------------------------------------------------------------------------------------------------

注意事项:

1.Proxmox中新建的虚拟机需要添加到HA集群。

2.云管平台纳管,需要有相应的自定义开发,Proxmox接入自动化实现目前还有问题。

3.Ceph集群偶尔会报节点不可用,这个时候只能重启故障节点,出现概率不高。

4.Proxmox迁移虚拟机的速度比VMware要慢不少。

 

转载地址:http://styai.baihongyu.com/

你可能感兴趣的文章
2018.12.31
查看>>
2019.1.2
查看>>
2019.1.4
查看>>
2019.1.9
查看>>
2019.1.12
查看>>
Java语言程序设计与数据结构》编程练习答案(第二十章)(二)
查看>>
2019.2.25
查看>>
2019.2.26
查看>>
2019.2.27
查看>>
2019.2.28
查看>>
2019.2.29
查看>>
聊聊我当年在培训学校做开发的经历
查看>>
用Docker搭建Redis主从复制的集群
查看>>
盘点这些年我出的书,以及由此得到的收获
查看>>
用Python的Pandas和Matplotlib绘制股票KDJ指标线
查看>>
面试必问:对java多线程里Synchronized的思考
查看>>
最近接了本分布式组件面试书的选题,请大家一起来提意见
查看>>
Redis整合MySQL和MyCAT分库组件(来源是我的新书)
查看>>
Java程序员普遍存在的面试问题以及应对之道(新书第一章节摘录)
查看>>
程序员高效出书避坑和实践指南
查看>>