Norint sukonfigūruoti apkrovos balansavimą „Google Cloud Platform“ (GCP) naudojimo atvejui, kai naudojami keli pagrindiniai žiniatinklio serveriai, kuriuose veikia „WordPress“, ir reikalaujama, kad duomenų bazė šiais atvejais išliktų nuosekli, būtina laikytis struktūrinio požiūrio, apimančio kelis pagrindinius komponentus ir teikiamas paslaugas. pagal GCP. Šis procesas užtikrina aukštą pasiekiamumą, mastelio keitimą ir duomenų nuoseklumą, kurie yra labai svarbūs patikimai žiniatinklio programai.
Žingsnis po žingsnio konfigūracija
1. Backend žiniatinklio serverių sąranka
1. Pateikite virtualias mašinas (VM):
– Naudokite „Google Compute Engine“, kad sukurtumėte kelias virtualias mašinas, kuriose bus „WordPress“ egzemplioriai. Įsitikinkite, kad šios VM yra tame pačiame regione, bet gali būti skirtingose zonose, kad būtų pasiektas didelis pasiekiamumas.
– Pavyzdys: sukurkite tris VM pavadinimu „wordpress-vm-1“, „wordpress-vm-2“ ir „wordpress-vm-3“.
2. Įdiekite „WordPress“:
– Įdiekite reikiamą programinės įrangos paketą (pvz., Apache/Nginx, PHP) kiekvienoje VM.
– Įdiekite „WordPress“ kiekvienoje VM. Įsitikinkite, kad „WordPress“ konfigūracijos failai („wp-config.php“) yra nustatyti prisijungti prie centrinės duomenų bazės, o tai bus aptarta atliekant kitus veiksmus.
2. Centralizuotos duomenų bazės sąranka
1. Naudokite debesies SQL, skirtą MySQL:
– Sukurkite „Cloud SQL“ egzempliorių GCP, kad jis būtų centralizuota visų „WordPress“ egzempliorių duomenų bazė. Tai užtikrina nuoseklumą ir supaprastina duomenų bazių valdymą.
– Pavyzdys: sukurkite debesies SQL egzempliorių pavadinimu „wordpress-db“.
2. Duomenų bazės konfigūracija:
– Sukonfigūruokite „Cloud SQL“ egzempliorių su reikiamomis duomenų bazėmis ir naudotojais, kurių reikalauja „WordPress“.
– Įsitikinkite, kad failas „wp-config.php“ kiekviename „WordPress“ egzemplioriuje nukreipia į šį „Cloud SQL“ egzempliorių.
3. Įgalinkite privatų IP:
– Įgalinkite „Cloud SQL“ egzemplioriaus privatų IP, kad užtikrintumėte saugų ir efektyvų ryšį tarp žiniatinklio serverių ir duomenų bazės tame pačiame VPC.
3. Objektų saugykla medijos failams
1. Naudokite saugyklą debesyje:
– Laikykite medijos failus (įkėlimus) bendroje vietoje, kad užtikrintumėte nuoseklumą visais atvejais. Šiuo tikslu naudokite „Google Cloud Storage“.
– Pavyzdys: sukurkite debesies saugyklos segmentą pavadinimu „wordpress-media“.
2. Sukonfigūruokite „WordPress“, kad galėtumėte naudoti saugyklą debesyje:
– Naudokite papildinį arba pasirinktinį kodą, kad sukonfigūruotumėte „WordPress“ įkelti medijos failus į debesies saugyklos segmentą, o ne į vietinę failų sistemą.
4. Apkrovos balansavimo priemonės konfigūracija
1. Sukurkite visuotinį HTTP(S) apkrovos balansavimo priemonę:
– Eikite į GCP konsolę ir sukurkite naują visuotinį HTTP(S) apkrovos balansavimo priemonę.
– Sukonfigūruokite sąsają naudoti visuotinį IP adresą ir nustatykite reikiamus SSL sertifikatus, jei reikalingas HTTPS.
2. Backend konfigūracija:
– Pridėkite anksčiau sukurtas virtualias mašinas („wordpress-vm-1“, „wordpress-vm-2“, „wordpress-vm-3“) į apkrovos balansavimo priemonės užpakalinę paslaugą.
– Konfigūruokite sveikatos patikrinimus, kad galėtumėte stebėti kiekvieno „WordPress“ egzemplioriaus būseną. Įprastas būklės patikrinimas gali apimti HTTP užklausų siuntimą į konkretų galutinį tašką (pvz., „/health“) ir laukiant 200 gerai atsakymo.
3. Seanso bendrumas:
– Jei reikia, sukonfigūruokite seanso giminingumą, kad naudotojai išlaikytų nuoseklią seansą su vienu vidiniu egzemplioriumi, kai sąveikauja su svetaine.
5. Automatinio mastelio keitimo konfigūracija
1. Įgalinkite automatinį mastelio keitimą:
– Sukonfigūruokite užpakalinę paslaugą, kad ji naudotų automatinį mastelio keitimą pagal metriką, pvz., procesoriaus panaudojimą arba užklausų rodiklį. Tai užtikrina, kad „WordPress“ egzempliorių skaičius gali padidėti arba mažėti atsižvelgiant į srauto poreikius.
– Pavyzdys: nustatykite 60 % tikslinį procesoriaus panaudojimą ir sukonfigūruokite mažiausią ir didžiausią egzempliorių skaičių.
6. DNS konfigūracija
1. Atnaujinkite DNS įrašus:
– Nukreipkite savo domeno DNS įrašus į apkrovos balansavimo priemonės IP adresą. Tai užtikrina, kad visas įeinantis srautas būtų nukreiptas per apkrovos balansavimo įrenginį.
Konfigūracijos pavyzdys
VM kūrimas ir WordPress diegimas
bash gcloud compute instances create wordpress-vm-1 --zone=us-central1-a --machine-type=e2-medium --image-family=debian-10 --image-project=debian-cloud gcloud compute instances create wordpress-vm-2 --zone=us-central1-b --machine-type=e2-medium --image-family=debian-10 --image-project=debian-cloud gcloud compute instances create wordpress-vm-3 --zone=us-central1-c --machine-type=e2-medium --image-family=debian-10 --image-project=debian-cloud
Įdiekite Apache, PHP ir WordPress kiekviename egzemplioriuje:
bash sudo apt update sudo apt install apache2 php php-mysql -y wget https://wordpress.org/latest.tar.gz tar -xvf latest.tar.gz sudo mv wordpress/* /var/www/html/ sudo chown -R www-data:www-data /var/www/html/ sudo systemctl restart apache2
„Cloud SQL“ konfigūravimas
Sukurkite debesies SQL egzempliorių:
bash gcloud sql instances create wordpress-db --tier=db-n1-standard-1 --region=us-central1 gcloud sql users set-password root --host=% --instance=wordpress-db --password=yourpassword
Apkrovos balansavimo priemonės konfigūravimas
Sukurkite visuotinį HTTP(S) apkrovos balansavimo priemonę:
1. Frontend konfigūracija:
– Nustatykite visuotinį IP adresą.
– Sukonfigūruokite SSL sertifikatus, jei naudojate HTTPS.
2. Backend konfigūracija:
– Pridėkite VM prie užpakalinės paslaugos.
– Nustatyti sveikatos patikrinimus.
bash gcloud compute health-checks create http wordpress-health-check --request-path=/health gcloud compute backend-services create wordpress-backend-service --protocol=HTTP --health-checks=wordpress-health-check --global gcloud compute backend-services add-backend wordpress-backend-service --instance-group=wordpress-vm-group --global
3. URL žemėlapis ir tikslinis tarpinis serveris:
– Sukurkite URL žemėlapį ir taikykite HTTP(S) tarpinį serverį.
bash gcloud compute url-maps create wordpress-url-map --default-service=wordpress-backend-service gcloud compute target-http-proxies create wordpress-http-proxy --url-map=wordpress-url-map gcloud compute forwarding-rules create wordpress-http-forwarding-rule --global --target-http-proxy=wordpress-http-proxy --ports=80
Nuoseklumo užtikrinimas
Nuosekli prieiga prie duomenų bazės pasiekiama naudojant centralizuotą debesies SQL egzempliorių. Medijos failų nuoseklumas užtikrinamas naudojant „Cloud Storage“, kurią visi egzemplioriai pasiekia vienodai. Jei reikia, seanso giminingumas gali būti sukonfigūruotas taip, kad būtų palaikomos vartotojo sesijos su konkrečiais vidiniais egzemplioriais.
Baigiamieji svarstymai
- Saugumas: Užtikrinkite, kad būtų nustatytos tinkamos ugniasienės taisyklės, apribojančios prieigą prie duomenų bazės ir kitų jautrių komponentų.
- Stebėjimas ir registravimas: Naudokite GCP stebėjimo ir registravimo paslaugas, kad galėtumėte stebėti savo infrastruktūros našumą ir būklę.
- Atsarginė kopija ir atkūrimas: Įdiekite „Cloud SQL“ egzemplioriaus ir „Cloud Storage“ segmento atsarginės kopijos strategiją, kad išvengtumėte duomenų praradimo.
Atlikdami šiuos veiksmus, galite sukonfigūruoti patikimą ir keičiamo dydžio subalansuotą „WordPress“ aplinką GCP, užtikrindami aukštą pasiekiamumą ir duomenų nuoseklumą keliuose vidiniuose egzemplioriuose.
Kiti naujausi klausimai ir atsakymai apie EITC/CL/GCP „Google Cloud Platform“:
- Kaip apskaičiuoti potinklio IP adresų diapazoną?
- Kuo skiriasi „Cloud AutoML“ ir „Cloud AI Platform“?
- Kuo skiriasi „Big Table“ ir „BigQuery“?
- Ar prasminga diegti apkrovos balansavimą, kai naudojamas tik vienas vidinis žiniatinklio serveris?
- Jei „Cloud Shell“ pateikia iš anksto sukonfigūruotą apvalkalą su „Cloud SDK“ ir jam nereikia vietinių išteklių, koks pranašumas naudojant vietinį „Cloud SDK“ diegimą, o ne „Cloud Shell“ naudojant „Cloud Console“?
- Ar yra „Android“ mobilioji programa, kurią galima naudoti „Google Cloud Platform“ tvarkymui?
- Kokie yra „Google Cloud Platform“ valdymo būdai?
- Kas yra debesų kompiuterija?
- Kuo skiriasi „Bigquery“ ir „Cloud SQL“?
- Kuo skiriasi debesies SQL ir debesies veržliaraktis
Peržiūrėkite daugiau klausimų ir atsakymų EITC/CL/GCP Google Cloud Platform
Daugiau klausimų ir atsakymų:
- Laukas: Debesis Kompiuterija
- programa: EITC/CL/GCP „Google Cloud Platform“ (eikite į sertifikavimo programą)
- Pamoka: GSP tinklas (eiti į susijusią pamoką)
- Tema: Apkrovos balansavimas (eiti į susijusią temą)