Plesk bilan tajribam

Tijoriy yagona serverli veb-loyiha uchun boshqaruv paneli kabi narsaning zarurligi yoki keraksizligi haqida ba'zi taassurotlarimni juda yarim kunlik administrator bilan baham ko'rmoqchiman. Hikoya bir necha yil oldin, do'stlarimning do'stlari mendan biznes - yangiliklar sayti - texnik nuqtai nazardan sotib olishda yordam berishimni so'rashganida boshlandi. Nima ustida ishlayotganini biroz o'rganish, barcha kerakli tafsilotlar to'g'ri shaklda va hajmda uzatilganligiga ishonch hosil qilish va nimani yaxshilash mumkinligini strategik aniqlash kerak edi.

Plesk bilan tajribam
Bitim yakunlandi, skripkachi endi kerak emas edi. Oxiri. Unchalik emas.

Sayt Linode-da ikki yadroli 4 GB VM-da, 5 kunlik ish vaqtiga ega Debian400-da va yangilanmagan paketlar ro'yxatida ishlagan. O'z-o'zidan yozilgan CMS, nginx, php5.3 FPM, MySQL sozlangan Percona-dagi veb-qism. Printsipial jihatdan u ishladi.

Men bilan suhbatlar bilan bir qatorda, yangi egasi loyihani kutganlarga etkazish uchun dasturchi qidirayotgan edi. Topildi. Dasturchi trafik va hajmlarni baholadi va optimallashtirish va xarajatlarni boshqarishni bilishga qaror qildi. U butun saytni odatdagi IS****er tomonidan boshqariladigan 700 rubllik umumiy hostingga ko'chirdi. Bir necha kundan keyin egasidan yana bir qo'ng'iroq bo'ldi: "hamma narsa sekin va biz singanga o'xshaymiz." Men vaziyatni panel orqali tuzatishga harakat qildim, lekin PHP versiyasini yoki ishlov beruvchini fcgi dan fpm ga o'zgartirish bo'yicha bir muncha vaqt samarasiz urinishlardan so'ng, men taslim bo'ldim va qobiqqa kirdim. U erda men mushakdan parol bilan butun Internetda porlayotgan yoqilgan disk raskadrovkani topdim, ba'zi papkalarda 777, o'sha paytda zararli dasturlar va shunga o'xshash bema'nilik bilan yorilib ketgan. Xosting, dasturchi va ishlar qanday ketayotganini kuzatib turadigan adminni tejash noto'g'ri ekanligini tushundi va qaror qildi.

Biz RuVDS ga boramiz. British Linode'dan biroz yaqinroq va agar siz to'satdan shaxsiy ma'lumotlarni va bularning barchasini saqlamoqchi bo'lsangiz, boshqa joyga ko'chishingiz shart emas. Loyihani kengaytirish rejalashtirilganligi sababli, biz o'sish uchun VM oldik: 4 yadro, 8 gigabayt xotira, 80 GB disk. Bu men nginx konfiguratsiyasini qanday qilib qo'lda sozlashni bilmayman, shunchaki menda bu loyihada juda yaqin ishlashga ishtiyoq yo'q edi (yuqorida yarim vaqtda haqida ko'ring). Shuning uchun men Plesk-ni o'rnatdim (bu erda men o'rnatish tafsilotlarini o'tkazib yuboraman, chunki umuman yo'q: men o'rnatuvchini ishga tushirdim, administrator uchun parolni o'rnatdim, kalitni kiritdim - hammasi), o'sha paytda u 17.0 edi. Asosiy sozlamalar to'g'ri ishlaydi, fail2ban va PHP va nginx ning eng so'nggi versiyalari mavjud. 

Bu, ehtimol, to'xtab, nima uchun ekanligini tushuntirishga arziydi. Men bunday ishlarni kamdan-kam qiladiganim va har bir holat uchun maxsus vositalar yoki tayyorgarlik to'plamim yo'qligi sababli, birinchidan, tez, ikkinchidan, xavfsiz va uchinchidan, asosiy narsalarni qandaydir avtomatlashtirish kerakligi aniq edi. , barcha eng yaxshi amaliyotlarni kimdir allaqachon amalga oshirgan.

Shunday qilib, men uni o'rnatdim. Men juda ko'p vaqtni tejadim, saytni yangi serverda qayta ishga tushirish deyarli bir zumda bo'ldi. Qolgan narsa mushak konfiguratsiyasini tahrirlash, unga xotiraning yarmini berish va bufer havzalari sonini ko'paytirish va nginx yadrolarining yarmini berish (Plesk global konfiguratsiyalarga tegmaydi) va bir necha kun davomida qobiqqa kirish edi. mysqltuner statistikasida. Ha, va men suv bosgan zararli dasturlardan xalos bo'lish uchun kengaytmalar katalogidan pulli ImunifyAV ni sotib oldim. 11000 XNUMX ga yaqin zararlangan fayllar topildi. Jirkanch narsa shundaki, statikaga tushunarsiz kod bo'laklari quyilgan va uni qo'lda tozalash butunlay zerikarli bo'lar edi. Avvaliga men ClamAV-ni sinab ko'rdim, lekin ma'lum bo'lishicha, u bunday narsalarni olmaydi, lekin ImunifyAV mumkin edi. Bundan tashqari, zararsizlantirilgan fayllar ish holatida qoladi, zararli dastur bo'lgan qism shunchaki o'chiriladi.

Arifmetika oddiy: VMka uchun oyiga $50, Plesk uchun $10 (aslida kamroq, chunki siz uni bir vaqtning o'zida ikki oylik chegirma bilan bir yilga sotib oldingiz) va antivirus uchun $3. Yoki vaqtim uchun juda ko'p pul, men avvaliga bu otxonalarni qo'lda yig'ib, serverga sarflagan bo'lardim. Egasi bu tartibdan juda mamnun edi.

Plesk bilan tajribam
Bu orada ular yangi dasturchi topdilar. Biz u bilan mas'uliyatni taqsimlash bo'yicha kelishib oldik, test versiyasi uchun subdomain yaratdik va ish boshlandi. U Laravelda saytning yangi versiyasini kesib tashlayotgan edi va men fail2ban% ga qaradim.

Plesk bilan tajribam
Qizig'i shundaki, qiziquvchan odamlar oqimi to'xtamaydi va taqiqlanganlar ro'yxatida har doim yuzga yaqin manzillar mavjud. Effekt qiziq: xususan, odatda, agar men qobiqqa kirsam, salomlashishda SSH orqali kirishga 20000-30000 2 ga yaqin muvaffaqiyatsiz urinishlarni ko'raman. Fail70ban yoqilgan bo'lsa, taxminan 0. Sarmoya qilingan harakatlar: 2. Afsuski, bir tomchi malhamsiz bo'lmadi. Odatiy bo'lib, WAF (modsecurity) yarim yoqilgan edi: kashfiyot rejimida. Ya'ni, u jurnalga shubhali faoliyat yozgan, lekin aslida hech qanday chora ko'rmagan. Va failXNUMXban faollashtirilgan qamoqxonalarga ko'ra, barcha jurnallarni beg'araz o'qib chiqdi va harakatlangan barcha narsalarni o'ldirdi. Shunday qilib, biz muharrirlarning yarmini taqiqladik: D. Men ushbu qamoqxonani o'chirib qo'yishim va ishonchliligi uchun kerakli IP manzillarni oq ro'yxatga kiritishim kerak edi. Harakatlar sarflanadi: sichqonchani ikki marta bosing va muharrirlarga IP manzilingizni aytib berishga o'rgating.

Plesk bilan tajribam
Dasturchiga darhol yoqqan narsa ma'lumotlar bazalarini to'g'ridan-to'g'ri panelga yuklash va phpMyAdmin-ga tezkor kirish qobiliyati edi.

Plesk bilan tajribam
Menga jurnallar va zaxira nusxalari yoqdi. Jurnallar yoziladi va qutidan tashqariga aylantiriladi; Zaxira nusxalarini sozlash juda oson. Eng sekin vaqtlarda, taxminan 10 gig to'liq zaxira nusxasi amalga oshiriladi, so'ngra har kuni bir hafta davomida har biri 200 megabaytdan oshib boruvchi. Qayta tiklash ma'lum bir fayl yoki ma'lumotlar bazasiga qadar donador. Agar siz bosqichma-bosqich qayta tiklashingiz kerak bo'lsa, unda siz avval butun zanjirni to'liq tiklash va tiklash bilan bezovta qilishingiz shart emas, Plesk hamma narsani o'zi qiladi. Zaxira nusxalarini istalgan joyda yuklashingiz mumkin: FTP, dropbox, s3 paqir, Google Drive va boshqalar.

Plesk bilan tajribam
F kuni: dasturchi nihoyat yangi dvigatelni tugatdi, biz uni ishlab chiqarishga yukladik, eski ma'lumotlarni import qildik va bo'lajak Maserati rangini tanlash uchun o'tirdik. Biz hali ham o'tirib, tanlaymiz.

Birinchi muammolar boshlandi. Yangi sayt avvalgisidan ko'ra og'irroq bo'lishi kutilgan edi, lekin haqiqiy rake ular trafikni jalb qilish uchun, boshqa narsalar qatori, ko'plab tashrif buyuruvchilarni olib kelgan Yandex.Zen-dan foydalanishdi. Sayt bir vaqtning o'zida 150 ta ulanish bilan qulab tushdi (men RPS haqida gapirmayapman, chunki ular buni o'lchashmagan). Biz php_fpm sozlamalari sohasida tugmachalarni va tugmalarni burishni boshladik:
 
Plesk bilan tajribam
Hey, u allaqachon 500 ta ulanishga ega. Kredit kartalar reklama vositalariga qo'shilganligi sababli, trafik to'lqinlari kattalashdi. Keyingi bosqich - bir vaqtning o'zida 1000 ta ulanish. Bu erda biz kodni qayta tiklashimiz va mushakning ruhiga qarashimiz kerak edi. Chayqalish yordam bermadi, lekin biz buni kutmagan edik. Biz sekin so'rovlar jurnalini yoqdik, ma'lumotlar bazasiga indekslar qo'shdik, koddan keraksiz so'rovlarni olib tashladik va mysqltuner maslahatiga ko'ra MySQL konfiguratsiyasini yana bir bor tozaladik.

Yangi muammo - 2000 ta ulanish. Plesk 17.8 versiyasi endigina chiqarildi, unga boshqa narsalar qatori nginx keshlash ham qo'shildi. Yangilangan (ajablanarli darajada oson). Kel urinib ko'ramiz. Ishlaydi! Va keyin ular yumshoq tomonga qadam qo'yishdi, Yandex.Zen tasmasi ishlashni to'xtatdi. Sayt ishlayapti, tasma ishlamayapti. Tasma ishlamayapti, tirbandlik yo'q. Atmosfera isib bormoqda. Vaziyat va tasavvurning etishmasligidan bosim ostida men darhol strace va nginx-ga bordim va izlayotgan narsamni topdim. Ma'lum bo'lishicha, bir nuqtada ahmoq nginx Yandex get feed.xml ga javob sifatida adashgan 500-xatoni keshlab qo'ygan. Kesh sozlamalariga istisnolar qo'shish orqali uni tuzatdi:

Plesk bilan tajribam
Egasiga KO'PROQ kerakligi aniq, to'lqinlar asta-sekin o'sib bormoqda. Biz hozircha kurashyapmiz, lekin biz memcached bilan oldindan tajriba o'tkazishni boshladik, xayriyatki, Laravel uni deyarli qutidan tashqarida qo'llab-quvvatlaydi. Men qandaydir tarzda memcached-ni "o'ynash" uchun qo'lda o'rnatishni xohlamadim, shuning uchun docker tasvirini o'rnatdim. To'g'ridan-to'g'ri paneldan.

Plesk bilan tajribam
Xo'sh, yaxshi, yolg'on gapiryapman, men qobiqga kirib, modulni pecl orqali o'rnatishim kerak edi. To'g'ri ko'rsatmalar. O'tkazish qobiliyatining o'sishi haqida hali hech narsa aytish mumkin emas, etarlicha katta oqimlar bo'lmagan. Sayt mexanizmi localhost-ga ulangan: 11211, statistika ko'rsatiladi, xotira sarflanmoqda. Agar sizga yoqsa, keyin nima qilishni ko'ramiz. Yoki biz buni shunday qoldiramiz yoki "haqiqiy" ni o'ngga qo'yamiz. Yoki xuddi shu tarzda redisni sinab ko'raylik

Keyin pochta ro'yxatini biriktirish kerak edi. O'rni yo'q, faqat smtp autentifikatsiyasi. Men pochta manzilini o'rnatdim va uning ma'lumotlaridan PHP orqali xabarnoma yuborish uchun foydalanaman.

Plesk bilan tajribam
Yaqinda Plesk Obsidian (18.0) chiqarildi, biz qo'rqmasdan o'tgan tajribaga asoslanib yangiladik. Hamma narsa juda muammosiz o'tdi, hatto gaplashadigan hech narsa yo'q. Quvonarlisi shundaki, interfeysning sifati ancha yaxshilandi, u yanada zamonaviylashdi va ba'zi joylarda qulayroq bo'ldi. Grafana-da ilg'or monitoring.

Plesk bilan tajribam
Men buni hali batafsil ko'rib chiqmadim, lekin siz, masalan, elektron pochtangizdagi har qanday parametr uchun ogohlantirishlarni o'rnatishingiz mumkin. Egasiga, lol.

Men interfeys haqida gapirgan bo'lsam-da, u sezgir va telefonda juda yaxshi ishlaydi. Dastlabki bosqichlarda, biz PHP va boshqa narsalar uchun optimal sozlamalarni topishga harakat qilganimizda, bu juda ko'p yordam berdi. Ayniqsa, dasturchi ish ishtiyoqida soat 23:XNUMX da nimadir qilsa, men esa ish ishtiyoqi bilan hammomda aroq ichaman va men zudlik bilan nimanidir almashtirishim kerak.

Plesk bilan tajribam
Oh, aytmoqchi. Rasmda PHP Composer paydo bo'lganligi ko'rsatilgan. Biz u bilan hali o'ynamadik, lekin aytaylik, Laravel uchun u bir nechta qobiq loginlarini va bog'liqliklarni o'rnatish uchun biroz vaqtni tejashi mumkin. Xuddi shu tizim Node.JS va Ruby uchun mavjud.

SSL bilan hamma narsa oddiy. Agar domen kutilganidek hal qilinsa, Let's Encrypt bir marta bosish orqali amalga oshiriladi va keyin domenning o'zi uchun ham, subdomenlar uchun ham, hatto pochta xizmatlari uchun ham yangilanadi.

Plesk bilan tajribam
Pleskning o'zi dasturiy ta'minot sifatida hozirda juda yoqimli va barqaror. U o'zini va Axisni jimgina yangilaydi, kam resurslarni sarflaydi va muammosiz ishlaydi. Men biror joyga qadam bosganimni ham eslay olmayman, bu mahsulotda aniq nuqson bo'lar edi. Albatta, muammolar bor edi, lekin ular nomukammal konfiguratsiya tufayli yoki kesishgan joyda edi, shuning uchun shikoyat qiladigan hech narsa yo'q. Plesk bilan ishlash taassurotlari odatda yoqimli. Unda yo'q narsa va biz buni tushunishimiz kerak, bu har qanday (har qanday) klasterdir. Na LB, na HA. Siz urinib ko'rishingiz mumkin, ammo harakat shunchalik ko'p bo'ladiki, boshidan boshqacha harakat qilish yaxshiroqdir.

O'ylaymanki, biz buni umumlashtira olamiz. Agar administrator yo'q bo'lsa yoki u etarli bo'lmasa, hosting va unda aylanadigan sayt(lar)ning narxi, aytaylik, 100 AQSh dollaridan oshib ketganda, biz 1500 dona hayvon almashish haqida gapirmayapmiz. serverdagi saytlar, qaror qabul qiluvchi shaxs duch kelganda, agar sizda yarim kunlik administratorni yollash yoki dasturiy ta'minotni sotib olish va yarim dollarga administratorga ega bo'lish yoki umuman yo'q qilish tanlovi bo'lsa - bu albatta mantiqan to'g'ri keladi. Masofaviy ma'mur nuqtai nazaridan - xuddi shu narsa. Oyiga $10 va vaqtni tejaydi va juda uzoq vaqt davomida ishda moslashuvchanlikni beradiΠΎkattaroq miqdor. Agar, masalan, mendan shunga o'xshash loyihani qanotim ostiga olishimni qat'iy so'rashsa, men uni Pleskga o'tkazishni talab qilaman.

Plesk bilan tajribam

Manba: www.habr.com

a Izoh qo'shish