我使用 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 的經歷

來源: www.habr.com

添加評論