迷你主机的AIO(All in one)实战记录【pve+openwrt+windows+centos+群晖】(一)

2024-03-13 10:52

本文主要是介绍迷你主机的AIO(All in one)实战记录【pve+openwrt+windows+centos+群晖】(一),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

        

一、实战背景

        随着Arm芯片架构的普及,越来越多的arm电脑进入c端消费市场,其强大的性能,较低的功耗,较长的续航和良好的设计使得越来越的主机使用arm芯片。但与此带来的问题是,arm主机的虚拟化支持较差,精简指令集无法支持对复杂指令集的虚拟化,对于嵌套虚拟化的灵活需求也支持较差,相比于传统x86显得并不是那么通用。

        因此,正是在此背景下,虽然已经有arm主机办公使用,但是无法得到良好的虚拟化,同时支持的游戏和软件少,入手一台x86的主机主机弥补x86的缺失和通用虚拟化的空白的需求非常急迫。

二、架构选型

        当然,x86的主机千千万,怎么选用什么需要深思熟虑。由于已经有了一台arm的笔记本,再置办一台笔记本显得不那么合宜,因此范围从台式主机中开始选择。传统台式机,体型大,考虑到提及和后续的搬迁属性,觉得台式机的性价比并不如小主机来的那么实在。

        因此,在迷你主机中开始选择。传统的迷你主机以intel的NUC制霸天下,但随着国内厂家的进入,越来越多的OEM厂商开始涌现出来。熟知的小米、联想、华硕、雷神、神舟都开始开始进军迷你主机,新兴的积核、铭凡、魔方也进入选择范围内。

        但是在考虑品牌前,需要对整体的架构一个设计和构想,避免后期选择中反复横跳。本实践中主要考虑的架构有两种,两种方案的根本区别点是cpu的性能,不通的cpu决定了价格和使用方式,一种是低U多机的分布式的多主机方案,另一种的本文所述的高U单机的aio方案,在实践中,本人均做了实现,但是最后优选了aio方案下面做个对比。

架构选型
分布式多机All in One 模式
优势单机成本低,可扩展性极强单机性能强
劣势单机新能差,但组成集群后可以一搏,但最强性能虚拟机受制于单机性能扩展性较差,无法实现多集扩展,可玩性差
难度多机组网复杂,需要额外配置交换节和路由器单机难度较低,仅需考虑本机的问题
综合适合入门,进阶后,会发现性能一般般适合有一定基础的中级玩家,如果对扩展性有要求,可以后期堆叠高性能主机

        明确了架构后,在讨论选型,作者一开始先期使用了分布式方案,使用的是3台intel NUC8的i58beh,单机成本低,配置完成内存和硬盘后,综合单机价格1500元左右,但是由于网络管理复杂,需要进一步的交换机网络设备,综合布线、电源管理和安装集群配置繁琐,单虚拟机的最高新能受限于cpu性能,因此逐渐趋于放弃。

        经过横跳后,最后选择了积核的i713700h的迷你主机,最新版本的有13700h和13900h两个选项,对比数字,我们简单的理解为,13700的主频比13900低0.4Ghz,但是价格便宜了很多,因此把它看作一个高性价比方案不为一种优选。

        当然,大家可能还会有疑问,为什么要选择这个厂家,原因有三:1、积核的主机大小和intel的NUC一样,可以适配已有的散热模块;2、传统老牌厂家并没有推出13700,13900的迷你主机,可选范围直接拉到国内小厂家;3、积核有jd自营,个人感觉售后相对方便,半年内玩坏了能修,比tb有一些安全感(但实际都是听天由命)。

        综上,本人选择了积核的13700h作为本次all in one的基座,配置了1T+ 1T +2T的全固态环境,配置了16G+16G的双通道内存。

三、规划设计

        完成架构设计后,需要对功能和使用方式做进一步规划,对网络连接做进一步规划。对于整体架构,我们做如下设计。

        首先有0号虚拟机:openWrt(1U,2G,10G-ssd)。作为整个主机中的软路由设备,代理虚拟机内的所有虚拟机的路由,进一步的可以作为旁路由介入家里的路由器。配置有三个虚拟网口:

        1个2.5G的WAN,用于上行出口

        1个1G的LAN,用于虚拟机内外的管理网互通(后续考虑透传无限网卡,实现手机热点接入)

        1个1G的LAN1,用于虚拟机的主机的数据网传输

        其次有1号虚拟机:windows10(10U,16G,100+300G-ssd),作为整个主机中的管理主机,用于日常管理、办公、游戏等。配置有两个网口,分别为LAN1,LAN用于与软路由互通。配置远程桌面,通过LAN网可以实现arm电脑通过网线接入windows,尽可能实现0感知远程联入。

        最后有CentOS虚拟机 X 3:(单机2U,4G,50G-ssd,外加100G的NFS),作为开发用途,大家K8S集群,用于容器化部署启动后续的项目。主节点配置双网卡,实现管理上网,其他节点均仅配置LAN1数据网。       

        后续还有群晖NAS:用于家庭内的NAS管理

四、实践记录

        1、pve的安装:

                装机准备:官方镜像下载地址:Proxmox VE   版本用最新的8版本就可以,7版本测了试一下好像没烧写成功,不过也不纠结了。烧写镜像使用balenaEtcher - Flash OS images to SD cards & USB drives  这个比之前传统的UtraISO要好用一些。 

                  烧写镜像:设置BIOS启动顺序第一位为usb启动,进入界面后,可以无脑下一步,在配置硬盘时可以留意一下,如果有多硬盘,可以考虑做RAID。之后便是ip地址设定,此处需要为主机设置管理ip,可以结合自身喜好,配置一个管理地址,但是建议避开192开头的,避免与WAN的ip段重复。之后便可以下一步进入烧写,烧写很快,完成烧写后,重启主机便可进入pve的界面。

                

这篇关于迷你主机的AIO(All in one)实战记录【pve+openwrt+windows+centos+群晖】(一)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/804627

相关文章

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

MyBatis 动态 SQL 优化之标签的实战与技巧(常见用法)

《MyBatis动态SQL优化之标签的实战与技巧(常见用法)》本文通过详细的示例和实际应用场景,介绍了如何有效利用这些标签来优化MyBatis配置,提升开发效率,确保SQL的高效执行和安全性,感... 目录动态SQL详解一、动态SQL的核心概念1.1 什么是动态SQL?1.2 动态SQL的优点1.3 动态S

Spring Boot 配置文件之类型、加载顺序与最佳实践记录

《SpringBoot配置文件之类型、加载顺序与最佳实践记录》SpringBoot的配置文件是灵活且强大的工具,通过合理的配置管理,可以让应用开发和部署更加高效,无论是简单的属性配置,还是复杂... 目录Spring Boot 配置文件详解一、Spring Boot 配置文件类型1.1 applicatio

Pandas使用SQLite3实战

《Pandas使用SQLite3实战》本文主要介绍了Pandas使用SQLite3实战,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1 环境准备2 从 SQLite3VlfrWQzgt 读取数据到 DataFrame基础用法:读

MySQL INSERT语句实现当记录不存在时插入的几种方法

《MySQLINSERT语句实现当记录不存在时插入的几种方法》MySQL的INSERT语句是用于向数据库表中插入新记录的关键命令,下面:本文主要介绍MySQLINSERT语句实现当记录不存在时... 目录使用 INSERT IGNORE使用 ON DUPLICATE KEY UPDATE使用 REPLACE

Python 中的异步与同步深度解析(实践记录)

《Python中的异步与同步深度解析(实践记录)》在Python编程世界里,异步和同步的概念是理解程序执行流程和性能优化的关键,这篇文章将带你深入了解它们的差异,以及阻塞和非阻塞的特性,同时通过实际... 目录python中的异步与同步:深度解析与实践异步与同步的定义异步同步阻塞与非阻塞的概念阻塞非阻塞同步

Python Dash框架在数据可视化仪表板中的应用与实践记录

《PythonDash框架在数据可视化仪表板中的应用与实践记录》Python的PlotlyDash库提供了一种简便且强大的方式来构建和展示互动式数据仪表板,本篇文章将深入探讨如何使用Dash设计一... 目录python Dash框架在数据可视化仪表板中的应用与实践1. 什么是Plotly Dash?1.1

CentOS 7部署主域名服务器 DNS的方法

《CentOS7部署主域名服务器DNS的方法》文章详细介绍了在CentOS7上部署主域名服务器DNS的步骤,包括安装BIND服务、配置DNS服务、添加域名区域、创建区域文件、配置反向解析、检查配置... 目录1. 安装 BIND 服务和工具2.  配置 BIND 服务3 . 添加你的域名区域配置4.创建区域

Linux系统之主机网络配置方式

《Linux系统之主机网络配置方式》:本文主要介绍Linux系统之主机网络配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、查看主机的网络参数1、查看主机名2、查看IP地址3、查看网关4、查看DNS二、配置网卡1、修改网卡配置文件2、nmcli工具【通用

Python实战之屏幕录制功能的实现

《Python实战之屏幕录制功能的实现》屏幕录制,即屏幕捕获,是指将计算机屏幕上的活动记录下来,生成视频文件,本文主要为大家介绍了如何使用Python实现这一功能,希望对大家有所帮助... 目录屏幕录制原理图像捕获音频捕获编码压缩输出保存完整的屏幕录制工具高级功能实时预览增加水印多平台支持屏幕录制原理屏幕