Nano
基于KVM
技术,使用Go
语言开发,简单易学的虚拟机管理软件,从Web
管理门户、主机监控、镜像克隆到故障切换,功能完备,开箱即用。类似noKvm
、Proxmox
、VE
这类虚拟化管理平台,Nano
无需第三方软件或者依赖库即可执行,安装非常简单。Nano
云平台可以将所有模块部署在同一个服务器或者虚拟机,实现All In One
的最小验证集群。
Nano
平台提供了Installer
安装程序用于自动化部署,最新版本Installer
可以通过 官网下载 或者 Github发布页面 获取。
Installer
会自行选择最合适的配置进行建议, 对于初次安装Nano
的新用户,安装过程中尽量不要调整任何参数 ,如需调整参数、修改配置或者直接升级二进制文件,请在熟悉产品后进行操作。
请使用前务必阅读快速入门手册,熟悉相关概念和流程再进行操作
#支持虚拟化的X86
服务器或者打开嵌套虚拟化(Intel VT-x
/AMD-v
)的虚拟机
#2
核4G
内存50GB
磁盘和一个网络设备
#CentOS 7.7(1908) Minimal
#操作系统安装完成并且网络就绪
#Firewalld
服务启动并且正常运行
#如有Raid
/LVM
请先完成配置,再进行Nano
安装
#下载Nano wget https://nanos.cloud/files/nano_installer_1.2.0.tar.gz #解压 tar zxfv nano_installer_1.2.0.tar.gz #进入目录 cd nano_installer #安装 ./installer
输入"0
,1
,2
"或者"3
"在当前服务器安装所有模块. 当您第一次安装Nano
时,建议您使用选3(全部)安装,安装程序建议的默认配置,无需修改。 如果你有多个网卡设备,请在安装程序的提示中选择连接内网的网卡设备进行安装。配置详情可参考 快速入门手册
模块安装完成后,需要启动模块以提供服务,模块默认安装在/opt/nano
目录下。使用命令手动启动所有模块(假定所有模块安装在同一台服务器), 请注意,必须首先启动Core
模块 。
$cd /opt/nano/core $./core start $cd ../cell $./cell start $ cd ../frontend $./frontend start
当front-end
模块成功启动后,会提示一个形如"192.168.6.3:5870
"的监听地址,使用Chrome
或者Firefox
打开这个地址就可以进行平台管理了。
在浏览器中首次打开Nano
管理页面,会提示创建一个初始管理员,成功后就可以登录平台。
登录系统之后,参考配置手册在计算资源池里添加资源节点之后,就可以开始创建云主机实例了。你也可以上传或者构建新的光盘镜像或者磁盘镜像,用于快速批量部署实例。进入后Nano
WEB
管理界面后,看到的内容如下,界面还是挺美观的。
在下图中设置地址池,否则无法自动为虚拟机分配IP
地址,同时请确保这些地址在同一网络下是正常可用的,并非随意填写。
系统镜像可以自行去官方先下载好,然后通过下方界面进行上传。使用Edge (Chromium)
上传镜像的时候,卡在100%
,原因不明。后来更换Chrome
后就可以了,官方推荐使用Chrome
或Firefox
浏览器。上传后的光盘镜像位于/opt/nano/core/data/media_images
目录,目前还不支持直接在宿主机上wget
下载,只能在线上传镜像,这点感觉不是特别方便。
上方条件准备完毕后即可创建云主机,按下图所示,先插入光盘镜像,然后启动系统,再进入控制台进行安装。
安装Windows Server 2019
后,发现从控制台进入,无法发送Ctrl + Alt + Del
快捷键,解决办法是使用VNC客户端进行连接。点击资源监控的时候浏览器提示内存不足,这个情况应该Windows
虚拟机会出现此问题,解决办法是安装virtio
驱动和qeum agent
,下载地址为:https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.173-9/virtio-win.iso
,不然nano
查看虚拟机资源监控会卡住。
每次都进入/opt/nano/core
目录去管理Nano
的3
个服务,非常不方便,我们可以编写脚本来对Nano
进行管理。脚本已经编写好了,可以直接下载使用:
#下载管理脚本 wget -O /usr/sbin/nano https://raw.githubusercontent.com/helloxz/shell/master/nano.sh #添加执行权限 chmod +x nano
脚本添加后,可以使用下方的命令来快速管理Nano
。
#查看nano状态 nano status #停止nano nano stop #启动nano nano start #重启nano nano restart
继续编写systemd
服务,以便设置开机启动,新建一个nano
服务文件vi /etc/systemd/system/nano.service
,内容如下:
[Unit] Description=Nano - https://nanos.cloud/ After=network.target [Service] Type=forking ExecStart=/usr/sbin/nano ExecRestart=/usr/sbin/nano restart ExecStop=/usr/sbin/nano stop [Install] WantedBy=multi-user.target
服务添加完毕后输入systemctl daemon-reload
刷新刚刚添加的nano
服务,然后就可以使用systemctl
来进行管理了,命令如下:
#设置nano开机启动 systemctl enable nano #启动nano systemctl start nano #停止nano systemctl stop nano #重启nano systemctl restart nano
注意,此服务需要依赖于上方的nano.sh
脚本,脚本已放到Github:https://github.com/helloxz/shell/blob/master/nano.sh
Nano
使用Golang
开发,无需第三方软件或者依赖库即可执行,安装非常简单,相比其它虚拟化管理平台,安装更简单而且不容易出错。目前仅用过VMware
、ESXI
、Nano
这几个虚拟化软件,ESXI
必须使用镜像才能运行,而Nano
只需要CentOS 7
即可安装。有网友分享说Nano
比PVE
更加好用。Nano
也有一些不足,比如光盘镜像必须在线上传,如果您是国外的独立服务器,镜像比较大的情况下,简直是一个噩梦,而ESXI
则可以直接在宿主机上wget
。另外安装Windows
虚拟机后,WEB
控制台那里无法发送Ctrl + Alt + Del
,最后只好用VNC
客户端操作。Nano
使用MIT
许可,无论自用、修改或者商用都无限制,Nano
能满足日常折腾需要,但感觉还不够成熟,如果是商用或者线上正式环境,请自行斟酌考虑。
本文由 podipod软库网 作者:DevOps 发表,转载请注明来源!