我使用 Plesk 的经历

我想与一个非常兼职的管理员分享一些关于商业单服务器 Web 项目的控制面板的必要性或不必要性的印象。 故事开始于几年前,当时朋友的朋友请我从技术角度协助购买一家企业(一家新闻网站)。 有必要深入研究正在做什么,确保所有必要的细节都以适当的形式和数量转移,并从战略上找出可以改进的地方。

我使用 Plesk 的经历
交易完成了,不再需要小提琴手了。 结尾。 并不真地。

该网站在 Linode 上的双核 4 GB 虚拟机上运行,​​在一些长满苔藓的 Debian5 上运行,正常运行时间为 400 天,并且包含大量未更新的软件包。 Web部分在自写的CMS、nginx、php5.3 FPM、mysql调优的Percona上。 原则上,它有效。

在与我交谈的同时,新所有者正在寻找一名程序员来使项目达到预期。 成立。 程序员评估了流量和数量,并认为他知道如何优化和成本管理。 他将整个网站迁移到了一个价值 700 卢布的共享主机,由他惯用的 IS****er 管理。 几天后,业主又打来电话:“一切都很慢,看来我们已经坏了。” 我试图通过面板纠正这种情况,但是在尝试将 PHP 版本或处理程序从 fcgi 更改为 fpm 一段时间后无果而终,我放弃了并进入了 shell。 在那里,我发现了一个启用的调试程序,该调试程序在整个互联网上都闪耀着光芒,其中一些文件夹上的密码为 777,当时这些文件夹正在被恶意软件和类似的废话所破解。 业主意识到并决定节省托管、程序员和可以关注事情进展情况的管理员的费用是错误的。

我们要去RuVDS。 比英国的 Linode 更近一点,如果你突然想要存储个人数据和所有这些,你不必搬到其他地方。 由于项目计划扩展,我们选择了一台虚拟机进行扩展:4核、8GB内存、80GB磁盘。 并不是我不知道如何手动配置 nginx 配置,而是我没有热情如此深入地从事这个项目(参见上面关于兼职的内容)。 这就是我安装 Plesk 的原因(这里我将省略安装细节,因为总的来说没有:我启动了安装程序,设置了管理员密码,输入了密钥 - 就这样),当时是 17.0。 基本设置开箱即用,有fail2ban以及最新可用版本的PHP和nginx。 

也许值得停下来解释一下原因。 由于我很少做这样的事情,而且我没有任何特殊的工具或针对每种情况的准备工作,所以很明显需要对基本事情进行某种自动化,以便第一,快速,第二,安全,第三,所有最佳实践都已经有人实施了。

所以,我安装了它。 我节省了大量时间,在新服务器上重新启动站点几乎是瞬时的。 剩下的就是编辑muscle配置,给它一半的内存并增加缓冲池的数量,并给nginx一半的核心(Plesk不触及全局配置),然后花几天时间进入shell查看在 mysqltuner 统计信息中。 是的,我从扩展目录中购买了付费的 ImunifyAV,以摆脱泛滥的恶意软件。 发现了大约 11000 个受感染的文件。 令人厌恶的是,混乱的代码片段被倒入静态中,手动清理它会变得非常乏味。 首先我尝试了 ClamAV,但事实证明,它不需要这些东西,但 ImunifyAV 可以。 此外,被杀毒的文件仍然处于工作状态;带有恶意软件的部分被简单地删除。

算术很简单:VMka 每月 50 美元,Plesk 每月 10 美元(实际上更少,因为您一次购买一年,有两个月的折扣),防病毒软件 3 美元。 或者花费我大量的时间,我一开始会花在服务器上,手动清理这些马厩。 对于这样的安排,业主非常满意。

我使用 Plesk 的经历
与此同时,他们找到了一位新程序员。 我们同意他的责任分配,为测试版本创建了一个子域,然后工作就开始了。 他正在 Laravel 上剪裁一个新版本的网站,而我正在查看fail2ban%)。

我使用 Plesk 的经历
有趣的是,好奇的人流并没有停止,被禁止的名单上总是有大约一百个地址。 效果很有趣:特别是,通常,如果我登录到 shell,我会在问候语中看到大约 20000-30000 次通过 SSH 登录失败的尝试。 启用fail2ban后,大约为70。投入的努力:0。不幸的是,这并非没有一点好处。 默认情况下,WAF (modsecurity) 处于半启用状态:处于发现模式。 也就是说,他将可疑活动写入日志,但实际上没有采取任何操作。 并且fail2ban根据启用的监狱不加区别地读取所有日志,并杀死所有移动的东西。 因此,我们禁止了一半的编辑:D。 我必须禁用这个监狱,并将必要的 IP 地址列入白名单以确保可靠性。 努力是投入的:鼠标戳两下,教编辑告诉你你的IP地址。

我使用 Plesk 的经历
程序员立即喜欢的是能够将数据库直接上传到面板中并快速访问 phpMyAdmin

我使用 Plesk 的经历
我喜欢的是日志和备份。 日志的写入和轮换开箱即用; 备份非常容易设置。 在最慢的时候,会进行完整备份,大约 10 GB,然后每天进行增量备份,每次 200 MB,持续一周。 恢复是精细的,精确到特定的文件或数据库。 如果您需要从增量恢复,那么您无需首先费心完整恢复整个链,Plesk 会自行完成所有操作。 您可以将备份上传到任何地方:FTP、Dropbox、s3 存储桶、Google Drive 等。

我使用 Plesk 的经历
F日:程序员终于完成了新引擎,我们将其上传到生产环境,导入旧数据,然后坐下来选择我们未来玛莎拉蒂的颜色。 我们仍在坐着选择。

第一个问题开始了。 预计新网站会比旧网站更重,但真正的好处是为了吸引流量,他们使用了 Yandex.Zen 等工具,带来了大量访问者。 该网站因 150 个并发连接而崩溃(我不是在谈论 RPS,因为他们没有测量它)。 我们开始在 php_fpm 设置区域中戳按钮并转动旋钮:
 
我使用 Plesk 的经历
嘿,他已经有 500 个联系人了。 随着信用卡加入到促销手段中,流量也变得更大了。 下一个里程碑是 1000 个同时连接。 在这里我们必须重新完善代码并研究肌肉的灵魂。 溅起的水没有任何帮助,但我们并没有真正想到它。 我们启用了慢查询日志,向数据库添加了索引,从代码中删除了不必要的查询,并根据mysqltuner的建议再次清理了mysql配置。

新挑战 - 2000 个连接。 Plesk 17.8 版本刚刚发布,其中添加了 nginx 缓存等功能。 更新(出奇的简单)。 咱们试试吧。 作品! 然后他们就踩到了软弱的一面,Yandex.Zen 源停止工作。 该网站正在运行,但提要无法运行。 Feed 不起作用,没有流量。 气氛正在升温。 在环境的压力和缺乏想象力的压力下,我立即转向 strace 和 nginx,找到了我想要的东西。 事实证明,在某个时刻,愚蠢的 nginx 缓存了第 500 个错误,作为对 Yandex get feed.xml 的响应。 通过向缓存设置添加例外来修复它:

我使用 Plesk 的经历
很明显,业主需要更多,波浪正在慢慢增加。 我们现在正在应对,但我们提前开始尝试 memcached,幸运的是 Laravel 几乎开箱即用地支持它。 不知何故,我不想只是为了“玩玩”而手动安装 memcached,所以我安装了一个 docker 镜像。 直接从面板上。

我使用 Plesk 的经历
好吧,我在撒谎,我必须进入 shell 并通过 pecl 安装模块。 就在 指示。 关于吞吐量的增加还没有什么可说的;还没有足够多的人涌入。 站点引擎连接到 localhost:11211,显示统计信息,正在消耗内存。 如果您喜欢,我们将看看下一步该做什么。 要么我们就这样保留它,要么我们将“真正的”放在轴中。 或者我们用同样的方式尝试一下redis

然后有必要附上邮件列表。 没有中继,只有 smtp 身份验证。 我设置了一个邮寄地址,并使用其详细信息通过 PHP 发送新闻通讯。

我使用 Plesk 的经历
不久前 Plesk Obsidian (18.0) 发布,我们根据过去的经验进行更新,没有恐惧。 一切都很顺利,甚至没有什么可谈的。 令人高兴的是,界面的质量有了很大的提高,变得更加现代,在一些地方变得更加方便。 Grafana 上的高级监控很酷。

我使用 Plesk 的经历
我还没有详细讨论它,但是您可以例如为电子邮件中的任何参数设置警报。 给楼主,呵呵。

当我谈论界面时,它反应灵敏,并且在手机上运行得非常好。 在早期阶段,当我们试图找到 PHP 和其他东西的最佳设置时,这很有帮助。 尤其是当一个程序员一时工作热情在23:XNUMX做某事,而我一时工作热情在澡堂里喝伏特加,我迫切需要换点东西。

我使用 Plesk 的经历
哦,顺便说一下。 图为PHP Composer已经出现。 我们还没有使用它,但是,对于 Laravel,它可以节省几次 shell 登录和安装依赖项的时间。 Node.JS 和 Ruby 存在相同的系统。

有了 SSL,一切就变得简单了。 如果域按预期解析,Let's Encrypt 一键完成,然后自行更新,无论是域本身还是子域,甚至邮件服务。

我使用 Plesk 的经历
Plesk 本身作为一个软件目前相当令人愉快且稳定。 它可以安静地更新自身和轴,消耗很少的资源,并且工作顺利。 我什至不记得我踩到过某个地方的东西,这将是产品的明显缺陷。 当然,存在一些问题,但这些问题要么是由于配置不完善,要么是在连接处的某个地方,所以没有什么可抱怨的。 与 Plesk 合作的印象总体上是愉快的。 它没有任何(任何)聚类,而我们需要理解这一点。 LB和HA都没有。 你可以尝试,但所涉及的努力会很大,所以最好从一开始就做一些不同的事情。

我想我们可以总结一下。 对于没有管理员或没有足够的管理员的情况,当托管和在其上运行的网站的价格超过,比如说,100 美元,当我们不是在谈论 1500 美元的野蛮分享时服务器上的站点,当决策者面临着是否可以选择雇用一名兼职管理员,或者花半美元购买软件并拥有一名管理员,或者根本没有管理员时,这绝对是有道理的。 从远程管理员的角度来看 - 同样的事情。 每月 10 美元,节省时间并在很长一段时间内提供工作灵活性о较大的金额。 例如,如果有人强烈要求我负责一个类似的项目,我会坚持将其转移到 Plesk。

我使用 Plesk 的经历

来源: habr.com

添加评论