Debesijos paslaugos ir virtualizacija

Skip to content

Tai mašinu versta tekstas, kuriame gali būti klaidų!

Skytjenestės ir virtualizacija yra glaudžiai susijusios: abi apima duomenų išteklių naudojimą neturint visos įrangos. Tačiau yra keletas svarbių skirtumų.

Kas yra virtualizacija?

Virtualizacija reiškia, kad viename fiziniame kompiuteryje veikia kelios „virtualios“ mašinos. Vietoj to, kad turėtumėte atskirą fizinį serverį žiniatinklio serveriui, kitą – duomenų bazei ir trečią – failų serveriui, galite paleisti visus tris kaip virtualias mašinas viename ir tame pačiame kompiuteryje.

Programinė įranga, leidžianti tai padaryti, vadinama hipervizoriumi:

Tipas Paaiškinimas Pavyzdys
1 tipas (bare-metal) Veikia tiesiogiai ant aparatinės įrangos, be įprastos OS po juo Proxmox, VMware ESXi
2 tipas (hosted) Veikia virš įprastos operacinės sistemos VirtualBox, VMware Workstation

Type 1 vs. Type 2

  • Type 1 yra tai, ką naudojame gamyboje ir serverinėje patalpoje. Proxmox veikia tiesiogiai ant serverio.
  • Type 2 yra tai, ką naudojate savo kompiuteryje testavimui. VirtualBox veikia virš Windows arba macOS.

Kas yra virtuali mašina (VM)?

VM yra visa operacinė sistema, veikianti kitoje. Ji turi savo (virtualią) atmintį, CPU ir diską, tačiau dalijasi fizine įranga su kitomis VM.

Virtualių mašinų privalumai:

  • Izoliacija – Kiekviena VM yra nepriklausoma. Jei viena VM sugeda, tai neturi įtakos kitoms.
  • Lankstumas – Toje pačioje mašinoje galite paleisti skirtingas operacines sistemas (pvz., Ubuntu ir Windows Server).
  • Momentinis vaizdas/atsarginė kopija – Galite padaryti VM momentinį vaizdą ir atkurti jį, jei kažkas nutinka negerai.
  • Išteklių panaudojimas – Fizinė mašina su didele RAM ir CPU gali paleisti daug VM.

Kas yra konteineriai?

Konteineriai yra lengvesni nei VM. Jie dalijasi operacinės sistemos branduoliu su pagrindine mašina, tačiau veikia izoliuotose aplinkose.

Savybė VM Konteineris
Dydis Didelis (visa OS) Mažas (tik programa ir priklausomybės)
Paleidimo laikas Minutės Sekundės
Izoliacija Stipri (nuosava OS) Gera, bet dalijasi OS branduoliu
Naudojimo sritis Kai reikia visiškai atskiros OS Vienos programos ir mikroservisai
Pavyzdys Proxmox VM, VirtualBox Docker, Podman

Kada ką naudoti?

  • Naudokite VM, kai jums reikia pilno operacinės sistemos, pvz., „Windows Server“ arba „Linux“ serverio su pilnu kontrole.
  • Naudokite kontainerį, kai jums reikia tik paleisti programėlę, pvz., „web“ serverį, duomenų bazę arba „Grafana“.

Praktikoje mes dažnai naudojame abu dalykus: VM, kurie tarnauja kaip „Docker“ kontainerių prietošios.

Debesos paslaugos

Debesos paslaugos reiškia, kad kažkas kitas valdo ir eksploatuoja įrangą, o jūs nuomojate tai, ko jums reikia, per internetą. Vietoj to, kad pirktumėte ir prižiūrėtumėte fizinį serverį, jūs mokate už virtualios mašinos naudojimą debese.

Paslaugų modeliai

Yra trys pagrindiniai debesijos paslaugų modeliai:

Modelis Pilna pavadinimo dalis Ką gaunate Ką kontroliuojate patys Pavyzdys
IaaS Infrastructure as a Service Virtualios mašinos, tinklas ir saugykla OS, programėlės, nustatymai Azure VM, AWS EC2
PaaS Platform as a Service Paruošta platforma savo kodo paleidimui Tik programėlę Azure App Service, Heroku
SaaS Software as a Service Paruoštos programėlės, naudojamos per naršyklę Nėko techninio Microsoft 3365, Google Docs

Lengvas būdas tai įsiminti

  • IaaS = Jūs nuomojate tuščią mašiną. Viską įdiegiate ir konfigūruojate patys.
  • PaaS = Jūs nuomojate paruoštą aplinką. Jums tereikia įdėti savo kodą.
  • SaaS = Jūs nuomojate paruoštą programėlę. Jums tereikia prisijungti ir ją naudoti.

Pateikimo modeliai

Debingo paslaugos gali būti teikiamos įvairiais būdais:

Modelis Paaiškinimas Pavyzdys
Viešoji debesხვა Bendra infrastruktūra, prieinama visiems Azure, AWS, Google Cloud
Privati debesხვა Skirta infrastruktūra konkrečiam verslui Proxmox mokyklos serverių kambaryje
Hibridinė debesხვა Viešosios ir privačios debesrikos derinys Kai kurios paslaugos lokaliai, kai kurios Azure

VPS: Dažna debesų sprendimas

VPS (Virtual Private Server) yra vienas iš dažniausių IaaS sprendimų. Jūs nuomojate virtualią mašiną pas debesų paslaugų teikėją ir turite visišką kontrolę, tarsi turėtumėte savo serverį.

Tipinės paskirties sritys:

  • Paleisti žiniatinklio serverį
  • Nustatyti VPN paslaugą
  • Apgyvendinti programėlę (pvz., Flask + duomenų bazė)
  • Testuoti dalykus nerizikuojant savo įranga

Populiarūs VPS paslaugų teikėjai:

Paslaugų teikėjas Privalumai
Linode (Akamai) Paprastas, gera kaina, geri vadovai
DigitalOcean Patogus naudoti, gera dokumentacija
Hetzner Pigus, europinis (atitinkantis GDPR)
Azure Integruotas su Microsoft ekosistema

Išlaidos debesyje

Debesies paslaugai kainuoja, ir tai gali greitai tapti brangu, jei neskolėsis. VM, kuri veikia 24/7, kainuoja daugiau nei ta, kuri yra išjungtama po naudojimo. Visada patikrinkite kainas ir nustatykite išlaidų pranešimus.

Vietinis vs. debes

Dauguma įmonių naudoja vietinių serverių ir debessybės paslaugų derinį. Štai keletas svarbuু veiksnių, kuriuos reikia įvertinti:

Veiksnys Vietinis (on-premises) Debessybė
Kontrolė Pilna kontrolė virš įrangos ir duomenų Priklausoma nuo tiekėjo
Kaštai Didelės pradinės investicijos Nuolatinės mėnesinės išlaidos
Skalavumas Apribotas fizine įranga Galima skalinti įprastai pagal poreikį
Priežiūra Viską turite tvarkyti patys Tiekėjas prižiūri įrangą
Privatumo apsauga Žinote, kur yra duomenys Duomenys gali būti saugomi kitose šalyse

Easy Užduotis 1 – Paleiskite VM savo mašinoje

Atsisiųskite VirtualBox (nemokamai) ir pabandykite įdiegti Linux paskirstymą, pavyzdžiui, Ubuntu Desktop arba Linux Mint.

  • Kiek RAM ir CPU pasirinksite VM?
  • Ar pastebite, kad jūsų kompiuteris tampa lėtesnis, kai veikia VM?
  • Kas atsitinka, jei bandysite suteikti VM daugiau RAM, nei turi jūsų mašina?

Tai suteikia gerą supratimą apie tai, kaip VM dalijasi fizinės mašinos ištekliais.

Easy Užduotis 2 – Paleiskite konteinerį su Docker

Jei turite įdiegtą Docker (arba turite prieigą prie VM su Docker), pabandykite paleisti:

docker run -d -p 8080:80 nginx
# Paleidžia Nginx konteinerį fone, atidarant 8080 prievadą į 80 prievadą konteineryje

Apsilankykite http://localhost:8080 naršyklėje. Dabar paleidžiate žiniatinklio serverį konteineryje! Palyginkite, kiek laiko tai užtruko, su visa VM su Nginx konfigūracija.

Easy Užduotis 3 – Kokiomis debesų paslaugomis jau naudojatės?

Pagalvokite apie paslaugas, kuriomis naudojatės kasdien:

  • Microsoft 365 (Word, Teams, OneDrive) yra SaaS
  • GitHub Pages svetainei apgyvendinti yra PaaS
  • Jei sukuriate VM Proxmox mokykloje, tai iš esmės yra IaaS (tik vietiniu lygiu)

Ar galite priskirti kitas paslaugas, kuriomis naudojatės?

Easy Užduotis 4 – Kur yra jūsų duomenys?

Eikite į Microsoft Privacy Dashboard ir peržiūrėkite, ką „Microsoft“ saugo apie jus. Taip pat patikrinkite debesų paslaugos, kurią naudojate, sąlygas:

  • Kur pasaulyje saugomi duomenys?
  • Kas atsitiks su duomenimis, jei ištrinsite savo paskyrą?
  • Ar jums priklauso jūsų duomenys, ar juos turi paslaugų teikėjas?

Šie klausimai ypač svarbūs atsižvelgiant į BDAR ir privatumą.

Apibendrinimas

  • Virtualizacija leidžia paleisti kelias paslaugas toje pačioje įrangoje, arba kaip VM, arba kaip konteinerius
  • Debesies paslaugos reiškia, kad įrangos savininkas yra kitas, o jūs nuomojate tai, ko jums reikia
  • IaaS, PaaS ir SaaS apibūdina, kiek atsakomybės tenka jums
  • Praktikoje daugelis naudoja hibridinį sprendimą su vietinėmis ir debesyje įsikūrusiomis paslaugomis
  • Pasirinkimas tarp vietinio ir debesies priklauso nuo kontrolės, išlaidų, mastelio ir privatumo.