CentOS 8 veebiserver php7, node.js ja redisiga

EessÔna

Kaks pĂ€eva tagasi ilmus uus versioon operatsioonisĂŒsteemist CentOS, nimelt CentOS 8. Internetis on seni vĂ€ga vĂ€he artikleid selle kohta, kuidas seal midagi teha, seega otsustasin selle tĂŒhimiku tĂ€ita. RÀÀgin mitte ainult sellest, kuidas paigaldada neid kaht programmi, vaid ka sellest, kuidas nĂ€en Linuxi installimist virtuaalsesse keskkonda tĂ€napĂ€eva standardite jĂ€rgi, sealhulgas kettade jagamist ja muud.

Kuid enne tahan lĂŒhidalt rÀÀkida, miks tasub kolida sellele versioonile kĂ”igilt eelnevatelt, ja selleks on kaks pĂ”hjust:

  1. php7! Eelmises versioonis CentOS paigaldati "Ôigeusuline" php5.4...

    Okei, kui rÀÀkida natuke tĂ”sisemalt, siis vĂ€ga palju pakette hĂŒppas ĂŒle mitu versioone korraga. Me (Red Hat-pĂ”histe operatsioonisĂŒsteemide austajad) oleme lĂ”puks sisenenud, kui mitte tulevikku, siis vĂ€hemalt olevikku. Ja Ubuntu toetajad ei naera meie ĂŒle enam nii hoogsalt ja ei osuta meile enam sĂ”rmega, noh... vĂ€hemalt mĂ”neks ajaks ;).

  2. Üleminek yumilt dnf-ile. Peamine erinevus on see, et nĂŒĂŒd toetatakse ametlikult kohe mitme pakettversiooniga töötamist. Siiski pole ma seda kaheksandal versiooni numbril veel kunagi kasutanud, kuid see kĂ”lab paljutĂ”otavalt.

Virtuaalmasina loomine

HĂŒperviisorid on erinevad, ja mul pole eesmĂ€rki suunata lugejat konkreetsele, rÀÀgin ĂŒldistest pĂ”himĂ”tetest.

MĂ€lu

Esimene
 CentOS-i sĂŒsteemi installimiseks, alates 7-st kindlasti, aga arvatavasti ka 6-st oli see nii («aga see pole kindel»), on vajalik vĂ€hemalt 2 GB operatiivmĂ€lu. SeetĂ”ttu soovitan alguseks nii palju anda.

Aga kui midagi juhtub, siis pĂ€rast installimist saab mĂ€lu suurust ka vĂ€hendada. 1 GB-ga töötab puhas sĂŒsteem tĂ€iesti normaalselt, ma olen seda kontrollinud.

Kett

Normaalse installatsiooni jaoks tuleks luua 20–30 GB suurune virtuaaldisk. Selleks piisab. Ja teine disk andmete jaoks. Selle saab lisada nii virtuaalmasina loomise etapis kui ka hiljem. Mina lisaan seda tavaliselt hiljem.

Protsessor

Ühe tuumaga ei peatuda puhas sĂŒsteem. Ja kuna ressursid skaleeruvad vabalt, ei nĂ€e ma mĂ”tet anda enam instalatsiooni ajal (kui te ei tea tĂ€pselt nĂ”udeid ja ei viitsi konfiguratsiooni uuesti puudutada).

ÜlejÀÀnud vĂ”ib tavaliselt jĂ€tta vaikimisi.

Installeerimine ise

Nii
 KĂ€ivitan installeri
 Mina isiklikult olen juba ammu harjunud selliseid teenuseid paigaldama ainult virtuaalmasinatesse, seega ei hakka ma kirjeldama, kuidas installida distributiiv mĂ€lupulgale — lihtsalt monteerin ISO lemmik hĂŒperviisorisse, kĂ€ivitan ja alustan.

PĂ”hiinstallatsioon kulgeb ĂŒsna tĂŒĂŒpiliselt, peatun ainult mĂ”nel momendil.

Allika valik

Alates kaheksanda versiooni vĂ€ljaandmisest on Yandexi peegel juba mitu pĂ€eva maas. No, see tĂ”useb perioodiliselt ĂŒles, kuid siis hakkab jĂ€lle viga nĂ€itama. Olen kindel, et pĂ”hjuseks on teenuse liigne koormus. SeetĂ”ttu pidi allika mÀÀramiseks minule isiklikult selle tavapĂ€rase aadressi sisestamise asemel minema siia, valima sealt endale sobiva peegli ja kĂ€sitsi sisestama aadressi installeri aknasse. Siin on oluline meeles pidada, et tuleb nĂ€idata tee sellesse kausta, kus asub kataloog repodata. NĂ€iteks, mirror.corbina.net/pub/Linux/centos/8/BaseOS/x86_64/os.

Ketta partitsioneerimine

See kĂŒsimus on pigem religioosne minu arvates. Igaladminil on sellel teemal oma seisukoht. Kuid siiski jagan oma vaadet sellele kĂŒsimusele.

Jah, pĂ”himĂ”tteliselt vĂ”ib kogu ruumi juure jaoks eraldada ja see töötab, tihti isegi pĂ€ris hĂ€sti. Miks siis vaeva nĂ€ha erinevate osadega? — Peamised pĂ”hjused on minu arvates kaks: kvotid ja ĂŒlekantavus.

NĂ€iteks, kui midagi lĂ€ks valesti ja peamisel andmeosakonnal on vigu, soovid siiski olla vĂ”imeline sĂŒsteemi laadima ja taastamistoiminguid lĂ€bi viima. SeetĂ”ttu eraldan isiklikult eraldi osa /boot jaoks. Seal asub kernel ja laadija. Tavaliselt piisab 500 megabaitist, kuid harvadel juhtudel vĂ”ib rohkem olla vajalik, ja kuna oleme juba harjunud mÔÔtma ruumi terabaitides, eraldan sellele osale 2GB. Ja siin on oluline, et seda ei tohi teha lvm-iga.

Edasi lĂ€heb sĂŒsteemi juur. Tavalise installatsiooni jaoks ei ole mul kordagi olnud vaja rohkem kui 4 GB sĂŒsteemi jaoks, kuid planeeritud tegevuste ajal kasutan sageli kausta /tmp distributsioonide lahtipakkimiseks, ja ei nĂ€e mĂ”tet seda eraldada eraldi osana — kaasaegsetes sĂŒsteemides puhastatakse seda automaatselt, seega ei tĂ€itu see. SeetĂ”ttu eraldan juure jaoks 8GB.

Swap
 Sisuliselt on sellest vĂ€he praktiseerimist. Kui teie serveris kasutatakse swap'i, tĂ€hendab see, et serverisse peab lisama rohkem rame. Vastasel juhul on jĂ”udlusprobleemid garanteeritud (vĂ”i mĂ”ni programm "lekib" mĂ€lu). SeetĂ”ttu on see jaotis vajalik ainult diagnostikaks. Seega on 2 GB suurepĂ€rane number. Jah, sĂ”ltumata sellest, kui palju mĂ€lu serveris on. Jah, ma olen lugenud neid artikleid, kus rÀÀgitakse mĂ€lu ja swap'i mahu suhteest ... IMHO, need on vananenud. 10 aasta jooksul ei ole mul seda kunagi tarvis lĂ€inud. 15 aastat tagasi kasutasin neid, jah.

Kas /home eraldada eraldi jaotuseks, IMHO vĂ”ib igaĂŒks ise otsustada. Kui keegi seda katalooge serveris aktiivselt kasutab, on parem eraldada. Kui mitte, siis pole selleks pĂ”hjust.

Edasi, /var. Minu arvates peaks see kindlasti olema eraldi. Alguses vÔib piirduda 4 GB numbriga, ja siis, kuidas lÀheb. Ja jah, all "kuidas lÀheb" mÔtlen ma, et

  1. Esiteks, alati vÔib kuMountida teise ketta alama /var kataloogi (mida ma hiljem nÀitan nÀite kaudu)
  2. Teiseks, meil on ju LVM — alati on vĂ”imalik lisada. Ja lisada tuleb tavaliselt siis, kui liiga palju logisid hakkab sinna sadama. Kuid ma ei ole kunagi suutnud seda numbrit ette Ă€ra arvata, seetĂ”ttu alustan ma 2 GB-st ja seejĂ€rel vaatan.

Jaotamata ruum jÀÀb mahuhaldusgruppi vabaks, seda saab hiljem alati kasutada.

LVM

KĂ”ik jaotised, vĂ€lja arvatud /boot, on mĂ”istlik teha LVM-iga. Jah, sealhulgas swap. Jah, swap peab igaĂŒhe soovituste kohaselt olema ketta alguses, kuid LVM-i puhul ei saa selle asukohta pĂ”himĂ”tteliselt mÀÀrata. Kuid nagu ma juba eespool kirjutasin, ei tohi teie sĂŒsteem kasutada swap-i ĂŒldse. Seega pole oluline, kus see asub. Me ei ela enam 95. aastal, ausalt öeldes! kasutada swap'i ĂŒldse. SeetĂ”ttu pole ĂŒldse oluline, kus see asub. Oot, me ei ela ju 95. aastal, ausalt!

Edasi, LVM-is on mitmeid pÔhielemente, millega tuleb osata hakkama saada:

  • fĂŒĂŒsiline maht
  • mahtugrupp
  • loogiline maht

FĂŒĂŒsilised mahud liituvad gruppidesse, kusjuures iga fĂŒĂŒsiline maht vĂ”ib olla ainult ĂŒhes grupis ja grupp vĂ”ib paikneda korraga mitu fĂŒĂŒsilist mahtu.
Loogilised mahud asuvad igaĂŒks ĂŒhes grupis.

Kuid... meil on ikka juba 21. sajand. Ja virtuaalserverid. Pole mĂ”tet rakendada samu mehhanisme, mida kasutati fĂŒĂŒsiliste puhul. Virtuaalsete jaoks on oluline hoida andmeid sĂŒsteemist eraldi! See on eriti tĂ€htis, et anda vĂ”imalus kiiresti andmeid teisele virtuaalmasinale ĂŒle viia (nĂ€iteks operatsioonisĂŒsteemi vahetamisel) ja igasuguste kasulike omaduste jaoks (nt eraldi varukoopiad jaotiselt hĂŒperviisori kaudu). SeetĂ”ttu kasutatakse ĂŒks volume group sĂŒsteemi jaoks ja kindlasti teist andmete jaoks! See loogiline jaotus aitab elus oluliselt!

Kui olete virtuaalmasina loomisel loonud ainult ĂŒhe virtuaalse kĂ”vaketta, siis sellega on konfiguratsioon lĂ”ppenud. Kui on kaks, siis lihtsalt Ă€rge mÀÀrake veel teist.

Alustame installimist.

PĂ€rast installimist

Nii, lĂ”puks kĂ€ivitus vĂ€rskelt installitud sĂŒsteem. Esimene asi, mida tuleb kontrollida — internet.

ping ya.ru

Kas on vastus? — SuurepĂ€rane, vajutame Ctrl-C.
Kui ei ole — minge seadistama vĂ”rku, ilma selleta ei ole elul mĂ”tet, aga minu artikkel ei rÀÀgi sellest.

NĂŒĂŒd, kui me pole veel rootis, logime sisse rootina, sest sisestama sellist sudo kĂ€suga on isiklikult tĂŒkk tĂŒkk (ja olgu admikud-paranoikud mulle andeks):

sudo -i

NĂŒĂŒd alustame jĂ€rgmisega

dnf -y update

Ja kui te lugesite seda artiklit 2019. aastal, ei juhtu tÔenÀoliselt midagi, kuid proovida tasub.

NĂŒĂŒd seadistame ĂŒlejÀÀnud ketta

Oletame, et sĂŒsteemi partisjon oli xvda, siis andmeketas oleks xvdb. Okei.

Enamik soovitusi hakkab sĂ”nadega «KĂ€ivitage fdisk ja looge partitsioon »

Nii et see pole Ôige!

Ma rĂ”hutan veel kord, kuna see on oluline! Antud juhul on LVM-i kasutamisel, mis hĂ”lmab ĂŒhte tervet, kuigi virtuaalset ketast, partitsioonide loomine vale! Selles lauses on iga sĂ”na oluline. Kui me töötame ilma LVM-ita — peame. Kui meil on kettal nĂ€iteks sĂŒsteem ja andmed — peame. Kui me mingil pĂ”hjusel peame poole ketta jĂ€tma tĂŒhjaks — ka peame. Kuid tavaliselt on need kĂ”iksugused oletused puhtalt teoreetilised. Sest kui me otsustame olemasolevale partitsioonile ruumi juurde lisada, on selle tegemine kĂ”ige lihtsam just sellise konfiguratsiooniga. Ja mugavus haldamises kaalub ĂŒles palju muud, et me suundume sihikindlalt sellele konfiguratsioonile.

Kasutusmugavus seisneb selles, et kui soovite andmeala laiendada, lisate lihtsalt virtuaalsesse jaotisesse ruumi, seejĂ€rel laiendate gruppi kasutades vgextend ja kĂ”ik ongi valmis! Harvadel juhtudel vĂ”ib osutuda vajalikuks midagi muud, kuid vĂ€hemalt ei pea laiendama algselt loogilist mahtu, mis on juba meeldiv. Laiendamiseks soovitatakse alul olemasolev eemaldada ja seejĂ€rel luua uue peale
 Mis ei tundu just meeldiv ning seda ei saa teha reaalajas, kuid laiendamine minu poolt nĂ€idatud stsenaariumi kohaselt on vĂ”imalik teostada „liikudes“, ilma jaotist eemaldamata.

KokkuvĂ”ttes loome fĂŒĂŒsilise mahu, seejĂ€rel mahugrupi, kuhu see kuulub, ning seejĂ€rel jaotise meie serverile:

pvcreate /dev/xvdb
vgcreate data /dev/xvdb
lvcreate -n www -L40G data
mke2fs -t ext4 /dev/mapper/data-www

Siin saate suure L (ja GB suuruse) asemel kasutada vĂ€ikest, olles seelĂ€bi mÀÀranud suhtelise suuruse; nĂ€iteks, et kasutada poole vabast ruumist praegu mahugrupis, tuleb mĂ€rkida „-l +50%FREE“

Viimane kĂ€sk vormindab partitsiooni ext4 failisĂŒsteemis (mis minu praktikas on seni nĂ€idanud parimat stabiilsust, kui midagi lĂ€heb valesti, seega eelistan seda).

NĂŒĂŒd montime partitsiooni soovitud kohta. Selleks lisame Ă”ige rida failis /etc/fstab:

/dev/mapper/data-www    /var/www                ext4    defaults        1 2

Ja sisestame

mount /var/www

Kui tuleb tĂ”rge — aeg on hĂ€iret anda! Sest see tĂ€hendab, et meil on viga /etc/fstab failis. Ja jĂ€rgmise taaskĂ€ivitamisega vĂ”ivad meil tekkida vĂ€ga suured probleemid. SĂŒsteem vĂ”ib isegi mitte kĂ€ivituda, mis pilveteenuste jaoks on sageli ĂŒsna kurb. SeetĂ”ttu tuleb kas kiiresti parandada viimane lisatud rida vĂ”i kustutada see tĂ€ielikult! Just seetĂ”ttu ei sisestanud me montaaĆŸikommandot kĂ€sitsi — siis ei saaks me selle suurepĂ€rase vĂ”imaluse konfiguratsiooni kohe kontrollida.

NĂŒĂŒd installime kĂ”ik, mida tahtsime, ja avame veebiserveri jaoks pordid:

dnf groupinstall "Arendustööriistad"
dnf -y install httpd @nodejs @redis php
firewall-cmd --add-service http --permanent
firewall-cmd --add-service https --permanent

Soovi korral vĂ”ib siia lisada ka andmebaasi, kuid isiklikult pĂŒĂŒan ma hoida selle veebiserverist eraldi. Kuigi selle lĂ€hedal hoidmine on kiirem, tĂ”si. Virtuaalsete vĂ”rguadapterite kiirus on tavaliselt umbes gigabit, ja kui töötate samal masinal, toimub reageerimine praktiliselt kohe. Kuid see on vĂ€hem turvaline. Siin on see, mis on kellelegi olulisem.

NĂŒĂŒd lisame parameetri konfigureerimisfaili (loome uue, CentOS'i kaasaegne ideoloogia on selline)

echo "vm.overcommit_memory = 1" > /etc/sysctl.d/98-sysctl.conf

TaaskÀivita server.
Kommentaarides kritiseeriti mind nĂ”uande eest SeLinuxi vĂ€ljalĂŒlitamiseks, seetĂ”ttu parandan end ja kirjutan, et pĂ€rast seda ei tohi unustada SeLinuxi seadistada.
Tegelikult, kasu! 🙂

Allikas: habr.com

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster