pve/README.md

170 lines
5.9 KiB
Markdown
Raw Normal View History

2023-02-15 11:55:29 +08:00
# PVE
2023-02-13 17:55:00 +08:00
2023-02-26 10:49:13 +08:00
### 前言
建议debian在使用前尽量使用最新的系统
非debian11可使用 [debian一键升级](https://github.com/spiritLHLS/one-click-installation-script#%E4%B8%80%E9%94%AE%E5%8D%87%E7%BA%A7%E4%BD%8E%E7%89%88%E6%9C%ACdebian%E4%B8%BAdebian11) 来升级系统
当然不使用最新的debian系统也没问题只不过得不到官方支持
2023-04-04 19:59:53 +08:00
***请确保使用前机器可以重装系统不保证本套脚本不造成任何BUG!!!***
2023-04-04 14:31:00 +08:00
2023-04-04 19:59:53 +08:00
***如果服务器是VPS而不是独服可能会出现各种各样的BUG请做好部署失败重装服务器的准备!!!***
2023-04-04 14:31:00 +08:00
2023-02-26 10:49:13 +08:00
### 配置与系统要求
2023-04-04 09:54:59 +08:00
只适配Debian系统(非Debian无法通过APT源安装官方只给了Debian的镜像其他系统只能使用ISO安装)
2023-02-15 15:26:18 +08:00
2023-02-15 17:31:06 +08:00
系统要求Debian 8+
硬件要求2核2G内存x86_64架构服务器
2023-02-17 10:46:03 +08:00
可开KVM的硬件要求VM-X或AMD-V支持-(部分VPS和全部独服支持)
2023-02-15 17:31:06 +08:00
2023-04-01 22:48:43 +08:00
不符合可开KVM的硬件要求的可开LXC虚拟化的服务器
2023-02-18 16:16:06 +08:00
遇到选项不会选的可无脑回车安装所有脚本内置国内外IP自动判断使用的是不同的安装源与配置文件
2023-02-17 10:20:37 +08:00
2023-02-15 15:36:20 +08:00
### 检测硬件环境
2023-02-15 11:28:28 +08:00
2023-02-26 10:26:37 +08:00
- 检测硬件环境是否可嵌套虚拟化KVM类型的服务器
- 检测系统环境是否可嵌套虚拟化KVM类型的服务器
2023-02-24 14:14:22 +08:00
- 不可嵌套虚拟化KVM类型的服务器也可以开LXC虚拟化的服务器
2023-02-13 17:24:26 +08:00
2023-02-13 17:24:15 +08:00
```
2023-02-15 15:36:20 +08:00
bash <(wget -qO- --no-check-certificate https://raw.githubusercontent.com/spiritLHLS/pve/main/check_kernal.sh)
2023-02-13 17:24:15 +08:00
```
2023-02-15 10:41:43 +08:00
2023-04-03 23:19:27 +08:00
### PVE基础安装(一键安装PVE)
2023-02-15 10:41:43 +08:00
2023-02-24 14:37:13 +08:00
- 安装的是当下apt源最新的PVE
- 比如debian10则是pve6.4debian11则是pve7.x
2023-02-26 10:45:58 +08:00
- /etc/hosts文件修改(修正商家hostname设置错误以及新增PVE所需的内容)
- 已设置```/etc/hosts```为只读模式,避免重启后文件被覆写,如需修改请使用```chattr -i /etc/hosts```取消只读锁定,修改完毕请执行```chattr +i /etc/hosts```只读锁定
- 检测是否为中国IP如果为中国IP使用清华镜像源否则使用官方源
2023-04-04 12:22:09 +08:00
- 安装PVE开虚拟机需要的必备工具包
- 替换apt源中的企业订阅为社区源
2023-04-04 18:08:26 +08:00
- 打印查询Linux系统内核和PVE内核是否已安装
2023-04-04 18:53:18 +08:00
- 查询网络配置是否为dhcp配置的V4网络如果是则转换为静态地址避免重启后dhcp失效已设置为只读模式如需修改请使用```chattr -i /etc/network/interfaces.d/50-cloud-init```取消只读锁定,修改完毕请执行```chattr +i /etc/network/interfaces.d/50-cloud-init```只读锁定
2023-04-04 19:55:59 +08:00
- 检测```/etc/resolv.conf```是否为空,为空则设置检测```8.8.8.8```的开机自启添加DNS的systemd服务
2023-02-26 10:45:58 +08:00
- 新增PVE的APT源链接后下载PVE并打印输出登陆信息
2023-04-04 18:19:05 +08:00
- 配置完毕需要重启系统加载新内核
2023-02-15 11:55:29 +08:00
2023-02-24 13:34:55 +08:00
```
2023-02-24 14:37:13 +08:00
curl -L https://raw.githubusercontent.com/spiritLHLS/pve/main/install_pve.sh -o install_pve.sh && chmod +x install_pve.sh && bash install_pve.sh
2023-02-24 13:34:55 +08:00
```
2023-02-24 14:37:13 +08:00
- 安装过程中可能会退出安装需要手动修复apt源如下图所示修复完毕后再次执行本脚本
2023-02-20 20:19:50 +08:00
![图片](https://user-images.githubusercontent.com/103393591/220104992-9eed2601-c170-46b9-b8b7-de141eeb6da4.png)
![图片](https://user-images.githubusercontent.com/103393591/220105032-72623188-4c44-43c0-b3f1-7ce267163687.png)
2023-02-24 14:14:22 +08:00
### 预配置环境
2023-02-15 14:48:37 +08:00
2023-02-24 14:14:22 +08:00
- 创建资源池mypool
- 检测AppArmor模块并试图安装
2023-02-15 14:48:37 +08:00
```
2023-02-15 15:04:30 +08:00
bash <(wget -qO- --no-check-certificate https://raw.githubusercontent.com/spiritLHLS/pve/main/build_backend.sh)
2023-02-15 14:48:37 +08:00
```
2023-02-27 16:46:38 +08:00
### 自动配置IPV4的NAT网关
2023-02-24 13:34:55 +08:00
2023-04-10 14:28:51 +08:00
- **使用前请保证重启过服务器且PVE能正常使用WEB端再执行**
2023-02-25 22:21:29 +08:00
- 创建vmbr0
2023-02-27 17:42:48 +08:00
- 创建vmbr1(NAT网关)
- 开NAT虚拟机时网关IPV4使用```172.16.1.1```IPV4/CIDR使用```172.16.1.x/24```这里的x不能是1
2023-02-25 22:22:51 +08:00
- 可能需要web端手动点应用配置按钮应用一下
2023-02-26 10:41:59 +08:00
- 想查看完整设置可以执行```cat /etc/network/interfaces```查看
2023-04-10 14:34:56 +08:00
- 加载iptables并设置回源且允许NAT端口转发
2023-02-24 13:34:55 +08:00
2023-02-23 21:43:34 +08:00
```
2023-02-26 10:36:52 +08:00
bash <(wget -qO- --no-check-certificate https://raw.githubusercontent.com/spiritLHLS/pve/main/build_nat_network.sh)
2023-02-23 21:43:34 +08:00
```
2023-04-11 13:18:56 +08:00
### 单独生成KVM虚拟化的VM(一键生成KVM虚拟化的NAT服务器)
2023-02-27 17:45:30 +08:00
2023-04-11 12:10:27 +08:00
- 自动开设NAT服务器
- 自动进行内外网端口映射
2023-04-11 12:10:09 +08:00
```
2023-04-11 12:21:56 +08:00
curl -L https://raw.githubusercontent.com/spiritLHLS/pve/main/buildvm.sh -o buildvm.sh && chmod +x buildvm.sh
2023-04-11 12:10:09 +08:00
```
2023-04-11 13:18:19 +08:00
#### 使用方法
- 系统支持:详见 [跳转](https://github.com/spiritLHLS/Images/releases/tag/v1.0) 中列出的系统,使用时只需写文件名字,不需要.qcow2尾缀
```
./buildvm.sh VMID 用户名 密码 CPU核数 内存 硬盘 SSH端口 80端口 443端口 外网端口起 外网端口止 系统
```
#### 示例
测试开一个NAT服务器
2023-04-11 12:10:09 +08:00
2023-04-11 13:22:45 +08:00
以下示例开设VMID为102的虚拟机用户名是test1密码是1234567CPU是1核内存是512MB硬盘是5GSSH端口是4000180端口是40002443端口是40003
同时内外网映射端口一致的区间是50000到50025系统使用的是ubuntu20
2023-04-11 12:21:56 +08:00
```
./buildvm.sh 102 test1 1234567 1 512 5 40001 40002 40003 50000 50025 ubuntu20
```
2023-04-11 13:18:19 +08:00
开设完毕可执行
```
cat vm102
```
查看信息
#### 删除示例
2023-04-11 12:21:56 +08:00
- 删除端口映射删除测试机器
2023-04-11 12:10:09 +08:00
```
2023-04-11 12:21:56 +08:00
qm stop 102
qm destroy 102
iptables -t nat -F
iptables -t filter -F
service networking restart
systemctl restart networking.service
2023-04-11 13:18:19 +08:00
rm -rf vm102
2023-04-11 12:10:09 +08:00
```
2023-04-11 13:18:19 +08:00
#### 相关qcow2镜像
- 已预安装开启cloudinit开启SSH登陆预设值SSH监听V4和V6的22端口开启允许密码验证登陆开启允许ROOT登陆
https://github.com/spiritLHLS/Images/releases/tag/v1.0
## 以下脚本测试开发中勿要使用
2023-04-11 12:21:56 +08:00
### 批量开设NAT的KVM虚拟化的VM
2023-04-11 13:18:19 +08:00
- **使用前需要保证未使用过上面单独生成KVM虚拟化的VM的测试命令否则可能出现BUG**
- 可多次运行批量继承设置
2023-04-11 12:21:56 +08:00
- 自动开设NAT服务器
- 自动进行内外网端口映射
2023-04-11 12:10:09 +08:00
```
2023-04-11 12:54:09 +08:00
curl -L https://raw.githubusercontent.com/spiritLHLS/pve/main/create_vm.sh -o create_vm.sh && chmod +x create_vm.sh && bash create_vm.sh
2023-04-11 12:10:09 +08:00
```
2023-02-27 17:45:30 +08:00
2023-04-11 13:18:19 +08:00
开设完毕可执行
```
cat vmlog
```
查看信息
2023-02-16 16:11:32 +08:00
## 友链
VPS融合怪测评脚本
https://github.com/spiritLHLS/ecs