惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
Netflix TechBlog - Medium
Blog — PlanetScale
Blog — PlanetScale
月光博客
月光博客
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
爱范儿
爱范儿
量子位
博客园 - 聂微东
Engineering at Meta
Engineering at Meta
WordPress大学
WordPress大学
GbyAI
GbyAI
MyScale Blog
MyScale Blog
IT之家
IT之家
P
Proofpoint News Feed
M
MIT News - Artificial intelligence
The Cloudflare Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Hugging Face - Blog
Hugging Face - Blog
The Register - Security
The Register - Security
Microsoft Security Blog
Microsoft Security Blog
博客园_首页
MongoDB | Blog
MongoDB | Blog
F
Fortinet All Blogs
博客园 - 三生石上(FineUI控件)
Y
Y Combinator Blog
雷峰网
雷峰网
V
Visual Studio Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
Last Week in AI
Last Week in AI
博客园 - 叶小钗
D
DataBreaches.Net
B
Blog
B
Blog RSS Feed
大猫的无限游戏
大猫的无限游戏
aimingoo的专栏
aimingoo的专栏
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
The GitHub Blog
The GitHub Blog
云风的 BLOG
云风的 BLOG
Recent Announcements
Recent Announcements
阮一峰的网络日志
阮一峰的网络日志
小众软件
小众软件
腾讯CDC
T
Threat Research - Cisco Blogs
SecWiki News
SecWiki News
Martin Fowler
Martin Fowler
D
Docker
Cisco Talos Blog
Cisco Talos Blog
T
Tenable Blog
Webroot Blog
Webroot Blog
宝玉的分享
宝玉的分享

WAYJAM

告别 NPM Token:迁移到 Trusted Publishing 全记录 Sing-box:IPv6 优先出站与 Netflix 强制 IPv6 分流 [All In One] HomeLab 虚拟化 iKuai + Mihomo - IPv6 支持 [All In One] HomeLab 虚拟化 iKuai + Mihomo LiteLLM 多模型 API 中转 MacOS Bootstrp with Nix Fluency Support Full Rss [All In One] PVE 中 OpenWrt LXC 重启问题 Tabby 终端配置以及配置全平台同步 Cloudflare Tunnel + Nginx Proxy Manager:服务穿透 PVE 7 升级 8 笔记 PVE 安装 Android x86 & 安装 Magisk Fly.io 部署 Artalk 评论系统 [All In One] HomeLab 2023 搭建总结 [All In One] 轻量的文件 & 媒体服务器配置 [All In One] R71s 主机散热改造 [All In One] PVE LXC 安装 OpenWrt 软路由以及网络规划 从零开始配置Rime - 2023 Self Hosted Bitwarden + Cloudfare HTTPS Debian NFS Server 以及 MacOS Client AdguardHome 和 Clash 透明代理配合使用 使用 Kind 部署 Prow 手记 BackBlaze B2 + Cloudfare Worker 图床 PicGo Amazon S3 插件 自动给模板生成 Inline-Svg Hugo Theme WeUI 发布! Hugo Theme Fluency 发布! Docker Clash 和 透明代理 有限状态机与分布式熔断器 「家庭娱乐」N1刷 EmuELEC 做游戏盒子 「家庭娱乐」N1刷 Armbian 做家庭服务器 分布式限流器之令牌桶实现 Kustomize 管理 Kubernetes 集群 Mixedpaper 主题发布到 Hugo 官方仓库 About 优化 Docker 构建时间 解决 etcd 与 grpc 不兼容问题 Kubernetes 部署 ElasticSearch7 集群 从零开始配置Rime - 2019 转移域名,更换评论系统,更换图床 搭建 NPM Proxy 之预编译包 搭建 NPM Proxy 美区Apple ID终于绑定PayPal成功 无可奈何的页面增强方案 LogStash的调试 GitLab Shell如何通过SSH工作 Python打开类 荒原 [Theme] Bitcron主题Mixedpaper发布! Ngrok端口转发 故事之五 - 柠檬茶 故事之四 - 我是天才 故事之一 Arch滚挂了怎么办? OpenWrt内网IPv6之二 某次更新后Primusrun不能启动Dota2 OpenWrt的DNS智能解析方案 替换Google CDN库 使用Privoxy将socks代理转化为http代理 ArchLinux之软件篇 再次安装ArchLinux手记 博客再次重生 搞了个Minecraft服务器 【LnV工作室荣誉出品】小苹果MV华农大版 雨梦 醉臥石中笑人間 路由器内网IPV6地址分配 OPENWRT安装软件的两个问题 路由器上进行锐捷认证 改了BIOS的LOGO Windows下搭建我的C/C++的开发环境 Linux下用Mentohust认证校园网 Archlinux+Windows 双系统安装手记(UEFI+GPT) Google-code-prettify代码高亮 《末世迷踪》 Hello Net World!
[All In One] 安装 Proxmox VE 7.4
2023-05-08 · via WAYJAM

最近将 N1 升级成 R71S 小主机,记录一下安装 PVE 的步骤与问题。

Proxmox Virtual Environment(PVE)是一款开源的服务器虚拟化管理平台,可以让用户轻松管理和监控大量的虚拟化和容器化服务器。PVE支持KVM和LXC虚拟化技术,提供了一个易于使用的Web界面,可以让用户创建、管理、备份和恢复虚拟主机、容器和存储。 PVE采用了分布式架构,可以轻松管理多个远程服务器,并提供了高可用性、容错和负载均衡的功能。此外,PVE还支持各种虚拟存储技术,如网络文件系统(NFS)、本地存储和iSCSI卷,可以便捷地存储虚拟机的镜像、容器和数据。

一、下载镜像

  1. 官方下载:https://www.proxmox.com/en/downloads/category/iso-images-pve
  2. 国内镜像下载(如清华镜像源):https://mirrors.tuna.tsinghua.edu.cn/proxmox/iso

二、制作启动盘

由于小主机和配件刚买回来还需要使用 PE 进行一些检测,我使用了在 UTM 下 Windows 虚拟机使用 ventoy 制作多引导的启动 U 盘。另外,MacOS 下如果没有多引导的需求则可以直接使用 balenaEther(没找到类似 ventoy 的工具)烧录启动盘。

写入 ventoy 后(将 U 盘会分为两个盘)将 PVE 的 ISO 文件放在 Ventoy 盘下

三、安装

  1. 将制作好的引导 U 盘插入主机,开机启动(最好先进 Bios 修改引导顺序)
  2. 选择 Install Proxmox VE 并回车
    • 点击 I Agree 同意协议
  3. 磁盘配置
    • 选择需要安装 PVE 的硬盘
    • SWAP 分区:如有大内存则完全可以将 swap 分区设置为 0,这里我安装了 16G 的物理内存,由于硬盘是 1TB 的 m.2 NVME 固态还是设置了 16G 的虚拟内存。
    • 点击 Next 完成
  4. 本地化配置
    • 国家选择 China
    • 时区会自动调至 Asia/Shanghai
    • 键盘保持默认的 U.S.English
    • 点击 Next 完成
  5. 管理员配置
    • 输入密码和确认密码
    • 填写邮箱地址
    • 点击 Next 完成
  6. 网络配置
    • 网卡:选择哪个网口作为管理端口,默认第一个网口
    • 域名:自定义即可
    • IP:即 PVE 的管理 IP,例如:192.168.100.10(下面有说明)
    • 网关:即后续安装的软路由的网关,例如:192.168.100.1
    • DNS:填写网关 IP 或者国内 DNS 地址,例如:114.114.114.114
    • 点击 Next 完成
  7. 点击 Install 开始安装然后等待重启
  8. 重启之后将 U 盘移除

网络配置相关说明

这里的安装配置需考虑整体网络拓扑,如果 PVE 上层还有路由,则 IP 和网关填写上层路由网段信息即可,如果打算 PVE 内虚拟主路由,则自行选择一个网段。

如果没有主路由,则需要用网线将主机和电脑连接,且配置电脑的网络配置:

IP 地址:填写和 PVE 管理 IP 同一网段的地址 子掩网码:255.255.255.0

否则只需要将电脑和主机连接到上层路由即可。

至此,安装完毕,可以通过 Web 页面打开或者通过 SSH 连接到 PVE。

四、配置

4.1 软件源配置

然后执行更新

# debian 源配置更新后
apt update
apt upgrade -y
# 更新完 CT 模板配置
systemctl restart pvedaemon.service
pveam update

4.2 更新内核以及微码

我的小主机CPU是 N6000,由于以 N5105 为代表的 11 代 Intel CPU 在虚拟化场景,大面积出现重启崩溃的现象,PVE 需更新内核和微码。详情可参考以下帖子:

内核

使用 apt-cache search pve-kernel 查看当前 PVE 最新内核(如今天 2023-05-08 的最新内核为 6.2)

apt install pve-kernel-6.2
apt -y dist-upgrade
reboot

重启后查看内核版本 uname -r

更新 Intel Microcode

apt install intel-microcode

更新系统引导

update-initramfs -u -k all
reboot

重启后查看 microcode 版本(如 0x24000024):grep 'stepping\|model\|microcode' /proc/cpuinfo

4.3 虚拟内存策略的调整

即便是使用了 NVME 的虚拟内存,我也倾向于使用更多的物理内存。PVE 可以自行调整 Linux 的内核参数:

首先查看当前虚拟内存策略:cat /proc/sys/vm/swappiness,默认为 60。

vm.swappiness:取值为 0-100,值越大则表示越倾向于使用 swap。 比如物理内存为 16GB,设置 vm.swappiness=30,则系统会在使用 16GB * (100 - 30)% = 11.2GB 后使用虚拟内存。

# vi /etc/sysctl.conf
# 增加
vm.swappiness=30
# 应用配置
sysctl -p

4.4 开启硬件直通

  1. 编辑 grub 配置:vi /etc/default/grub

找到这一行:

GRUB_CMDLINE_LINUX_DEFAULT="quiet"

注释并在下面添加或直接修改成:

GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on"
  1. 更新 grub:update-grub
  2. 调整所需模块 vi /etc/modules
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
  1. 更新系统引导
update-initramfs -u -k all
reboot
  1. 验证
dmesg | grep iommu
# 出现如下例子。则代表成功
[    0.847285] pci 0000:00:02.0: Adding to iommu group 0
[    0.848441] pci 0000:00:00.0: Adding to iommu group 1
[    0.848467] pci 0000:00:04.0: Adding to iommu group 2
[    0.848508] pci 0000:00:14.0: Adding to iommu group 3
[    0.848527] pci 0000:00:14.2: Adding to iommu group 3
find /sys/kernel/iommu_groups/ -type l
# 出现很多直通组,表示成功开启
/sys/kernel/iommu_groups/17/devices/0000:05:00.0
/sys/kernel/iommu_groups/7/devices/0000:00:1c.3
/sys/kernel/iommu_groups/15/devices/0000:03:00.0
/sys/kernel/iommu_groups/5/devices/0000:00:17.0
/sys/kernel/iommu_groups/13/devices/0000:01:00.0
/sys/kernel/iommu_groups/3/devices/0000:00:14.2

4.5 local-lvm 优化

PVE 默认安装会创建 local 和 local-lvm 两个存储。其中 local 大约磁盘容量的 10%,存储类别为目录。 local-lvm 的存储类别为 lvm-thin。实际使用 lvm-thin 效率比目录低,建议不适用 thin 模式。

如果要将 local-lvm 转换成目录模式可参照此文:https://www.cnblogs.com/doracloud/p/16874171.html

如果要将 local-lvm 合并至 local 可参照此文:https://foxi.buduanwang.vip/virtualization/pve/1434.html/

这里记录合并至 local 的方法。

  1. 打开 Web 页面 - 数据中心 - 存储 - 编辑 local - 修改内容选中全部

  2. 删除 lvm-local:Shell 执行 lvremove pve/data

  3. 扩容 local:Shell 执行 lvextend -rl +100%FREE /dev/pve/root

  4. 打开 Web 页面 - 数据中心 - 存储 - 删除 local-lvm

五、其他

查看硬盘信息
apt install smartmontools
smartctl -a /dev/nvme0n1
查看当前 CPU 工作模式
apt install linux-cpupower
cpupower frequency-info
移除无用内核
# 查看当前安装的内核
dpkg --get-selections |grep kernel
移除内核
dpkg --purge --force-remove-essential pve-kernel-***-pve
# 更新引导菜单  
update-grub  
# 重启PVE  
reboot
获取传感器温度
apt install lm-sensors