在倚天ARM版云服务器ECS上使用 HestiaCP 进行图形化建站
本文最后更新于 581 天前,其中的信息可能已经有所发展或是发生改变。

前言

ARM 为啥好?

随着 Apple Silicon 版本的 Mac 发布后,大家越来越看到了非 X86 的 ARM 架构的潜力,AWS 家的 Graviton 和 阿里云的倚天都是非常好的 ARM 版云服务器。

性能上,基于ARM架构的实例规格,每一个vCPU都对应一个处理器的物理核心,具有性能稳定且资源独享的特点。而不是像 X86 架构,每一个 vCPU 其实对应的是一个超线程,并不是一整个物理核心。

价格上,基于ARM架构的实例拥有企业级的性能稳定性,但是价格却比企业级X86实例低得多。例如都是 2C8G 的配置:

规格类型网络性能规格配置价格(元/月)
Intel 通用型 g710 Gbps/90万 PPS2C8G271.16
AMD 通用型 g710 Gbps/90万 PPS2C8G231.20
共享标准型 s62 Gbps/20万 PPS2C8G200.00
突发性能实例 t61 Gbps/10万 PPS2C8G156.00
倚天 通用型 g8y10 Gbps/90万 PPS2C8G212.00

可见 ARM 版实例,仅比共享性能实例价格略高,就可以获得100%性能独享和更多的企业级ECS特性。

PHP 为啥那么适合 ARM?

大家在使用 arm64 设备时,都会遇到一个问题就得找 arm64 架构开发的软件,如果是 amd64 开发的传统X86架构软件就会有兼容性的问题,就算是模拟架构也有很大的性能损耗的问题。但是 PHP 开发的软件却有着非常优异的跨架构兼容性。

因为 PHP 的特性,PHP 只需要其本身以及相关扩展支持跨架构的能力,那么基于 PHP 开发的软件就可以运行。因此 PHP 语言真的是跨平台的天选语言呀~

HestiaCP

HestiaCP 是一个免费开源的 Web 服务器控制面板,是当初流行的 VestaCP 控制面板的一个Fork,后面随之 VestaCP 的开发停滞,由开源爱好者组成了新的 HestiaCP 社区,并持续开发者 HestiaCP。

HestiaCP提供了一个简单干净的服务器控制后台,并为管理员提供了轻松管理其 Web 服务器的各项功能和组建,包括管理和部署网站、邮件帐户、DNS 区域和数据库。

目前 HestiaCP 可以在 amd64 和 arm64 两种架构下运行,但目前仅局限于受到主流支持的 Deb系系统:

  • Debian 10
  • Debian 11
  • Ubuntu 18.04 LTS
  • Ubuntu 20.04 LTS
  • Ubuntu 22.04 LTS

安装

一、选择 ARM 架构的 ECS,大家可以在这里输入 g8y 查看支持倚天所包含的第八代ECS实例所支持的地域,截止发文受到支持的地域是:北京、上海和深圳。

https://ecs-buy.aliyun.com/instanceTypes#/instanceTypeByRegion

二、ECS实例规格选型:

在购买页面选择 ARM 计算

三、ECS镜像选型:

这里选择 Debian 11 ARM版,一般来说针对 ARM 的支持,越新的系统支持的越好。目前没有 Ubuntu 22.04可选,我们选 Debian 11。

其余的全部选型和X86版的ECS购买过程是一致的。

四、SSH 登录,安装 HestiaCP。

1.运行 apt update && apt upgrade -y 更新系统

2.完成更新后,进入如下网址,生成安装命令:

https://installer.hestiacp.cn/

勾选需要的特性之后,点击右上角的 生成命令

然后运行接下来生成的两行命令即可:

由此就进入了安装自动化步骤,我们等待10-15分钟,因为很多下载源在海外,所以大陆地区的云服务器访问会稍稍慢一点。

安装完成后,标框的地方会提示后台的登录地址和管理账号密码。

一般来说默认是:

管理后台: https://你的公网IP:8083

管理员账号:admin

管理员密码:passw0rd (默认的话)

然后,我们需要重启一下服务器。

使用

账户管理

一、登录管理后台,我们就可以看到登录页面了。

提示: 建议管理后台端口仅对你的IP开放访问,亦或者配置虚拟专线方式或者零信任进行限制,切勿直接向 0.0.0.0/0 开放访问。

二、我们可以在系统概览中,查看系统信息,可以看到操作系统显示是:
Debian 11.6 (aarch64),证明我们就在 ARM 架构上安装的 HestiaCP。

三、回到用户账户界面,点击左上角的添加用户账户

填写相关信息后点击右上角的 保存 按钮进行添加账户。

四、然后我们点击新创建用户那一列的第一个按钮,会提示 “切换登录账户 xxx”

这里要介绍 HestiaCP 一个很好的思路,就是不使用超级管理员账户来管理网站,而是创建普通用户。超级管理员能管理的内容太多,如果超级管理员下的文件有漏洞被提权的话,是可以干很多坏事的。

同时不同的账户创建不同的网站、应用,也可以更好的做到隔离性。

创建 Web 服务

一、点击 添加网站域名 按钮,创建 Web 服务,输入对应的域名,点击保存即可。

二、成功后,返回 Web 服务页面。点击对应的域名,我们进一步修改:

三、开启 HTTPS,点击上图所示的 启用SSL 功能即可,然后上传对应域名的 SSL 证书,如果需要使用 Let‘s Encrtypt 的免费证书,那么直接勾选 采用 Let‘s Encrtypt 按钮即可。

四、如果之前安装的时候选择了安装多 PHP 版本,那么可以在 后端模板 中,选择不同版本的 PHP。

文件传输

一、在线文件管理

1.点击顶部导航栏中的 文件管理 按钮。

2.然后在对应目录上传文件即可,可以进行上传下载、压缩和解压缩等操作。

3. 在探针中,我们可以看到 Linux 内核是 arm64/aarch64 的内核,证明我们的 PHP 和 HestiaCP 都稳定的运行在 ARM 架构中。

二、 SFTP 方式

如果安装过程中开启了 FTP 功能,也可以使用 FTP 进行传输,这里使用 SFTP:

1. 回到超级管理员权限,在账户管理中,编辑刚才我们创建的普通用户:

点击 高级选项 按钮,然后在 SSH访问控制 中将 nologin 替换成 bash 或者 rbash

2. 通过 FTP 选择 SFTP协议,或者 SSH 控制台进行远程登录就可以使用 SSH/SFTP 进行有限的文件传输和管理了。

总结

其他的就不赘述了,创建数据库并通过 phpMyAdmin 进行管理,然后我们可以创建 WordPress、Discuz、NextCloud 等 PHP 应用了。

PHP + ARM = 超高性价比的选择~

上一篇
下一篇