Virtualization OpenShift: container, KVM ary milina virtoaly

Virtualization OpenShift (tetikasa ambony - Kubernetes: KubeVirt, jereo. eto и eto), nee Container-native Virtualization, dia nampidirina ho toy ny fampiasa amin'ny sehatra OpenShift, izay natao hametrahana sy hitantana milina virtoaly (VM) ho sampan-draharaha Kubernetes fototra. Ity karazana asa ity dia sarotra ara-teknika noho ny fahasamihafana fototra amin'ny teknolojia. Mba hahatratrarana io tanjona io dia nampiasa teknolojia mahazatra mifototra amin'ny Red Hat Enterprise Linux sy KVM izahay, izay efa niaraka taminay nandritra ny taona maro ary nanaporofo ny fahombiazany.

Virtualization OpenShift: container, KVM ary milina virtoaly

Ato amin'ity lahatsoratra ity dia hijery ny lafiny ara-teknika amin'ny virtoaly OpenShift izay ahafahan'ny VM sy ny kaontenera miara-miaina ao anatin'ny sehatra tokana izay mitantana azy ireo ho toy ny singa tokana.

Asa kajy

Ny kaontenera dia mampiasa mekanika kernel Linux toy ny espace names sy cgroups mba hanavahana ireo dingana sy hitantanana ireo loharanon-karena. Matetika ny dingana dia raisina ho Python, rindranasa Java na rakitra azo tanterahana, fa raha ny marina dia mety ho dingana rehetra izy ireo, toy ny bash, Emacs na vim.

Inona no atao hoe milina virtoaly? Raha ny fomba fijerin'ny hypervisor dia dingana iray ihany koa izany. Saingy tsy ny dingana fampiharana, fa ny dingana KVM tompon'andraikitra amin'ny fanatanterahana VM manokana.

Virtualization OpenShift: container, KVM ary milina virtoaly

Ny sary kaontenera dia ahitana ny fitaovana, tranomboky ary rakitra rehetra ilaina amin'ny milina virtoaly KVM. Raha mandinika ny pod an'ny VM mandeha isika dia hahita mpanampy sy dingana qemu-kvm. Fanampin'izany, afaka miditra amin'ny fitaovana KVM izahay amin'ny fitantanana milina virtoaly toy ny qemu-img, qemu-nbd ary virsh.

Virtualization OpenShift: container, KVM ary milina virtoaly

Koa satria pod ny milina virtoaly dia mandova ho azy ny fiasan'ny pod iray ao amin'ny Kubernetes. Ny pods VM, sahala amin'ny pods mahazatra, dia iharan'ny lamina sy fepetra momba ny fandaharam-potoana toy ny tants, ny fandeferana, ny affinity ary ny anti-affinity. Mahazo tombony amin'ny fahazoana avo lenta ihany koa ianao, sns. Na izany aza, misy fahasamihafana lehibe iray: ny pods mahazatra dia tsy mifindrafindra avy amin'ny mpampiantrano amin'ny heviny mahazatra. Raha mandeha an-tserasera ny node iray, dia tapaka ny pod eo aminy ary afindra any amin'ny node hafa ao amin'ny cluster. Ary amin'ny resaka milina virtoaly, manantena izahay fa hahita fifindra-monina mivantana.

Mba hamahana an'io hantsana io dia noforonina ny famaritana loharanon-karena manokana (CDR) mba hamaritana ny fomba fifindra-monina mivantana izay tompon'andraikitra amin'ny fanombohana, fanaraha-maso ary fitantanana ny fifindra-monina mivantana an'ny VM eo anelanelan'ny node mpiasa.

apiVersion: kubevirt.io/v1alpha3
kind: VirtualMachineInstanceMigration
metadata:
  name: migration-job
spec:
  vmiName: fedora

Rehefa nesorina ny node iray, dia noforonina ho azy ny asa fifindra-monina ho an'ireo milina virtoaly izay nametraka Live Migration ho paikadin'ny fandroahana azy ireo. Amin'izany fomba izany dia azonao atao ny mifehy ny fihetsiky ny milina virtoaly rehefa mivezivezy eo anelanelan'ny node cluster. Afaka manitsy ny Live Migration ianao ary mitantana ny VM, toy ny pods hafa rehetra.

Network

Ny rafitra Kubernetes rehetra dia manome fifandraisana eo amin'ny nodes sy pods amin'ny alàlan'ny tambajotra SDN rindrambaiko. Ny OpenShift dia tsy misy afa-tsy ary, manomboka amin'ny version 3, dia mampiasa OpenShiftSDN ho default ho an'ity. Fanampin'izany, OpenShift 4 dia manana endri-javatra vaovao iray hafa antsoina hoe Multus, izay ahafahanao manamboatra tambajotra marobe ary mampifandray ireo pods miaraka amin'izy ireo.

Virtualization OpenShift: container, KVM ary milina virtoaly

Amin'ny fampiasana Multus, ny mpitantana dia afaka mamaritra tambajotra CNI fanampiny, izay hapetraka sy hamboarina ao amin'ny cluster amin'ny alàlan'ny Cluster Network Operator manokana. Ny pods dia mifandray amin'ny iray na maromaro amin'ireo tambajotra ireo, matetika ny OpenShiftSDN mahazatra sy ny interface fanampiny. Ny fitaovana SR-IOV, ny Linux Bridge mahazatra, ny MACVLAN ary ny fitaovana IPVLAN dia azo ampiasaina avokoa raha mila izany ny VM-nao. Ny sary etsy ambany dia mampiseho ny fomba fametrahana Multus CNI ho an'ny tambajotra tetezana amin'ny interface eth1:

apiVersion: operator.openshift.io/v1
kind: Network
metadata:
  name: cluster
spec:
  additionalNetworks:
  - name: multus1
rawCNIConfig: '{ "cniVersion": "0.3.1", "type": "bridge", "master": "eth1", "ipam":
   { "type": "static", "addresses": [ { "address": "191.168.1.1/24" } ] } }'
   type: Raw

Mifandray amin'ny virtoaly OpenShift, midika izany fa ny VM dia azo ampifandraisina mivantana amin'ny tambajotra ivelany, mandalo ny SDN. Zava-dehibe ho an'ny milina virtoaly nifindra tany OpenShift avy amin'ny Red Hat Virtualization na VMware vSphere, satria raha afaka miditra amin'ny sosona OSI faharoa ianao dia tsy hisy fiovana eo amin'ny sehatry ny tambajotra. Midika koa izany fa ny VM dia mety manana adiresy tambajotra izay mandalo SDN. Noho izany, afaka mampiasa tsara ny adaptatera tambajotra manokana isika, na mifandray mivantana amin'ny rafitra fitahirizana amin'ny tambajotra ...

Azonao atao ny mianatra bebe kokoa momba ny fomba famoronana sy fampifandraisana ireo milina virtoaly virtoaly OpenShift amin'ny tambajotra eto... Ankoatra izany, operator nmstate, napetraka ho ampahany amin'ny virtoaly OpenShift, dia manolotra fomba mahazatra hafa hamoronana sy hitantanana ny fandrindrana tambajotra amin'ny nodes ara-batana izay ampiasaina amin'ny hypervisors.

fitehirizana

Ny fampifandraisana sy ny fitantanana ny kapila milina virtoaly ao anatin'ny virtoaly OpenShift dia atao amin'ny fampiasana foto-kevitra Kubernetes toy ny StorageClasses, PersistentVolumeClaims (PVC) ary PersistentVolume (PV), ary koa ny fenitra fitahirizana protocols ho an'ny tontolo Kubernetes. Izany dia manome ny mpitantana sy ny ekipan'ny fampiharana Kubernetes fomba mahazatra sy mahazatra hitantanana ny kaontenera sy ny milina virtoaly. Ary ho an'ny administratera maro amin'ny tontolo virtoaly, mety ho mahazatra ity hevitra ity satria mampiasa ny fitsipika mitovy amin'ny fanasarahana ny rakitra sy ny disks VM izay ampiasaina amin'ny OpenStack sy ny sehatra rahona maro hafa.

Na izany aza, tsy afaka mamorona kapila vaovao ho an'ny VM fotsiny isika, satria rehefa mifindra avy amin'ny hypervisor mankany OpenShift dia mila mitahiry ny angona. Eny, na dia mametraka VM vaovao aza isika, dia haingana kokoa ny manao izany amin'ny maodely noho ny mamorona azy hatrany am-boalohany. Noho izany, mila fampiasa amin'ny fanafarana kapila efa misy isika.

Mba hanatsorana ity asa ity, ny virtoaly OpenShift dia mametraka ny tetikasa Containerized Data Importer (CDI), izay mampihena ny fanafarana sary kapila avy amin'ny loharano maro mba hamoronana fidirana PVC.

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: "fedora-disk0"
  labels:
    app: containerized-data-importer
  annotations:
    cdi.kubevirt.io/storage.import.endpoint: "http://10.0.0.1/images/Fedora-Cloud-Base-31-1.9.x86_64.qcow2"
spec:
  storageClassName: ocs-gold
  accessModes:
  - ReadWriteOnce
  resources:
    requests:
      storage: 20Gi

Ity fidirana ity no manetsika ny CDI, miteraka ny filaharan'ny hetsika aseho amin'ny sary etsy ambany:

Virtualization OpenShift: container, KVM ary milina virtoaly

Rehefa vita ny CDI, ny PVC dia ahitana ny kapila milina virtoaly vonona hampiasaina ary avadika ho endrika OpenShift mahazatra...
Rehefa miara-miasa amin'ny virtoaly OpenShift, OpenShift Container Storage (OCS), vahaolana Red Hat mifototra amin'ny rafitra rakitra Ceph izay mampihatra ny fitehirizana maharitra ho an'ny container, dia ilaina ihany koa. Ho fanampin'ny fomba fidirana PVC mahazatra - RWO (block) sy RWX (rakitra) - OCS dia manome RWX ho an'ny fitaovana fanakanana manta, izay tena ilaina amin'ny fizarana fidirana amin'ny sakana ho an'ny fampiharana manana fepetra avo lenta. Ankoatr'izay, ny OCS dia manohana ny fenitra Object Bucket Claim vaovao, izay ahafahan'ny fampiharana mampiasa mivantana ny fitahirizana angon-drakitra.

Masinina virtoaly ao anaty kaontenera

Raha liana amin'ny fanamarinana ny fomba fiasa ianao dia fantaro fa ny virtoaly OpenShift dia efa misy amin'ny dikan-teny Tech Preview ho ampahany amin'ny OpenShift 3.11 sy ambony. Ireo tompon'ny famandrihana OpenShift efa misy dia afaka mampiasa virtoaly OpenShift maimaim-poana tanteraka ary tsy misy dingana fanampiny. Amin'ny fotoanan'ity lahatsoratra ity, OpenShift 4.4 sy OpenShift virtoaly 2.3 dia misy ankehitriny; raha mampiasa dikan-teny teo aloha ianao dia tokony hanavao mba hahazoana ireo endri-javatra farany. Tokony havoaka amin'ny tapany faharoa amin'ny taona 2020 ny dikan-teny virtoaly OpenShift tohana tanteraka.

Raha mila fanazavana fanampiny dia jereo ny OpenShift antontan-taratasy ho an'ny torolàlana fametrahana, anisan'izany Fizarana setup Multus, izay manome fampahalalana momba ny fametrahana tambajotra ivelany.

Source: www.habr.com

Add a comment