基于KVM虚拟化快速构建
官网 https://nanos.cloud/
今天我推荐一款更加轻量的虚拟机管理平台,那就是Nano
Nano是基于KVM技术,使用Go语言开发,简单易学的虚拟机管理软件,从Web管理门户、主机监控、镜像克隆到故障切换,功能完备,开箱即用,数分钟之内即可将您的服务器集群升级为云主机平台。
这个软件摆脱了以往构建云平台的弊端,例如产品内部组件繁多,相互之间重重关联,产品体系庞大,概念名词也很多,导致学习困难,配置也极为复杂,难以维护。
Nano最大可能采用智能化和自动化手段替代繁琐易出错的手工操作,在简单易用的基础上,提供强大而稳定的云管理平台,产品,在解放运维人员的同时,提高集群的资源利用率、可用性和可靠性。
对于支持Intel VT-d或者AMD-v的普通x86服务器,管理员只需要下载并安装Nano部署包,即可在三分钟内将其转换为云管理平台,并且开始创建云主机实例。
基本工作原理
Nano将一台或者多台x86服务器构建成虚拟资源池,当用户通过Web门户或者REST接口发出创建云主机请求时,Core模块根据资源池内各节点的负载情况,选择合适的承载节点,通过消息控制该承载节点所安装的Cell模块进行实例创建,并负责后续的管理调度以及资源回收等工作。
系统中Core是最核心的主控模块,它负责集群的建立与管理、资源池状态监控、云主机与镜像资源的分配调度、REST接口服务以及任务请求的处理与分发。启动集群时,Core模块需要最先启动,其他模块才能正常进入服务状态。
Cell模块运行在每个可以部署云主机实例的服务器节点上,Cell模块基于KVM与Libvirt工作,启动后持续采集节点资源状况,并实时同步到Core模块,另一方面,收到Core发来的实例创建指令时,分配相应的网络、存储和计算资源,并组装成云主机实例供用户使用。
02 Nano安装
wget https://nanos.cloud/files/nano_installer_1.3.1.tar.gz
tar zxfv nano_installer_1.2.0.tar.gz
cd nano_installer
./installer
输入"0,1,2"或者"3"在当前服务器安装所有模块. 当您第一次安装Nano时,建议您使用安装程序建议的默认配置,无需修改。 如果你有多个网卡设备,请在安装程序的提示中选择连接内网的网卡设备进行安装。
提示缺少依赖,这个错误可以直接忽视,选择网卡输入yes
wiki地址
https://nanocloud.readthedocs.io/projects/guide/zh_CN/latest/instance.html
02 Nano 启动服务
$cd /opt/nano/core
$./core start
$cd ../cell
$./cell start
$ cd ../frontend
$./frontend start
我写成一键启动脚本
[root@nano ~]# cat start.sh
#!/bin/bash
#
ps -ef | grep core | grep -v grep |awk '{print $2}' |xargs kill -9 &> /dev/null
ps -ef | grep cell | grep -v grep |awk '{print $2}' |xargs kill -9 &> /dev/null
ps -ef | grep frontend | grep -v grep |awk '{print $2}' |xargs kill -9 &> /dev/null
cd /opt/nano/core
./core start
cd /opt/nano/cell
./cell start
cd /opt/nano/frontend
./frontend start
sh start.sh
http://192.168.106.135:5870
03 Nano 配置服务
第一次登录平台需要注册用户密码
登录进去如下图
配置服务
选择-计算资源池-使用本地存储-资源节点
将本机加入到资源节点中来
默认的资源节点为/var/lib/libvirt/images
"/opt/nano/core/data"存储系统镜像文件
可以修改为自己定义的位置
选择光盘镜像上传一个下载的iso镜像文件
选择云主机-创建云主机-定义云主机的信息-来源镜像选择空白镜像(因为我这里是加载的iso镜像-需要安装系统)
选择加载刚才的光盘镜像
选择远程监控-可以看到正在安装系统
还能对已经运行的云主机进行资源的监控
这里简单的实现了云主机实列的创建应用。还有一些其他强大的功能还未探索 重点是使用极为方便,部署工作三分钟搞定。