Xinchuang-pilvipalvelu on keskeinen osa Kiinan tietotekniikkateollisuuden strategista kehitystä, jonka tavoitteena on ratkaista pitkään olemassa ollut tietoturvahaaste. Kiinan kriittiset tiedonhallintajärjestelmät ja keskeinen infrastruktuuri ovat pitkään riippuneet ulkomaisista, usein lännen hallitsemista teknologioista ja palveluista, mikä on jättänyt maan tietoturvan haavoittuvaksi. Yhdysvaltojen toimet Huawei- ja ZTE-yhtiöitä vastaan ovat toimineet varoituskellona, joka on korostanut tarvetta kehittää itsenäisiä ja hallittavia teknologioita, jotta Kiina voisi vapautua riippuvuudestaan ulkomaisista ydinratkaisuista.
Xinchuang Cloudin perustaminen on osa tätä laajempaa tavoitetta, ja se on vahvasti sidoksissa Kiinan itsenäisen IT-teollisuuden luomiseen. Xinchuang Cloud ei ole vain pilvipalvelu, vaan sen keskeinen ominaisuus on sen kyky tarjota itsenäisesti hallittavia ja turvallisia teknologioita. Sen rakenne pohjautuu kotimaisiin, itse kehitettuihin prosessoreihin ja käyttöjärjestelmiin, ja se on rakentunut innovatiivisen IT-sovellusteollisuuden tarpeiden pohjalta. Xinchuang Cloudin kehityksellä on suuri merkitys Kiinan digitaalisten infrastruktuurien ja sovellusten turvallisuuden ja luotettavuuden kannalta, erityisesti kun otetaan huomioon Kiinan omat haasteet teknologiakehityksessä verrattuna lännen edelläkävijöihin.
Xinchuang Cloudin ekosysteemi kattaa neljä tärkeää aluetta: IT-infrastruktuuri, perusohjelmistot, sovellukset ja tietoturva. Pilvipalvelu toimii keskeisenä tukipilarina kaikille näille alueille ja yhdistää toisiinsa sekä laitteistot että ohjelmistot, ja tukee uusimpia yrityssovelluksia, kuten suuria tietomääriä, tekoälyä, IoT:tä ja 5G:tä. Tällöin Xinchuang Cloud toimii linkkinä koko teollisuusketjun osien välillä ja mahdollistaa niiden yhteensopivan toiminnan.
Kiinassa pilvipalveluiden kehityksellä on ollut lähes samanaikainen aloitus verrattuna lännen kehitykseen, mutta Kiinan markkinat ovat erinomaisessa asemassa, koska niillä on valtava käyttäjäkunta ja valtavat kasvumahdollisuudet. Vaikka Kiina on vielä jäljessä monilla teknologian ytimien alueilla, kuten tietoturvassa ja ydinohjelmistojen kehityksessä, pilvipalveluissa maa on alkanut saavuttaa lännen tason ja sillä on voimakas kasvu ympäristönä. Xinchuang Cloudin kehitykselle on suotuisa tausta, sillä Kiinassa on suuri määrä huipputason ohjelmisto- ja laitteistotekniikan asiantuntijoita, jotka tukevat sen tutkimus- ja kehitystyötä.
Tietoturva on pilvipalveluiden kehityksessä ratkaiseva tekijä, ja se korostuu erityisesti Xinchuang Cloudin kaltaisessa järjestelmässä. Pilvipalveluiden tietoturvassa on kaksi pääalueetta: käyttäjätietojen yksityisyyden suojaaminen ja suojaus perinteisiltä internet- ja laitteistohyökkäyksiltä. Pilvipalveluiden tietoturvatekniikat ovat kehittyneet nopeasti ja sisältävät mm. täyden levyn salauksen, asiakasavaimien hallinnan, tunkeutumisen eston, turvallisuustapahtumien hallinnan (SIEM), lokianalyysin, kaksivaiheisen tunnistautumisen ja fyysisen eristämisen. Kiinan pilvipalvelut ja erityisesti Xinchuang Cloud tarvitsevat kaikkia näitä tekniikoita varmistaakseen, että niiden infrastruktuuri pysyy turvallisena, erityisesti kun otetaan huomioon mahdolliset ulkomaiset uhkat.
Kiinan hallitus on myös voimakkaasti tukenut pilvipalveluiden kehitystä. Esimerkiksi vuoden 2020 huhtikuussa Kiinan kansallinen kehitys- ja uudistamistoimisto (NDRC) sekä Kiinan kyberavaruuden hallintaviranomainen (CAC) julkaisivat suunnitelman, joka korosti pilvipalveluiden ja suurten tietomäärien käyttöä uusien digitaalisten teknologioiden, kuten tekoälyn, lohkoketjujen ja IoT:n edistämiseksi teollisuudessa ja yrityksissä. Tämä suunnitelma on tukenut pilvipalvelujen käyttöönottoa, joka on osaltaan edistänyt Xinchuang Cloudin kehittymistä ja laajentumista.
Tämä kehitys tarjoaa Kiinalle mahdollisuuden saavuttaa IT-alalla globaalia kilpailukykyä erityisesti pilvipalvelujen ja tietoturvan osalta. Kiinan valtavat markkinat, hallituksen tuki ja jatkuva investointi tutkimukseen tekevät Xinchuang Cloudista tärkeän osan Kiinan digitaalista tulevaisuutta ja sen kykyä hallita omia tietoturvatekniikoitaan globaalissa mittakaavassa.
Endtext
Miten Dockerin kuvia haetaan, käytetään ja hallitaan tehokkaasti?
Dockerin käyttö perustuu kuvien hallintaan, ja sen tehokas hyödyntäminen vaatii ymmärrystä siitä, miten kuvia haetaan, käytetään ja hallitaan paikallisesti ja etänä. Kun etsitään Docker Hubista tarvittavia kuvia, se tehdään yleensä hakemalla peilejä, jotka ovat suosituimpia eli eniten tähtiä saaneita. Jokaisessa hakutuloksessa näkyy peilin nimi, kuvaus, suosio, onko se virallisesti luotu ja onko se automaattisesti rakennettu. Viralliset kuvat, kuten centos, ovat Dockerin tarkastamia ja tukemia, ja niillä on oma, ainutlaatuinen nimensä. Toisaalta kuvat kuten centos/systemd ovat yhteisön luomia ja ylläpitämiä, ja ne voivat sisältää esimerkiksi merkinnän "/".
Peilien etsimiseen liittyy myös mahdollisuus suodattaa hakutuloksia --filter-komennolla. Esimerkiksi, jos haluat nähdä vain virallisesti ylläpidetyt ja automaattisesti rakennettavat kuvat, voit käyttää seuraavaa komentoa:
Tällöin haetaan kuvia, jotka täyttävät nämä kriteerit. Dockerin hakukomento tarjoaa myös muita hyödyllisiä parametreja, kuten:
-
--format: Määrittelee, mitä kenttiä hakutuloksessa näytetään, kuten kuvassa näkyy
docker search --format "{{.Name}}: {{.StarCount}}" centos. -
--limit: Rajoittaa hakutulosten määrää.
-
--no-trunc: Näyttää kuvauksen koko sisällön.
Kun tarvitset kuvaa paikallisesti, voit käyttää docker pull -komentoa. Komento on yksinkertainen:
Tässä NAME viittaa kuvan nimeen ja TAG mahdolliseen versioon. Esimerkiksi, jos haluat ladata CentOSin tietyn version, käytä:
Tämä lataa juuri määritellyn version, kuten centos:7.6, sen sijaan että ladataan oletusversio centos:latest.
Kuvien käsittelyyn liittyy myös mahdollisuus listata paikalliset kuvat käyttämällä komentoa docker image ls. Komento näyttää mm. kuvan nimen, version, ID:n, luomisajan ja koon:
Tässä näkyy kuvan rakenne ja sen koko, mikä auttaa ymmärtämään, kuinka monta kerrosta kuvaan on lisätty. Docker käyttää kerrosrakennetta, jossa kukin kuva sisältää erillisiä kerroksia, ja vain erot kerroksissa tallennetaan. Tämä säästää levytilaa ja parantaa tehokkuutta. Jos kuvassa ei enää tarvita joitakin kerroksia, ne voidaan poistaa docker rmi tai docker image rm -komennolla.
Kuvia poistettaessa saatat nähdä kahdenlaista tulostetta: Untagged ja Deleted. Tämä johtuu siitä, että Docker voi poistaa kuvan tunnisteet ilman, että se poistaa itse kuvan, jos muut tunnisteet edelleen viittaavat siihen. Dockerin kerrosrakenteen takia vain kerroksia, joita ei enää käytetä, poistetaan, mikä tekee kuvien uudelleenkäytöstä erittäin tehokasta. Jos taas kontti on luotu tietyn kuvan perusteella, et voi poistaa kuvaa, vaikka kontti ei olisikaan käynnissä.
Kun olet oppinut hakemaan ja hallitsemaan kuvia Docker Hubista, seuraava askel on niiden käyttö paikallisesti. Jos Docker ei löydä kuvaa paikallisesta rekisteristä, se lataa kuvan etärekisteristä. Tämä on kuitenkin vähemmän tehokasta, sillä joka kerta, kun docker run -komento suoritetaan, käynnistetään uusi kontti. Jos tarkoituksenasi on vain ladata kuva paikallisesti ilman konttia, voit käyttää docker pull -komentoa.
Dockerin käyttö ei rajoitu vain julkisten kuvien hyödyntämiseen. Jos tarvitset enemmän hallintaa ja turvallisuutta kuvillesi, voit luoda oman yksityisen rekisterin. Docker tarjoaa tähän työkalun nimeltä Docker Registry. Sen avulla voit perustaa oman Docker-rekisterin ja liittää siihen yksityisiä kuvia, jotka eivät ole julkisesti saatavilla Docker Hubissa.
Kun luot oman rekisterin, voit käyttää seuraavaa komentoa käynnistääksesi sen:
Tämä käynnistää paikallisen rekisterin, joka on yhdistetty porttiin 5000, ja voit nyt käyttää sitä oman kuvasi hallintaan. Esimerkiksi, jos haluat siirtää CentOS-kuvan julkisesta rekisteristä yksityiseen rekisteriisi, voit ensin nimetä kuvan uudelleen ja sitten siirtää sen:
Tämä luo yksityisen version CentOS-kuvasta, jota voidaan käyttää vain omassa järjestelmässäsi.
Dockerin tehokas käyttö vaatii siis ymmärrystä kuvien hallinnasta, ja erityisesti siitä, miten kuvat tallennetaan, haetaan, käytetään ja poistetaan. Lisäksi yksityisten rekistereiden käyttö on välttämätöntä, jos haluat varmistaa kuviesi turvallisuuden ja kontrollin.
Mikä on Spark-Client-tilan ja YARN-Client-tilan vuorovaikutus ja toiminta?
YARN-Client-tilassa Spark-sovellus toimii paikallisesti asiakkaan koneella, jolloin se voi vuorovaikuttaa asiakasohjelman ja ajuriprosessin välillä. Tämä tilamalli mahdollistaa ajurin paikallisen käytön ja sen ohjaamisen Web UI:n kautta. Oletuksena ajuriprosessin tilan voi tarkistaa osoitteessa “http://master_address:4040”, kun taas YARNin tila on nähtävissä osoitteessa “http://master_address:8088”. YARN-Client-tilan työskentelyprosessi ilmenee selvästi seuraavassa kuvassa, jossa näkyy, kuinka YARN-Client pyytää ResourceManagerilta sovellusprosessin käynnistämistä ja kuinka resurssien hallinta ja tehtävien jakaminen etenevät.
Ensimmäisessä vaiheessa Spark Yarn-Client pyytää ResourceManagerilta sovelluksen käynnistämistä. Tämä prosessi luo SparkContextin ja sen jälkeen DAGSchedulerin ja TASKSchedulerin. YARN-Client-tilassa valitaan YarnClientClusterScheduler, joka toimii asiakaspuolella, kun taas Yarn-Cluster toimii resurssienhallinnassa. Toisessa vaiheessa ResourceManager valitsee solmuhallinnan (NodeManager) klusterissa ja allokoi ensimmäisen säilön sovellusta varten. Sovelluksen aloitusprosessissa AppMstr, joka ei itse aja SparkContextia, kommunikoikin tämän kanssa ja huolehtii resurssien jakamisesta.
Kun SparkContext asiakaspuolella on alustettu, se yhdistää AppMstriin ja rekisteröityy ResourceManagerille. Kolmannessa vaiheessa SparkContext pyytää lisää säilöjä ja muita resursseja tarpeen mukaan. Kun AppMstr on saanut tarvittavat resurssit, se ohjaa NodeManageria käynnistämään CoarseGrainedBackend-prosessin, joka aloittaa tehtävien suorittamisen. Viidennessä vaiheessa SparkContext jakaa tehtävät CoarseGrainedExecutorBackendille, joka suorittaa ne ja raportoi niiden edistymisestä ajurille. Tämä mahdollistaa asiakaspäätteelle tehtävien tilan seuraamisen ja mahdollisten virheiden korjaamisen.
Koko prosessin päätyttyä SparkContext pyytää ResourceManagerilta sovelluksen lopettamista ja ilmoittaa siitä järjestelmän sulkemisesta.
Sparkin käyttö Mesos-ympäristössä
Apache Mesos tarjoaa mahdollisuuden käyttää Sparkia laitteistoklusterissa, jossa se jakaa resursseja muiden ohjelmistokehysten kanssa. Mesosin etuja ovat mm. mahdollisuus dynaamiseen resurssien jakamiseen Sparkin ja muiden kehyksien välillä sekä skaalautuvuus useille Spark-instansseille. Kun ajuriohjelma luo tehtävän ja aloittaa aikataulutuksen, Mesos valitsee koneet, joille kukin tehtävä suoritetaan.
Mesos tukee kahta tilaa, jotka ovat Client ja Cluster. Client-tilassa Spark Mesos -kehys käynnistetään suoraan asiakaskoneessa, ja ajurin ohjelma odottaa sen tuottamia tuloksia. Jos asiakasohjelma suljetaan, ajuri lopettaa toimintansa. Cluster-tilassa ajuriohjelma puolestaan suoritetaan klusterissa, eikä asiakasohjelman sulkeminen vaikuta suoritukseen.
Mesos tukee kahta resurssienhallintatapaa: karkea ja hienojakoinen tilamalli. Karkea malli on oletus, ja se edellyttää pitkäkestoista Spark-tehtävää kussakin koneessa, jossa resursseja varataan koko tehtävän elinkaaren ajan. Tämä malli vähentää käynnistysviivettä, mutta lisää resurssien kulutusta. Hienojakoisessa mallissa jokainen Spark-tehtävä toimii itsenäisenä Mesos-tehtävänä, mikä mahdollistaa paremman resurssien jakamisen, mutta lisää tehtävien käynnistysaikaa.
RDD (Resilient Distributed Dataset) Sparkissa
RDD on Sparkin keskeinen tiedon abstraktio, joka toimii hajautetussa muistissa. RDD:t jakavat tiedot eri solmuihin klusterissa ja niitä käsitellään rinnakkain. Tällainen rakenne mahdollistaa automaattisen virheensietokyvyn, sijaintitietoisen aikataulutuksen ja skaalautuvuuden. RDD:t voivat tallentaa dataa sekä levylle että muistiin ja hallita datan jakautumista. Käyttäjät voivat myös pyytää RDD:tä pysyvän muistissa, jotta sitä voidaan käyttää tehokkaasti rinnakkaisissa operaatioissa. Virheiden sattuessa RDD:t voivat automaattisesti palautua solmuhäiriöistä.
RDD:t tarjoavat laajan valikoiman operaatioita, jotka tekevät niistä käyttökelpoisia eri suurten tietojen käsittelyskenaarioissa, kuten iteratiivisissa algoritmeissa, relaatiokyselyissä, MapReduce-toiminnallisuuksissa ja striiminkäsittelyssä.
RDD:n ominaisuudet
RDD:llä on viisi keskeistä ominaisuutta:
-
Partitiointi: RDD on hajautettu tietorakenne, joka koostuu useista osista. Tämä osiointi määrää, kuinka pieniin osiin tiedot jaetaan ja kuinka rinnakkaisia laskentatehtäviä suoritetaan. Partitioiden määrä määritellään RDD:tä luodessa.
-
Laskenta: RDD:ssä laskenta tapahtuu partitioiden avulla, ja jokainen partio suorittaa omaa laskentatehtäväänsä erikseen. Tämä mahdollistaa tehokkaan rinnakkaisen laskennan.
-
Riippuvuudet: RDD:t voivat olla toistensa riippuvaisia. Nämä riippuvuudet voivat olla kapeita (narrow) tai laajoja (wide), riippuen siitä, kuinka monta lasta RDD:llä voi olla.
-
Partitioija: Sparkissa on kaksi pääasiallista partitiointifunktiota: HashPartitioner ja RangePartitioner. Nämä määrittävät, kuinka avain-arvo-pareja jaetaan eri partitioihin.
-
Vikojen sietokyky: RDD:t tukevat virheiden sietokykyä, mikä tarkoittaa, että ne voivat palautua solmuhäiriöistä ja jatkuvasti suorittaa laskentatehtäviä, vaikka osa järjestelmästä olisi poissa käytöstä.
Tämän lisäksi on tärkeää ymmärtää, että RDD:n käytön hallinta vaatii jatkuvaa huomiota tehtävien eristämiseen ja jakamiseen niin, että laskentatehtävät eivät ylitä tiettyjä resursseja, mikä puolestaan voi johtaa suorituskyvyn heikkenemiseen.
Miten simuloida verkkoympäristöä CloudSimillä ja BRITE-tiedostoilla
Verkkosimulointi on keskeinen osa pilvipalveluiden testaamista ja optimointia, ja siihen voidaan hyödyntää työkaluja kuten CloudSim ja BRITE. Näiden työkalujen avulla voidaan mallintaa monimutkaisia verkkoympäristöjä, joissa on useita solmuja ja reittejä. Näin voidaan testata verkkoliikenteen viivettä, kapasiteettia ja muita verkon ominaisuuksia, jotka vaikuttavat pilvipalveluiden toimintaan.
CloudSim on tehokas simulaattori, joka mahdollistaa pilvipalveluiden resurssien hallinnan, kuten virtuaalikoneiden (VM) luomisen ja hallinnan, datakeskusten (datacenter) määrittämisen ja eri pilvipalvelujen virtuaalisten prosessien simuloimisen. BRITE (Browser for Interconnected Network Topology) puolestaan tarjoaa tavan määritellä ja mallintaa verkkotopologioita, jotka voidaan liittää CloudSim-simulaatioon. Tässä artikkelissa käsitellään, kuinka BRITE-tiedostojen avulla voidaan luoda verkon topologia ja simuloida verkon käyttäytymistä CloudSimillä.
BRITE-tiedoston rakenne
BRITE-tiedosto sisältää tietoja, jotka määrittelevät verkkotopologian rakenteen, kuten solmut (nodes) ja reitit (edges). Esimerkiksi seuraava on esimerkki BRITE-tiedoston sisällöstä:
Tässä tiedostossa "Nodes" sisältää verkon solmujen tiedot, kuten solmun ID, sijainti (koordinaatit), sisään- ja ulosliikenne (in-degree, out-degree) sekä autonomisen järjestelmän ID. "Edges" puolestaan määrittelee reitit solmujen välillä, mukaan lukien etäisyys, viive ja kaistanleveys.
CloudSim ja NetworkTopology-luokka
CloudSim käyttää NetworkTopology-luokkaa simulaation verkon toiminnallisuuden toteuttamiseen. Tämä luokka lukee BRITE-tiedostoja ja luo niistä verkon topologian. Se mahdollistaa verkon viiveen, kaistanleveyden ja muiden ominaisuuksien simuloimisen, jotka voivat vaikuttaa pilvipalveluiden suorituskykyyn.
Simulaatio käynnistetään luomalla tarvittavat resurssit, kuten datakeskukset ja virtuaalikoneet. Tässä on esimerkki ohjelmasta, joka simuloi verkon käyttäytymistä:
Tässä ohjelmassa määritellään datakeskus, luodaan virtuaalikone ja määritellään verkon topologia BRITE-tiedostojen avulla. Samalla simuloidaan pilvitehtävien suorittamista ja niiden vaikutusta verkon viiveisiin ja muihin parametreihin.
Verkkoviiveen vaikutus pilvitehtäviin
Simulaation tuloksista voidaan havaita, että verkon viive vaikuttaa suoraan pilvitehtävien käynnistymisaikaan, mutta ei niiden suoritusaikaan. Esimerkiksi simulaatiossa pilvitehtävän aloitusaika oli 19.6 yksikköä, vaikka datakeskuksessa se olisi ollut 0.1. Tämä viive johtuu verkon liikenteestä ja latenssista, joka tulee esiin erityisesti monimutkaisemmissa verkkoasetuksissa.
Verkkoviiveen huomioiminen on tärkeää, sillä se voi merkittävästi vaikuttaa pilvipalveluiden suorituskykyyn ja asiakaskokemukseen. Esimerkiksi reaaliaikaiset sovellukset ja verkkopohjaiset palvelut, jotka vaativat nopeaa tiedonsiirtoa, saattavat kärsiä viiveistä, mikä voi johtaa asiakastyytyväisyyden heikkenemiseen.
Simulaation merkitys
Verkkosimulaatiot CloudSimillä ja BRITE:llä tarjoavat arvokasta tietoa verkon käyttäytymisestä, joka voi auttaa optimoimaan pilvipalveluja ja ennakoimaan mahdollisia ongelmia ennen niiden ilmenemistä todellisessa ympäristössä. Tämäntyyppiset simulaatiot voivat myös auttaa ymmärtämään, miten erilaiset verkkokonfiguraatiot vaikuttavat palvelujen laatuun ja suorituskykyyn, mikä on keskeistä skaalautuvien pilvipalveluiden suunnittelussa.

Deutsch
Francais
Nederlands
Svenska
Norsk
Dansk
Suomi
Espanol
Italiano
Portugues
Magyar
Polski
Cestina
Русский