தமிழ்

கிளவுட்-நேட்டிவ் பயன்பாடுகளுக்கான சேவை மெஷ் மற்றும் இஸ்டியோ செயல்படுத்தல் பற்றிய ஆழமான வழிகாட்டி. கட்டமைப்பு, உள்ளமைவு மற்றும் சிறந்த நடைமுறைகளை உள்ளடக்கியது.

சேவை மெஷ்: இஸ்டியோ செயல்படுத்தல் பற்றிய ஒரு ஆழமான ஆய்வு

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

சேவை மெஷ் என்றால் என்ன?

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

ஒரு சேவை மெஷ் பயன்படுத்துவதன் முக்கிய நன்மைகள்:

இஸ்டியோ அறிமுகம்

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

இஸ்டியோ கட்டமைப்பு

இஸ்டியோவின் கட்டமைப்பு இரண்டு முக்கிய கூறுகளைக் கொண்டுள்ளது:

இஸ்டியோ கட்டமைப்பின் வரைபடம்: (இங்கே சேவைகளுக்கு அருகில் என்வாய் ப்ராக்ஸிகளுடன் தரவுத் தளத்தையும் மற்றும் இஸ்டியோட் உடன் கட்டுப்பாட்டுத் தளத்தையும் விளக்கும் ஒரு வரைபடத்தை கற்பனை செய்து கொள்ளுங்கள். ஒரு உண்மையான செயலாக்கத்தில் ஒரு உண்மையான படம் சேர்க்கப்படும், ஆனால் இந்த உரை அடிப்படையிலான பதிலுக்காக, அது விவரிக்கப்பட்டுள்ளது.)

இஸ்டியோ நிறுவுதல் மற்றும் அமைத்தல்

உள்ளமைவிற்குள் செல்வதற்கு முன், நீங்கள் இஸ்டியோவை நிறுவ வேண்டும். நிறுவல் செயல்முறையின் ஒரு பொதுவான கண்ணோட்டம் இங்கே:

  1. முன் தேவைகள்:
    • ஒரு குபர்நெடிஸ் கிளஸ்டர் (எ.கா., மினிக்யூப், கைண்ட், கூகிள் குபர்நெடிஸ் என்ஜின் (GKE), அமேசான் எலாஸ்டிக் குபர்நெடிஸ் சேவை (EKS), அஸூர் குபர்நெடிஸ் சேவை (AKS)).
    • உங்கள் குபர்நெடிஸ் கிளஸ்டருடன் இணைக்க உள்ளமைக்கப்பட்ட kubectl கட்டளை-வரி கருவி.
    • இஸ்டியோ CLI கருவி (istioctl).
  2. இஸ்டியோவைப் பதிவிறக்குங்கள்: அதிகாரப்பூர்வ இஸ்டியோ வலைத்தளத்திலிருந்து சமீபத்திய இஸ்டியோ வெளியீட்டைப் பதிவிறக்கவும்.
  3. இஸ்டியோ CLI-ஐ நிறுவவும்: உங்கள் கணினியின் PATH-ல் istioctl பைனரியைச் சேர்க்கவும்.
  4. இஸ்டியோ கோர் கூறுகளை நிறுவவும்: உங்கள் குபர்நெடிஸ் கிளஸ்டரில் முக்கிய இஸ்டியோ கூறுகளை நிலைநிறுத்த istioctl install ஐப் பயன்படுத்தவும். வெவ்வேறு வரிசைப்படுத்தல் சூழ்நிலைகளுக்கு (எ.கா., இயல்புநிலை, டெமோ, உற்பத்தி) வெவ்வேறு சுயவிவரங்களைத் தேர்ந்தெடுக்கலாம். உதாரணமாக: istioctl install --set profile=demo.
  5. நேம்ஸ்பேஸை லேபிளிடவும்: kubectl label namespace <namespace> istio-injection=enabled ஐப் பயன்படுத்தி உங்கள் இலக்கு நேம்ஸ்பேஸில் இஸ்டியோ உட்செலுத்தலை இயக்கவும். இது உங்கள் பாட்களில் என்வாய் சைட்கார் ப்ராக்ஸியை தானாக உட்செலுத்துமாறு இஸ்டியோவிடம் கூறுகிறது.
  6. உங்கள் பயன்பாட்டை நிலைநிறுத்துங்கள்: உங்கள் மைக்ரோசர்வீசஸ் பயன்பாட்டை லேபிளிடப்பட்ட நேம்ஸ்பேஸில் நிலைநிறுத்துங்கள். இஸ்டியோ தானாகவே ஒவ்வொரு பாட்களிலும் என்வாய் சைட்கார் ப்ராக்ஸியை உட்செலுத்தும்.
  7. நிறுவலைச் சரிபார்க்கவும்: இஸ்டியோ கட்டுப்பாட்டுத் தளம் மற்றும் தரவுத் தளக் கூறுகள் சரியாக இயங்குகின்றனவா என்பதை kubectl get pods -n istio-system ஐப் பயன்படுத்திச் சரிபார்க்கவும்.

உதாரணம்: மினிக்யூபில் இஸ்டியோவை நிறுவுதல் (எளிமைப்படுத்தப்பட்டது):

istioctl install --set profile=demo -y
kubectl label namespace default istio-injection=enabled

இஸ்டியோ உள்ளமைவு: போக்குவரத்து மேலாண்மை

இஸ்டியோவின் போக்குவரத்து மேலாண்மை அம்சங்கள் உங்கள் சேவைகளுக்கு இடையிலான போக்குவரத்தின் ஓட்டத்தைக் கட்டுப்படுத்த உங்களை அனுமதிக்கின்றன. முக்கிய உள்ளமைவு வளங்கள் பின்வருமாறு:

VirtualService உதாரணம்

இந்த உதாரணம் HTTP தலைப்புகளின் அடிப்படையில் ஒரு சேவையின் வெவ்வேறு பதிப்புகளுக்கு போக்குவரத்தை எவ்வாறு அனுப்புவது என்பதைக் காட்டுகிறது. உங்களிடம் `productpage` சேவையின் இரண்டு பதிப்புகள் இருப்பதாகக் ধরেக்கொள்வோம்: `v1` மற்றும் `v2`.


apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: productpage
spec:
  hosts:
  - productpage
  gateways:
  - productpage-gateway
  http:
  - match:
    - headers:
        user-agent:
          regex: ".*Mobile.*"
    route:
    - destination:
        host: productpage
        subset: v2
  - route:
    - destination:
        host: productpage
        subset: v1

இந்த VirtualService, தங்கள் User-Agent தலைப்பில் "Mobile" உள்ள பயனர்களிடமிருந்து வரும் அனைத்து போக்குவரத்தையும் `productpage` சேவையின் `v2` சப்செட்டிற்கு அனுப்புகிறது. மற்ற அனைத்து போக்குவரத்தும் `v1` சப்செட்டிற்கு அனுப்பப்படுகிறது.

DestinationRule உதாரணம்

இந்த உதாரணம் `productpage` சேவைக்கான ஒரு DestinationRule-ஐ வரையறுக்கிறது, இது ஒரு எளிய ரவுண்ட்-ராபின் சுமை சமநிலைப்படுத்தும் கொள்கையைக் குறிப்பிடுகிறது மற்றும் வெவ்வேறு பதிப்புகளுக்கான சப்செட்களை வரையறுக்கிறது.


apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
  name: productpage
spec:
  host: productpage
  trafficPolicy:
    loadBalancer:
      simple: ROUND_ROBIN
  subsets:
  - name: v1
    labels:
      version: v1
  - name: v2
    labels:
      version: v2

இந்த DestinationRule, `version` லேபிளின் அடிப்படையில் `v1` மற்றும் `v2` என இரண்டு சப்செட்களை வரையறுக்கிறது. இது `productpage` சேவைக்கு வரும் அனைத்து போக்குவரத்திற்கும் ஒரு ரவுண்ட்-ராபின் சுமை சமநிலைப்படுத்தும் கொள்கையையும் குறிப்பிடுகிறது.

இஸ்டியோ உள்ளமைவு: பாதுகாப்பு

இஸ்டியோ வலுவான பாதுகாப்பு அம்சங்களை வழங்குகிறது, அவற்றுள்:

மியூச்சுவல் TLS (mTLS)

இஸ்டியோ ஒவ்வொரு சேவைக்கும் X.509 சான்றிதழ்களை தானாகவே வழங்கி நிர்வகிக்கிறது, இயல்பாகவே mTLS-ஐ செயல்படுத்துகிறது. இது சேவைகளுக்கு இடையிலான அனைத்து தகவல்தொடர்புகளும் அங்கீகரிக்கப்பட்டு குறியாக்கம் செய்யப்படுவதை உறுதிசெய்கிறது, இது ஒட்டுக்கேட்பு மற்றும் சேதப்படுத்துதலைத் தடுக்கிறது.

அங்கீகாரக் கொள்கை உதாரணம்

இந்த உதாரணம், `reviews` சேவைக்கு மட்டும் `productpage` சேவையை அணுக அனுமதிக்கும் ஒரு அங்கீகாரக் கொள்கையை (AuthorizationPolicy) எவ்வாறு உருவாக்குவது என்பதைக் காட்டுகிறது.


apiVersion: security.istio.io/v1beta1
kind: AuthorizationPolicy
metadata:
  name: productpage-access
spec:
  selector:
    matchLabels:
      app: productpage
  action: ALLOW
  rules:
  - from:
    - source:
        principals:
        - cluster.local/ns/default/sa/reviews

இந்தக் கொள்கை `default` நேம்ஸ்பேஸில் உள்ள `reviews` என்ற சேவை கணக்கிலிருந்து வரும் கோரிக்கைகளை மட்டுமே `productpage` சேவையை அணுக அனுமதிக்கிறது. மற்ற அனைத்து கோரிக்கைகளும் மறுக்கப்படும்.

இஸ்டியோ உள்ளமைவு: கவனிக்கத்தக்க தன்மை

இஸ்டியோ வளமான கவனிக்கத்தக்க அம்சங்களை வழங்குகிறது, அவற்றுள்:

அளவீடுகள் மற்றும் கண்காணிப்பு

இஸ்டியோ பரந்த அளவிலான அளவீடுகளை தானாகவே சேகரிக்கிறது, அவற்றை ப்ரோமிதியஸ் மூலம் அணுகி கிரஃபானாவில் காட்சிப்படுத்தலாம். இந்த அளவீடுகள் உங்கள் மைக்ரோசர்வீசஸ்களின் ஆரோக்கியம் மற்றும் செயல்திறன் பற்றிய மதிப்புமிக்க நுண்ணறிவுகளை வழங்குகின்றன.

விநியோகிக்கப்பட்ட தடமறிதல்

இஸ்டியோவின் விநியோகிக்கப்பட்ட தடமறிதல் திறன்கள், பல சேவைகள் வழியாகப் பாயும் கோரிக்கைகளைக் கண்காணிக்க உங்களை அனுமதிக்கின்றன, இது தாமதத்திற்கான தடைகள் மற்றும் சார்புகளைக் கண்டறிவதை எளிதாக்குகிறது. இயல்பாக, இஸ்டியோ ஜேகரை தடமறிதல் பின்தளமாக ஆதரிக்கிறது.

இஸ்டியோவுடன் வரிசைப்படுத்தல் உத்திகள்

இஸ்டியோ பல்வேறு வரிசைப்படுத்தல் உத்திகளை எளிதாக்குகிறது, மென்மையான மற்றும் பாதுகாப்பான பயன்பாட்டுப் புதுப்பிப்புகளை செயல்படுத்துகிறது:

கேனரி வரிசைப்படுத்தல் உதாரணம்

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

இஸ்டியோ சிறந்த நடைமுறைகள்

இஸ்டியோவை திறம்பட பயன்படுத்த, இந்த சிறந்த நடைமுறைகளைக் கருத்தில் கொள்ளுங்கள்:

இஸ்டியோ மாற்றுகள் மற்றும் பரிசீலனைகள்

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

சரியான சேவை மெஷ்ஷைத் தேர்ந்தெடுப்பது உங்கள் குறிப்பிட்ட தேவைகள் மற்றும் சூழலைப் பொறுத்தது. பின்வரும் காரணிகளைக் கருத்தில் கொள்ளுங்கள்:

முடிவுரை

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