虚拟个家用服务器集群(3):更换 PVE 软件源

风无痕
July 31,2023

前言

很多人想建个人博客类的网站,这就需要网站服务器;需要管理手机、电脑中积累的照片,每张照片可都是人生一个片段的记录,需要管理微信中收发的各种文档等等,这就需要一台 NAS 即 Network Attached Storage(网络附属存储),NAS 本质上也是一台服务器;更有甚者想借助 NextCloud 之类的服务器平台搭建个人(群组)云盘;总之需要很多台服务器为自己的生活增加便利性、拓展内涵。是购买商家的云服务还是自己在家搭建?是用一台服务器达成全部需求还是用几台专业的服务器分别达成不同需求?软硬件怎么配置?什么方案兼有经济性、安全性和可靠性?

现在的个人电脑都很强了,Windows 和 Linux 操作系统中都有很多虚拟化软件,既然有如此之多需要厘清的问题,我们在实践之前何不试验在自己的电脑中虚拟一下、找到这些问题的答案呢?我的构想是,在个人电脑中用 PVE 这个平台来虚拟个服务器虚拟化集群,用这个服务器虚拟化集群分别实现网页服务器、NAS 以及个人云盘。通过这个试验,我们来找到上述问题的答案,再在实践中得以贯彻以节省成本、少走弯路。

上一篇,试验了 PVE 虚拟机的系统安装、重启并进入登录状态。由于 PVE 系统提供了浏览器中的图形管理界面,我们需要在浏览器中进入该界面,并进行软件源更换和系统更新,这便是本篇试验的内容。

进入 PVE 图形管理界面

正如上篇 PVE 虚拟机重启、进入登录状态后 Shell 显示的信息所提示的,我们应该用浏览器通过连接地址 https://<PVE's IP Address>:8006/ 来设置该 PVE 虚拟服务器集群,首先需要打开 PVE 浏览器图形管理界面。

  • 在 PVE 虚拟机的宿主机(即我们的个人电脑)的浏览器地址栏中输入 https://192.168.100.188:8006/,在忽略了“隐私错误”后随即出现图形管理界面的登录页面。

  • 选择合适的语言后输入用户名(目前只有 root 用户)、安装时设置的密码并登录。

  • 忽略“无有效订阅”提示后,浏览器中的 PVE 图形管理界面就呈现在面前了。

更换软件源、安全更新源

Proxmox VE 基于 Debian Linux,他们的软件源、安全更新源服务器均在境外。根据我们既有的经验,用这些源进行软件安装、更新的网络速度太慢,甚至是经常失败,我们需要更换为国内镜像源。查询后发现, 在清华大学、中国科学技术大学等为数不多镜像站有 Proxmox 镜像源,且清华大学镜像站 https://mirrors.tuna.tsinghua.edu.cn/使用帮助 比较清晰、易于理解。这里就更换为清华镜像站的镜像源。

PS:各种开源软件的源国内大学镜像详见 校园网联合镜像站

  • 在 PVE 图形管理界面打开名为 xterm.js 的 Shell 模拟器,如下图。

  • 随即,浏览器在新页面中打开了该 Shell 模拟器,后续的设置我们均在这个 Shell 模拟器中进行。

​ PS:之所以不在 PVE 虚拟机的 Shell 或者图形管理界面的另一个名为 noVNC 的 shell 中进行设置,都因为无法在他们中进行文本的复制粘贴。

  • 根据清华源镜像的帮助文档,首先更换 Debian 软件源:参考 Debian 软件仓库镜像使用帮助,修改 /etc/apt/sources.list

    • 在 Shell 模拟器中,输入如下命令以避免无法拉取 HTTPS 源的情况出现。

      apt install apt-transport-https ca-certificates
      
    • 在 Shell 模拟器中用 nano 命令修改 /etc/apt/sources.list 为以下内容:

      # 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
      deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm main contrib non-free non-free-firmware
      # deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm main contrib non-free non-free-firmware
      
      deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmware
      # deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmware
      
      deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-backports main contrib non-free non-free-firmware
      # deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-backports main contrib non-free non-free-firmware
      
      deb https://mirrors.tuna.tsinghua.edu.cn/debian-security bookworm-security main contrib non-free non-free-firmware
      # deb-src https://mirrors.tuna.tsinghua.edu.cn/debian-security bookworm-security main contrib non-free non-free-firmware
      
      # deb https://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
      # # deb-src https://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
      

      PS:这里考虑安全更新的网络速度,选择了镜像站安全更新软件源;官方安全更新软件源与镜像站安全更新软件源两者只能取一。

    • 在 Shell 模拟器中输入以下命令,关闭 HTTP Pipelining 特性解决 “apt 的 HTTP Pipelining 特性与 Nginx 服务器疑似存在一定的不兼容问题”。

      echo "Acquire::http::Pipeline-Depth \"0\";" > /etc/apt/apt.conf.d/99nopipelining
      
  • 更换 (Proxmox)软件源:在 Shell 模拟器中用 nano /etc/apt/sources.list.d/pve-no-subscription.list 命令新建文件 /etc/apt/sources.list.d/pve-no-subscription.list,内容如下。

    # 使用帮助是针对基于版本号为 bullseye 的 Debian 的 Proxmox ,Proxmox 8.0-2 是基于版本号 bookworm 的 Debian,须调整。
    deb https://mirrors.tuna.tsinghua.edu.cn/proxmox/debian/pve bookworm pve-no-subscription
    
  • 注释掉 Ceph 和 pve-enterprise 两个源:在 PVE 系统的 /etc/apt/sources.list.d 目录下的两个文件 ceph.listpve-enterprise.list 中分别提供了 Proxmox VE 的开源软件存储平台 Ceph 的源和企业版 (pve-enterprise )的源,在更新时会出现网络、授权等问题,且我们暂不研究这些复杂内容,对于完美主义者不希望更新时出现问题。在 Shell 模拟器中用 nano 命令编辑这两个文件,把这两个源的代码前加 # 注释掉。编辑后内容分别如下。

    # /etc/apt/sources.list.d/ceph.list
    #deb https://enterprise.proxmox.com/debian/ceph-quincy bookworm enterprise
    
    # /etc/apt/sources.list.d/pve-enterprise.list
    #deb https://enterprise.proxmox.com/debian/pve bookworm pve-enterprise
    
  • 清华源 使用帮助 所说的 CT Templates 源的内容,同理暂不予处理。

更新源及发现的问题

这样,我们把 PVE 的软件源、安全更新源全部更换为清华镜像源了,可能产生问题的一些因素已经处理,且注释掉了一些暂不需要的源,可以进行源更新了。

  • 更新源:在 Shell 模拟器中输入如下命令,以更新源。

    apt update
    
  • 出现的问题:源更新结果如下图,明显出现问题,从 Shell 的反馈信息中可以看出,是无法解析(failure resolving)清华源域名 mirrors.tuna.tsinghua.edu.cn 导致无法拉取目录文件(index files)。

问题原因排查

PVE 虚拟机的网络设置似乎出现了问题,或者是用于域名解析的 DNS 服务器设置错误,或者是虚拟机根本就没有与路由器连接。那么我们用检查网络常用的 ping 命令来测试一下吧。

  • 检查能否连接 DNS 服务器:打开 PVE 虚拟机的域名解析设置文件 /etc/resolv.conf 可以看到,设置的 DNS 服务器为路由器 192.168.2.1,ping 一下该服务器,显然 PVE 虚拟机无法连接 DNS 服务器,PVE 虚拟机与路由器无网络连接。

  • 检查 PVE 虚拟机网络设置:打开 PVE 虚拟机的网络适配器配置文件 /etc/network/interfaces ,发现网关等设置正确、但 IP 地址(address) 为 192.168.100.188,上一篇考虑笔记本电脑更换使用场所的情况做了这样设置的,与路由器并不在同一网段,尽管用宿主机的浏览器能打开 PVE 图形管理界面,但 PVE 虚拟机并不能与路由器连接、当然不能与清华源镜像或者其他外网连接。

更改 IP 地址并更新系统

问题原因查明,解决问题就简单了;问题解决后,再更新源、更新系统。

  • 更改 PVE 虚拟机的 IP 地址:在 Shell 模拟器中用 nano 命令编辑 PVE 虚拟机的 /etc/network/interfaces 文件,使得PVE 虚拟机的 IP 地址与路由器同一网段,这里就设为 192.168.2.188 ,保存后退出。

  • 重启 PVE 虚拟机和打开图形管理界面:在 Shell 模拟器中输入 reboot 命令重启虚拟机,新设置的 IP 地址已经生效,进入 PVE 图形管理界面时输入的地址也应该调整为 https://192.168.2.188:8006/ ,尽管 PVE 虚拟机重启后 Shell 的提示信息尚未改变。

  • 在 PVE 的图形管理界面重新打开 Shell 模拟器,输入源更新、系统更新命令 apt update && apt upgrade -y,系统更新顺利完成。

PS:个人电脑更换使用场所后,网络的网关一般会发生变化,用网关作为DNS 服务器的话也就会发生变化。在此情景下,为了 PVE 虚拟机网络正常,需要重新编辑 PVE 虚拟机的 DNS 配置文件 /etc/resolv.conf ,把当前的网关设为 DNS 服务器,更为保险的是把 8.8.8.8114.114.114.114 等通用网关服务器添加为备用 DNS 服务器;还需编辑网络适配器配置文件 /etc/network/interfaces,使得所设置网关与当前网络的网关一致,并使得 PVE 虚拟机的 IP 地址与当前网络在同一网段。

这样本次试验用的 PVE 虚拟机的源就更换成了清华镜像源,并做了系统更新;顺便解决了上篇中 PVE 虚拟机安装前设置时错误设置 PVE 虚拟机 IP 地址的问题。下一篇,我们对 PVE 虚拟机系统进行存储相关设置等一些其他设置。

参考资料

本作品采用 知识共享署名 4.0 国际许可协议 进行许可。
本文链接:http://t.csdn.cn/72Oys

WeChat

  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
在SQL Server 2019中,可以通过创建两个虚拟服务器来搭建集群集群可以提高数据库系统的可用性和可靠性,通过在多个服务器间分配负载,保证系统的持续性能和可用性,同时提高了系统的容错能力。 首先,需要创建两个虚拟服务器,使其能够相互通信。然后,安装SQL Server 2019软件,安装过程中需要注意选择“Failover Cluster Installation”选项,以使SQL Server能够在集群中使用。 接着,在SQL Server Configuration Manager中启用“SQL Server Services”和“SQL Server Agent Services”,并设置它们在集群中运行。然后,在群集管理员中创建一个群集,并设置群集节点。在设置群集时,需要选择SQL Server相应的配置信息,如网络名称、IP地址等。 在群集中设置好后,需要创建一个共享的存储磁盘以在服务器之间共享数据。最后,在每个虚拟服务器中安装相应的SQL Server数据库实例,并设置它们的共享存储磁盘。 上述步骤完成之后,就可以开始在SQL Server集群中运行数据库了。当一台服务器出现故障时,数据库会自动切换到另一台可用的服务器,并保持可用性。集群中的服务器可以动态增加或减少,以适应应用程序的需求。 总之,SQL Server 2019集群是一种在多个服务器上分布和运行数据库的高可用性解决方案,可以提高数据库系统的容错能力和可用性。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值