Virtualization OpenShift: soithichean, KVM agus innealan brìgheil

Virtualization OpenShift (pròiseact shuas an abhainn - Kubernetes: KubeVirt, faic. an seo и an seo), nee Container-native Virtualization, a thoirt a-steach mar ghoireas den àrd-ùrlar OpenShift, a tha air a dhealbhadh airson a bhith a’ cleachdadh agus a’ riaghladh innealan brìgheil (VMan) mar bhuidhnean bunaiteach Kubernetes. Tha an seòrsa gnìomh seo dùbhlanach gu teicnigeach air sgàth eadar-dhealachaidhean bunaiteach ann an teicneòlas. Gus an amas seo a choileanadh, chleachd sinn teicneòlasan eòlach stèidhichte air Red Hat Enterprise Linux agus KVM, a tha air a bhith còmhla rinn airson grunn bhliadhnaichean agus a tha air an èifeachdas a dhearbhadh.

Virtualization OpenShift: soithichean, KVM agus innealan brìgheil

San artaigil seo, seallaidh sinn ris na taobhan teicnigeach de virtualization OpenShift a tha ga dhèanamh comasach do VMs agus soithichean a bhith còmhla taobh a-staigh aon àrd-ùrlar a bhios gan riaghladh mar aon bhuidheann.

Gnìomhan coimpiutaireachd

Bidh luchd-gleidhidh a’ cleachdadh innealan kernel Linux leithid ainmean-àite agus cgroups gus pròiseasan a sgaradh agus goireasan a riaghladh. Mar as trice thathas a’ tuigsinn pròiseasan mar Python, tagraidhean Java no faidhlichean so-ghnìomhaichte, ach gu dearbh faodaidh iad a bhith nam pròiseasan sam bith, leithid bash, Emacs no vim.

Dè a th’ ann an inneal brìgheil? Bho shealladh an hypervisor, tha seo cuideachd na phròiseas. Ach chan e am pròiseas tagraidh, ach am pròiseas KVM le uallach airson VM sònraichte a chuir an gnìomh.

Virtualization OpenShift: soithichean, KVM agus innealan brìgheil

Anns an ìomhaigh container tha a h-uile inneal, leabharlann agus faidhle a dh ’fheumar airson inneal brìgheil KVM. Ma nì sinn sgrùdadh air pod VM a tha a’ ruith, chì sinn an sin luchd-cuideachaidh agus pròiseasan qemu-kvm. A bharrachd air an sin, tha cothrom againn air innealan KVM airson a bhith a’ riaghladh innealan brìgheil leithid qemu-img, qemu-nbd agus virsh.

Virtualization OpenShift: soithichean, KVM agus innealan brìgheil

Leis gur e pod a th’ ann an inneal brìgheil, bidh e gu fèin-ghluasadach a ’sealbhachadh gnìomhachd pod ann an Kubernetes. Tha pods VM, dìreach mar pods àbhaisteach, fo ùmhlachd sgeamaichean clàr-ama agus slatan-tomhais leithid taints, fulangas, dàimh agus an-aghaidh dàimh. Gheibh thu cuideachd na buannachdan bho ruigsinneachd àrd, msaa. Ach, tha aon eadar-dhealachadh cudromach ann: chan eil pods cunbhalach a 'gluasad bho aoigheachd gu aoigheachd san t-seagh àbhaisteach. Ma thèid nód far loidhne, thèid am pod air a thoirt gu crìch agus ath-shònrachadh gu nód eile sa bhuidheann. Agus a thaobh inneal mas-fhìor, tha sinn an dùil imrich beò fhaicinn.

Gus dèiligeadh ris a’ bheàrn seo, chaidh mìneachadh goireas gnàthaichte (CDR) a chruthachadh gus cunntas a thoirt air an uidheamachd imrich beò air a bheil uallach airson tòiseachadh, sgrùdadh agus riaghladh imrich beò de VMan eadar nodan luchd-obrach.

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

Nuair a thèid nód a chuir dheth, thèid gnìomhan imrich a chruthachadh gu fèin-ghluasadach airson na h-innealan brìgheil sin aig a bheil Live Imrich air a shuidheachadh mar an ro-innleachd fuadachaidh aca. San dòigh seo faodaidh tu smachd a chumail air giùlan innealan brìgheil nuair a ghluaiseas tu eadar nodan brabhsair. Faodaidh tu an dà chuid Live Imrich a rèiteachadh agus an VM a riaghladh, mar a h-uile pod eile.

Lìonra

Bidh siostam Kubernetes sam bith a ’toirt seachad conaltradh eadar nodan agus pods a’ cleachdadh lìonraidhean SDN bathar-bog. Tha OpenShift mar eisgeachd agus, a’ tòiseachadh bho dhreach 3, bidh e a’ cleachdadh OpenShiftSDN gu bunaiteach airson seo. A bharrachd air an sin, tha feart ùr eile aig OpenShift 4 ris an canar Multus, a leigeas leat iomadh lìonra a thoirt seachad agus pods a cheangal riutha aig an aon àm.

Virtualization OpenShift: soithichean, KVM agus innealan brìgheil

Le bhith a’ cleachdadh Multus, faodaidh an rianaire lìonraidhean CNI a bharrachd a mhìneachadh, a thèid an uairsin a chuir a-steach agus a rèiteachadh air a’ bhuidheann le Gnìomhaiche Lìonra Cluster sònraichte. Tha na pods an uairsin ceangailte ri aon no barrachd de na lìonraidhean sin, mar as trice an OpenShiftSDN àbhaisteach agus eadar-aghaidh a bharrachd. Faodar innealan SR-IOV, drochaid àbhaisteach Linux, innealan MACVLAN agus IPVLAN uile a chleachdadh ma tha feum aig an VM agad air. Tha am figear gu h-ìosal a’ sealltainn mar a shuidhicheas tu Multus CNI airson lìonra nan drochaidean air an eadar-aghaidh 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

A thaobh virtualization OpenShift, tha seo a’ ciallachadh gum faodar VM a cheangal gu dìreach ri lìonra a-muigh, a’ dol seachad air SDN. Tha seo cudromach airson innealan brìgheil air an imrich gu OpenShift bho Red Hat Virtualization no VMware vSphere, oir ma tha cothrom agad air an dàrna sreath OSI, cha bhi atharrachadh sam bith ann an roghainnean lìonra. Tha seo cuideachd a’ ciallachadh gum faodadh seòladh lìonra a bhith aig an VM a tha a’ dol seachad air SDN. Mar sin, is urrainn dhuinn innealan lìonra sònraichte a chleachdadh gu h-èifeachdach, no ceangal gu dìreach ris an t-siostam stòraidh thairis air an lìonra ...

Faodaidh tu barrachd ionnsachadh mu mar a chruthaicheas agus a cheanglas tu innealan brìgheil OpenShift virtualization ris an lìonra an seo... A bharrachd air, gnìomhaiche nmstate, air a chleachdadh mar phàirt de virtualization OpenShift, a’ tabhann dòigh eòlach eile air rèiteachadh lìonra a chruthachadh agus a riaghladh air nodan fiosaigeach a thathas a ’cleachdadh fo hypervisors.

Stòradh

Bithear a’ ceangal agus a’ riaghladh diosgan inneal brìgheil taobh a-staigh virtualization OpenShift a’ cleachdadh bun-bheachdan Kubernetes leithid StorageClasses, PersistentVolumeClaims (PVC) agus PersistentVolume (PV), a bharrachd air inbhe protocolaidhean stòraidh airson àrainneachd Kubernetes. Bheir seo dòigh chumanta, eòlach do luchd-rianachd Kubernetes agus sgiobaidhean tagraidh gus an dà chuid soithichean agus innealan brìgheil a riaghladh. Agus airson mòran de luchd-rianachd àrainneachdan virtualization, is dòcha gu bheil am bun-bheachd seo eòlach air leis gu bheil e a ’cleachdadh an aon phrionnsapal de bhith a’ sgaradh faidhlichean rèiteachaidh VM agus diosgan a thathas a ’cleachdadh ann an OpenStack agus mòran àrd-ùrlaran sgòthan eile.

Ach, chan urrainn dhuinn dìreach diosc ùr a chruthachadh airson an VM a h-uile uair, oir nuair a nì sinn imrich bhon hypervisor gu OpenShift, feumaidh sinn an dàta a shàbhaladh. Tha, eadhon nuair a bhios sinn a’ cleachdadh VM ùr, tha e an-còmhnaidh nas luaithe a dhèanamh bho theamplaid na bhith ga chruthachadh bhon fhìor thoiseach. Mar sin, feumaidh sinn comas-gnìomh airson a bhith a’ toirt a-steach na diosgan a th’ ann mar-thà.

Gus a’ ghnìomh seo a dhèanamh nas sìmplidhe, bidh virtualization OpenShift a’ cleachdadh a’ phròiseact Importer Data Containerized (CDI), a lughdaicheas toirt a-steach ìomhaighean diosc de dhiosg bho iomadh stòr gu bhith a’ cruthachadh inntrig 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

Is e an inntrig seo a chuireas an gnìomh CDI, a bhrosnaicheas sreath nan gnìomhan a chithear san fhigear gu h-ìosal:

Virtualization OpenShift: soithichean, KVM agus innealan brìgheil

Às deidh don CDI a bhith deiseil, bidh an diosc inneal brìgheil deiseil airson a chleachdadh agus air a thionndadh gu cruth àbhaisteach OpenShift ...
Nuair a bhios tu ag obair le virtualization OpenShift, tha OpenShift Container Storage (OCS), fuasgladh Red Hat stèidhichte air siostam faidhle Ceph a bhios a’ buileachadh comas stòraidh seasmhach airson soithichean, feumail cuideachd. A bharrachd air na modhan ruigsinneachd àbhaisteach PVC - RWO (bloc) agus RWX (faidhle) - tha OCS a 'toirt seachad RWX airson innealan bloca amh, a tha glè fheumail airson a bhith a' roinneadh ruigsinneachd bloc airson iarrtasan le riatanasan àrd-choileanaidh. A bharrachd air an sin, tha OCS a’ toirt taic don inbhe Tagradh Bucket Object ùr, a leigeas le tagraidhean stòradh dàta stuthan a chleachdadh gu dìreach.

Innealan mas-fhìor ann an soithichean

Ma tha ùidh agad sùil a thoirt air mar a tha e ag obair, fios agad gu bheil virtualization OpenShift ri fhaighinn mu thràth anns an dreach Tech Preview mar phàirt de OpenShift 3.11 agus nas àirde. Faodaidh sealbhadairean fo-sgrìobhaidh OpenShift a th’ ann mar-thà virtualization OpenShift a chleachdadh gu tur an-asgaidh agus às aonais ceumannan a bharrachd. Aig àm na dreuchd seo, tha OpenShift 4.4 agus OpenShift virtualization 2.3 gnàthach; ma tha thu a ’cleachdadh dreachan roimhe, bu chòir dhut ùrachadh gus na feartan as ùire fhaighinn. Bu chòir dreach làn-thaic de virtualization OpenShift a leigeil ma sgaoil san dàrna leth de 2020.

Airson tuilleadh fiosrachaidh cuir fios gu Sgrìobhainnean OpenShift airson stiùireadh stàlaidh, a’ gabhail a-steach Earrann rèiteachaidh multius, a bheir seachad fiosrachadh mu bhith a’ stèidheachadh lìonraidhean taobh a-muigh.

Source: www.habr.com

Cuir beachd ann