OpenShift மெய்நிகராக்கம்: கொள்கலன்கள், KVM மற்றும் மெய்நிகர் இயந்திரங்கள்

OpenShift மெய்நிகராக்கம் (அப்ஸ்ட்ரீம் திட்டம் - குபெர்னெட்ஸ்: KubeVirt, பார்க்கவும். இங்கே и இங்கே), nee கன்டெய்னர்-நேட்டிவ் மெய்நிகராக்கம், OpenShift இயங்குதளத்தின் செயல்பாடாக அறிமுகப்படுத்தப்பட்டது, இது மெய்நிகர் இயந்திரங்களை (VMs) அடிப்படை Kubernetes நிறுவனங்களாகப் பயன்படுத்துவதற்கும் நிர்வகிப்பதற்கும் வடிவமைக்கப்பட்டுள்ளது. தொழில்நுட்பத்தில் உள்ள அடிப்படை வேறுபாடுகள் காரணமாக இந்த வகையான பணி தொழில்நுட்ப ரீதியாக சவாலானது. இந்த இலக்கை அடைய, Red Hat Enterprise Linux மற்றும் KVM அடிப்படையிலான பழக்கமான தொழில்நுட்பங்களைப் பயன்படுத்தினோம், அவை பல ஆண்டுகளாக எங்களிடம் இருந்து அவற்றின் செயல்திறனை நிரூபித்துள்ளன.

OpenShift மெய்நிகராக்கம்: கொள்கலன்கள், KVM மற்றும் மெய்நிகர் இயந்திரங்கள்

இந்தக் கட்டுரையில், ஓபன்ஷிஃப்ட் மெய்நிகராக்கத்தின் தொழில்நுட்ப அம்சங்களைப் பார்ப்போம், இது VMகள் மற்றும் கொள்கலன்களை ஒரே அமைப்பாக நிர்வகிக்கும் ஒரே தளத்தில் இணைந்து செயல்படுவதை சாத்தியமாக்குகிறது.

கணக்கீட்டு பணிகள்

கன்டெய்னர்கள் லினக்ஸ் கர்னல் பொறிமுறைகளான பெயர்வெளிகள் மற்றும் cgroups போன்ற செயல்முறைகளை தனிமைப்படுத்தவும் வளங்களை நிர்வகிக்கவும் பயன்படுத்துகின்றன. பொதுவாக செயல்முறைகள் பைதான், ஜாவா பயன்பாடுகள் அல்லது இயங்கக்கூடிய கோப்புகள் என புரிந்து கொள்ளப்படுகின்றன, ஆனால் உண்மையில் அவை பாஷ், ஈமாக்ஸ் அல்லது விம் போன்ற எந்த செயல்முறைகளாகவும் இருக்கலாம்.

மெய்நிகர் இயந்திரம் என்றால் என்ன? ஹைப்பர்வைசரின் பார்வையில், இதுவும் ஒரு செயல்முறைதான். ஆனால் விண்ணப்ப செயல்முறை அல்ல, ஆனால் ஒரு குறிப்பிட்ட VM ஐ இயக்குவதற்கு KVM செயல்முறை பொறுப்பு.

OpenShift மெய்நிகராக்கம்: கொள்கலன்கள், KVM மற்றும் மெய்நிகர் இயந்திரங்கள்

கொள்கலன் படத்தில் KVM மெய்நிகர் இயந்திரத்திற்கு தேவையான அனைத்து கருவிகள், நூலகங்கள் மற்றும் கோப்புகள் உள்ளன. இயங்கும் VM இன் பாட்களை நாம் ஆய்வு செய்தால், அங்கு உதவியாளர்கள் மற்றும் qemu-kvm செயல்முறைகளைக் காண்போம். கூடுதலாக, qemu-img, qemu-nbd மற்றும் virsh போன்ற மெய்நிகர் இயந்திரங்களை நிர்வகிப்பதற்கான KVM கருவிகளுக்கான அணுகல் எங்களிடம் உள்ளது.

OpenShift மெய்நிகராக்கம்: கொள்கலன்கள், KVM மற்றும் மெய்நிகர் இயந்திரங்கள்

ஒரு மெய்நிகர் இயந்திரம் ஒரு பாட் என்பதால், அது குபெர்னெட்டஸில் உள்ள ஒரு பாட்டின் அனைத்து செயல்பாடுகளையும் தானாகவே பெறுகிறது. வழக்கமான காய்களைப் போலவே, VM காய்களும், திட்டமிடல் திட்டங்கள் மற்றும் கறைகள், சகிப்புத்தன்மை, தொடர்பு மற்றும் எதிர்ப்பு-தொடர்பு போன்ற அளவுகோல்களுக்கு உட்பட்டவை. அதிக அளவில் கிடைப்பது போன்ற பலன்களையும் பெறுவீர்கள். இருப்பினும், ஒரு முக்கியமான வேறுபாடு உள்ளது: வழக்கமான காய்கள் வழக்கமான அர்த்தத்தில் ஹோஸ்டிலிருந்து ஹோஸ்டுக்கு இடம்பெயர்வதில்லை. ஒரு கணு ஆஃப்லைனில் சென்றால், அதில் உள்ள பாட் நிறுத்தப்பட்டு, கிளஸ்டரில் உள்ள மற்றொரு முனைக்கு மீண்டும் ஒதுக்கப்படும். மெய்நிகர் இயந்திரத்தின் விஷயத்தில், நேரடி இடம்பெயர்வைக் காண எதிர்பார்க்கிறோம்.

இந்த இடைவெளியை நிவர்த்தி செய்ய, ஒரு தனிப்பயன் வள வரையறை (CDR) உருவாக்கப்பட்டது, இது நேரடி இடம்பெயர்வு பொறிமுறையை விவரிக்க உருவாக்கப்பட்டது, இது VM களின் நேரடி இடம்பெயர்வுகளை பணியாளர் முனைகளுக்கு இடையில் தொடங்குவதற்கும், கண்காணிப்பதற்கும் மற்றும் நிர்வகிப்பதற்கும் பொறுப்பாகும்.

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

ஒரு முனை செயலிழக்கப்படும் போது, ​​லைவ் மைக்ரேஷனை வெளியேற்றும் உத்தியாக அமைக்கப்பட்டுள்ள மெய்நிகர் இயந்திரங்களுக்கு இடம்பெயர்வு பணிகள் தானாகவே உருவாக்கப்படும். இந்த வழியில் நீங்கள் கிளஸ்டர் முனைகளுக்கு இடையில் நகரும் போது மெய்நிகர் இயந்திரங்களின் நடத்தையை கட்டுப்படுத்தலாம். நீங்கள் லைவ் மைக்ரேஷனை உள்ளமைக்கலாம் மற்றும் மற்ற எல்லா காய்களைப் போலவே VMஐயும் நிர்வகிக்கலாம்.

பிணைய

எந்த குபெர்னெட்டஸ் அமைப்பும் மென்பொருள் SDN நெட்வொர்க்குகளைப் பயன்படுத்தி கணுக்கள் மற்றும் காய்களுக்கு இடையேயான தொடர்பை வழங்குகிறது. OpenShift விதிவிலக்கல்ல, பதிப்பு 3 இல் தொடங்கி, இதற்கு இயல்புநிலையாக OpenShiftSDN ஐப் பயன்படுத்துகிறது. கூடுதலாக, OpenShift 4 இல் Multus எனப்படும் மற்றொரு புதிய அம்சம் உள்ளது, இது பல நெட்வொர்க்குகளை கிடைக்கச் செய்து, ஒரே நேரத்தில் அவற்றுடன் காய்களை இணைக்க அனுமதிக்கிறது.

OpenShift மெய்நிகராக்கம்: கொள்கலன்கள், KVM மற்றும் மெய்நிகர் இயந்திரங்கள்

Multus ஐப் பயன்படுத்தி, நிர்வாகி கூடுதல் CNI நெட்வொர்க்குகளை வரையறுக்கலாம், பின்னர் அவை ஒரு சிறப்பு கிளஸ்டர் நெட்வொர்க் ஆபரேட்டரால் கிளஸ்டரில் வரிசைப்படுத்தப்பட்டு கட்டமைக்கப்படும். காய்கள் இந்த நெட்வொர்க்குகளில் ஒன்று அல்லது அதற்கு மேற்பட்டவற்றுடன் இணைக்கப்படும், பொதுவாக நிலையான OpenShiftSDN மற்றும் கூடுதல் இடைமுகம். SR-IOV சாதனங்கள், நிலையான லினக்ஸ் பிரிட்ஜ், MACVLAN மற்றும் IPVLAN சாதனங்கள் அனைத்தும் உங்கள் VMக்கு தேவைப்பட்டால் பயன்படுத்தப்படலாம். eth1 இடைமுகத்தில் பிரிட்ஜ் நெட்வொர்க்கிற்கு Multus CNI ஐ எவ்வாறு அமைப்பது என்பதை கீழே உள்ள படம் காட்டுகிறது:

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

OpenShift மெய்நிகராக்கம் தொடர்பாக, SDN ஐப் புறக்கணித்து VM ஐ நேரடியாக வெளிப்புற நெட்வொர்க்குடன் இணைக்க முடியும். Red Hat மெய்நிகராக்கம் அல்லது VMware vSphere இலிருந்து OpenShift க்கு மாற்றப்பட்ட மெய்நிகர் இயந்திரங்களுக்கு இது முக்கியமானது, ஏனெனில் நீங்கள் இரண்டாவது OSI லேயருக்கான அணுகலைப் பெற்றிருந்தால், பிணைய அமைப்புகளில் எந்த மாற்றமும் இருக்காது. இதன் பொருள் VM ஆனது SDN ஐ கடந்து செல்லும் பிணைய முகவரியைக் கொண்டிருக்கலாம். எனவே, நாம் சிறப்பு நெட்வொர்க் அடாப்டர்களை திறம்பட பயன்படுத்தலாம் அல்லது பிணையத்தில் சேமிப்பக அமைப்புடன் நேரடியாக இணைக்கலாம்...

OpenShift மெய்நிகராக்க மெய்நிகர் இயந்திரங்களை பிணையத்துடன் எவ்வாறு உருவாக்குவது மற்றும் இணைப்பது என்பது பற்றி மேலும் அறியலாம் இங்கே... தவிர, nmstate ஆபரேட்டர், OpenShift மெய்நிகராக்கத்தின் ஒரு பகுதியாக பயன்படுத்தப்பட்டது, ஹைப்பர்வைசர்களின் கீழ் பயன்படுத்தப்படும் இயற்பியல் முனைகளில் பிணைய உள்ளமைவுகளை உருவாக்க மற்றும் நிர்வகிக்க மற்றொரு பழக்கமான வழியை வழங்குகிறது.

சேமிப்பு

OpenShift மெய்நிகராக்கத்தில் உள்ள மெய்நிகர் இயந்திர வட்டுகளை இணைத்தல் மற்றும் நிர்வகித்தல் ஆகியவை குபெர்னெட்ஸ் கருத்துகளான StorageClasses, PersistentVolumeClaims (PVC) மற்றும் PersistentVolume (PV) மற்றும் குபெர்னெட்டஸ் சூழலுக்கான சேமிப்பக நெறிமுறைகள் போன்றவற்றைப் பயன்படுத்தி செய்யப்படுகிறது. இது Kubernetes நிர்வாகிகள் மற்றும் பயன்பாட்டுக் குழுக்களுக்கு கொள்கலன்கள் மற்றும் மெய்நிகர் இயந்திரங்கள் இரண்டையும் நிர்வகிக்க பொதுவான, பழக்கமான வழியை வழங்குகிறது. மெய்நிகராக்க சூழல்களின் பல நிர்வாகிகளுக்கு, இந்த கருத்து நன்கு தெரிந்ததாக இருக்கலாம், ஏனெனில் இது ஓபன்ஸ்டாக் மற்றும் பல கிளவுட் இயங்குதளங்களில் பயன்படுத்தப்படும் VM உள்ளமைவு கோப்புகள் மற்றும் வட்டுகளைப் பிரிக்கும் அதே கொள்கையைப் பயன்படுத்துகிறது.

எவ்வாறாயினும், ஒவ்வொரு முறையும் VM க்காக புதிய வட்டை உருவாக்க முடியாது, ஏனெனில் ஹைப்பர்வைசரில் இருந்து OpenShift க்கு மாற்றும்போது, ​​​​நாம் தரவைச் சேமிக்க வேண்டும். ஆம், நாம் ஒரு புதிய VMஐப் பயன்படுத்தினாலும், புதிதாக உருவாக்குவதை விட டெம்ப்ளேட்டிலிருந்து அதைச் செய்வது எப்போதும் வேகமானது. எனவே, ஏற்கனவே உள்ள வட்டுகளை இறக்குமதி செய்வதற்கான செயல்பாடு நமக்குத் தேவை.

இந்தப் பணியை எளிதாக்க, OpenShift மெய்நிகராக்கம், கன்டெய்னரைஸ்டு டேட்டா இம்போர்ட்டர் (CDI) திட்டத்தைப் பயன்படுத்துகிறது, இது பல ஆதாரங்களில் இருந்து வட்டுகளின் வட்டு படங்களை இறக்குமதி செய்வதைக் குறைத்து 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

கீழே உள்ள படத்தில் காட்டப்பட்டுள்ள செயல்களின் வரிசையைத் தூண்டி, CDI ஐச் செயல்படுத்தும் இந்த நுழைவு:

OpenShift மெய்நிகராக்கம்: கொள்கலன்கள், KVM மற்றும் மெய்நிகர் இயந்திரங்கள்

CDI முடிந்ததும், PVC ஆனது பயன்பாட்டிற்கு தயாராக இருக்கும் மெய்நிகர் இயந்திர வட்டு மற்றும் நிலையான OpenShift வடிவத்திற்கு மாற்றப்படும்...
OpenShift மெய்நிகராக்கத்துடன் பணிபுரியும் போது, ​​OpenShift கொள்கலன் சேமிப்பகமும் (OCS), Ceph கோப்பு முறைமையின் அடிப்படையிலான Red Hat தீர்வும், கொள்கலன்களுக்கான நிலையான சேமிப்பக செயல்பாட்டை செயல்படுத்துகிறது. நிலையான PVC அணுகல் முறைகளுக்கு கூடுதலாக - RWO (பிளாக்) மற்றும் RWX (கோப்பு) - OCS ஆனது ரா பிளாக் சாதனங்களுக்கு RWX ஐ வழங்குகிறது, இது அதிக செயல்திறன் தேவைகள் கொண்ட பயன்பாடுகளுக்கான பிளாக் அணுகலைப் பகிர்வதற்கு மிகவும் பயனுள்ளதாக இருக்கும். கூடுதலாக, OCS புதிய ஆப்ஜெக்ட் பக்கெட் கிளைம் தரநிலையை ஆதரிக்கிறது, இது ஆப்ஜெக்ட் தரவு சேமிப்பகத்தை நேரடியாகப் பயன்படுத்த பயன்பாடுகளை அனுமதிக்கிறது.

கொள்கலன்களில் மெய்நிகர் இயந்திரங்கள்

இது எவ்வாறு இயங்குகிறது என்பதைச் சரிபார்க்க நீங்கள் ஆர்வமாக இருந்தால், OpenShift மெய்நிகராக்கமானது OpenShift 3.11 மற்றும் அதற்கு மேற்பட்டவற்றின் ஒரு பகுதியாக தொழில்நுட்ப முன்னோட்டப் பதிப்பில் ஏற்கனவே உள்ளது என்பதை அறிந்து கொள்ளுங்கள். ஏற்கனவே உள்ள OpenShift சந்தாவின் உரிமையாளர்கள் OpenShift மெய்நிகராக்கத்தை முற்றிலும் இலவசமாகவும் கூடுதல் படிகள் ஏதுமின்றி பயன்படுத்தலாம். இந்த இடுகையின் போது, ​​OpenShift 4.4 மற்றும் OpenShift மெய்நிகராக்கம் 2.3 ஆகியவை தற்போதையவை; நீங்கள் முந்தைய பதிப்புகளைப் பயன்படுத்தினால், சமீபத்திய அம்சங்களைப் பெற மேம்படுத்த வேண்டும். OpenShift மெய்நிகராக்கத்தின் முழுமையாக ஆதரிக்கப்படும் பதிப்பு 2020 இன் இரண்டாம் பாதியில் வெளியிடப்படும்.

மேலும் தகவலுக்கு தொடர்பு கொள்ளவும் OpenShift ஆவணங்கள் உள்ளிட்ட நிறுவல் வழிமுறைகளுக்கு Multus அமைவு பிரிவு, இது வெளிப்புற நெட்வொர்க்குகளை அமைப்பது பற்றிய தகவலை வழங்குகிறது.

ஆதாரம்: www.habr.com

கருத்தைச் சேர்