DevOps அறிமுக கையேடு: உங்கள் DevOps திறன் மரத்தை புதிதாக உருவாக்குதல்
DevOps அறிமுக கையேடு: உங்கள் DevOps திறன் மரத்தை புதிதாக உருவாக்குதல்
DevOps என்பது ஒரு வேலை மட்டுமல்ல, அது ஒரு கலாச்சாரம், ஒரு தத்துவம். இது மேம்பாடு (Development) மற்றும் செயல்பாடுகள் (Operations) ஆகியவற்றுக்கு இடையேயான தடைகளை உடைப்பதை நோக்கமாகக் கொண்டுள்ளது. ஆட்டோமேஷன், ஒத்துழைப்பு மற்றும் தொடர்ச்சியான மேம்பாடு மூலம், மென்பொருள் விநியோக செயல்முறையின் வேகத்தை அதிகரிப்பதையும் தரத்தை மேம்படுத்துவதையும் நோக்கமாகக் கொண்டுள்ளது. நீங்கள் DevOps துறையில் நுழைய விரும்பினால், இந்தக் கட்டுரை உங்கள் DevOps திறன் மரத்தை உருவாக்க ஒரு நடைமுறை அறிமுக வழிகாட்டியை வழங்கும்.
1. DevOps இன் முக்கிய கருத்துகள் மற்றும் கொள்கைகள்
குறிப்பிட்ட தொழில்நுட்பங்களுக்குள் செல்வதற்கு முன், DevOps இன் முக்கிய கருத்துகளைப் புரிந்துகொள்வது அவசியம்.
- கலாச்சார மாற்றம்: DevOps குழுக்களிடையே ஒத்துழைப்பு, தகவல் தொடர்பு மற்றும் பகிரப்பட்ட பொறுப்பை வலியுறுத்துகிறது. silos ஐ உடைத்து, நம்பிக்கை மற்றும் வெளிப்படைத்தன்மையின் கலாச்சாரத்தை உருவாக்குவது வெற்றியின் திறவுகோலாகும்.
- தானியங்கிமயமாக்கல்: தானியங்கி சோதனை, உருவாக்கம், வரிசைப்படுத்தல் போன்ற செயல்முறைகள் மூலம், மனித தலையீட்டைக் குறைக்கவும், செயல்திறனை மேம்படுத்தவும், பிழை விகிதங்களைக் குறைக்கவும்.
- தொடர்ச்சியான ஒருங்கிணைப்பு/தொடர்ச்சியான விநியோகம் (CI/CD): இது DevOps இன் முக்கிய நடைமுறைகளில் ஒன்றாகும். CI குறியீட்டின் ஒருங்கிணைப்பு மற்றும் சோதனையில் கவனம் செலுத்துகிறது, CD தானியங்கி வரிசைப்படுத்தல் மற்றும் வெளியீட்டில் கவனம் செலுத்துகிறது.
- உள்கட்டமைப்பு குறியீடாக (IaC): குறியீடு மேலாண்மை மற்றும் உள்கட்டமைப்பை உள்ளமைக்க குறியீட்டைப் பயன்படுத்தவும், உள்கட்டமைப்பின் தானியங்கி ஏற்பாடு மற்றும் நிர்வாகத்தை உணரவும்.
- கண்காணிப்பு மற்றும் பின்னூட்டம்: பயன்பாடுகள் மற்றும் உள்கட்டமைப்பின் செயல்திறனைத் தொடர்ந்து கண்காணிக்கவும், பின்னூட்டத்தைச் சேகரிக்கவும், அதை மேம்படுத்தவும் பயன்படுத்தவும்.
- சாய்வு கொள்கைகள்: கழிவுகளை அகற்றுதல், தொடர்ச்சியான மேம்பாடு மற்றும் விரைவான பின்னூட்டம் போன்ற சாய்வு கொள்கைகளைப் பயன்படுத்துங்கள்.
2. உங்கள் DevOps திறன் மரத்தை உருவாக்குதல்
X (Twitter) இல் உள்ள விவாதத்தின்படி, DevOps திறன் மரத்தை உருவாக்குவதற்கான முக்கிய பகுதிகள் மற்றும் கருவிகள் பின்வருமாறு:
2.1 இயக்க முறைமை: Linux அடிப்படை
Linux என்பது DevOps இன் அடித்தளம். நீங்கள் தேர்ச்சி பெற வேண்டும்:
- அடிப்படை கட்டளைகள்:
cd,ls,mkdir,rm,cp,mv,grep,awk,sedபோன்றவை. - கோப்பு அனுமதிகள்:
chmodமற்றும்chownகட்டளைகளைப் புரிந்து கொள்ளுங்கள், சரியான கோப்பு அனுமதி நிர்வாகத்தில் தேர்ச்சி பெறுங்கள், மேலும்chmod 777போன்ற தவறுகளைச் செய்வதைத் தவிர்க்கவும். பாதுகாப்பு முதலில்! - செயல்முறை மேலாண்மை: செயல்முறைகளை எவ்வாறு தொடங்குவது, நிறுத்துவது, கண்காணிப்பது,
ps,top,killபோன்ற கட்டளைகளைப் பயன்படுத்துவது என்பதைப் புரிந்து கொள்ளுங்கள். - Shell ஸ்கிரிப்ட்: Shell ஸ்கிரிப்ட்களை எழுதுவது சேவையக உள்ளமைவு, காப்புப்பிரதிகள் போன்ற பல செயல்பாட்டு பணிகளை தானியக்கமாக்க முடியும்.
- நெட்வொர்க் உள்ளமைவு: IP முகவரிகள், ரூட்டிங், ஃபயர்வால்கள் போன்ற Linux இன் நெட்வொர்க் உள்ளமைவைப் புரிந்து கொள்ளுங்கள்.
2.2 நெட்வொர்க் அடிப்படை
சரிசெய்தல் மற்றும் செயல்திறனை மேம்படுத்துவதற்கு நெட்வொர்க்கைப் புரிந்துகொள்வது அவசியம். நீங்கள் தேர்ச்சி பெற வேண்டும்:
- TCP/IP நெறிமுறை: TCP/IP நெறிமுறை அடுக்கின் ஒவ்வொரு அடுக்கையும் அதன் செயல்பாடுகளையும் புரிந்து கொள்ளுங்கள்.
- HTTP நெறிமுறை: HTTP கோரிக்கை மற்றும் பதில் கட்டமைப்பைப் புரிந்து கொள்ளுங்கள், மேலும் பொதுவாகப் பயன்படுத்தப்படும் HTTP முறைகளில் தேர்ச்சி பெறுங்கள்.
- DNS: டொமைன் பெயர் தீர்மானத்தின் கொள்கையைப் புரிந்து கொள்ளுங்கள், மேலும் DNS சேவையகத்தை எவ்வாறு உள்ளமைப்பது என்பதைப் புரிந்து கொள்ளுங்கள்.
- NAT: NAT இன் வேலை செய்யும் கொள்கை மற்றும் பயன்பாட்டு காட்சிகளைப் புரிந்து கொள்ளுங்கள்.
2.3 பதிப்பு கட்டுப்பாடு: Git மற்றும் GitHub/GitLab
Git என்பது பதிப்பு கட்டுப்பாட்டு அமைப்பின் தரநிலை, GitHub மற்றும் GitLab பிரபலமான Git களஞ்சிய ஹோஸ்டிங் தளங்கள். நீங்கள் தேர்ச்சி பெற வேண்டும்:
- அடிப்படை Git கட்டளைகள்:
init,clone,add,commit,push,pull,branch,merge,rebaseபோன்றவை. - கிளை மேலாண்மை: மேம்பாட்டிற்காக கிளைகளை எவ்வாறு பயன்படுத்துவது மற்றும் குறியீட்டை எவ்வாறு ஒன்றிணைப்பது என்பதை அறிக.
- Pull Requests (PRs): PR செயல்முறையைப் பற்றி நன்கு தெரிந்து கொள்ளுங்கள், குறியீடு மதிப்பாய்வு மற்றும் ஒத்துழைப்பை மேற்கொள்ளுங்கள்.
- Git பணிப்பாய்வு: Gitflow போன்ற பொதுவான Git பணிப்பாய்வுகளைப் புரிந்து கொள்ளுங்கள்.
2.4 கிளவுட் தளம்: AWS, GCP, Azureகிளவுட் தளம் மீள்தன்மை மற்றும் விரிவாக்கக்கூடிய உள்கட்டமைப்பை வழங்குகிறது, இது DevOps இன் முக்கிய அங்கமாகும். AWS இல் கவனம் செலுத்துவது பெரும்பாலான அறிவைப் பெற உதவும். நீங்கள் தெரிந்து கொள்ள வேண்டியவை:
- முக்கிய சேவைகள்: EC2 (விர்ச்சுவல் மெஷின்), S3 (ஆப்ஜெக்ட் ஸ்டோரேஜ்), IAM (அடையாள மற்றும் அணுகல் மேலாண்மை), VPC (விர்ச்சுவல் பிரைவேட் கிளவுட்) போன்ற கிளவுட் தளத்தின் முக்கிய சேவைகளை அறிந்து கொள்ளுங்கள்.
- பாதுகாப்பு: அணுகல் கட்டுப்பாடு, குறியாக்கம், நெட்வொர்க் பாதுகாப்பு போன்ற கிளவுட் தளத்தின் பாதுகாப்பு வழிமுறைகளைப் புரிந்து கொள்ளுங்கள்.
- செலவு மேம்படுத்தல்: AWS Cost Explorer போன்ற கிளவுட் தளத்தின் செலவு மேலாண்மை கருவிகளைப் பயன்படுத்தி செலவு பகுப்பாய்வு மற்றும் மேம்படுத்தல் (FinOps) செய்வது எப்படி என்பதை அறிக.
2.5 கொள்கலனாக்கம்: Docker
Docker ஆனது உங்கள் பயன்பாடுகள் மற்றும் அவற்றின் சார்புகளை ஒரு கொள்கலனில் பேக் செய்ய அனுமதிக்கிறது, இது விரைவான வரிசைப்படுத்தல் மற்றும் நிலைத்தன்மையை செயல்படுத்துகிறது. நீங்கள் தேர்ச்சி பெற வேண்டியவை:
- Docker படங்கள்: Docker படங்களை உருவாக்குதல் மற்றும் நிர்வகித்தல் பற்றி அறிந்து கொள்ளுங்கள்.
- Docker கொள்கலன்கள்: Docker கொள்கலன்களை இயக்குவது, நிறுத்துவது மற்றும் நிர்வகிப்பது எப்படி என்பதை அறிக.
- Dockerfile: பட உருவாக்க செயல்முறையை வரையறுக்க Dockerfile ஐ எழுதுங்கள்.
- Docker Compose: பல கொள்கலன் பயன்பாடுகளை நிர்வகிக்க Docker Compose ஐப் பயன்படுத்தவும்.
2.6 கொள்கலன் இசைவாக்கம்: Kubernetes
Kubernetes (K8s) கொள்கலன்களை வரிசைப்படுத்துதல், அளவிடுதல் மற்றும் நிர்வகிப்பதை தானியக்கமாக்க பயன்படுகிறது. நீங்கள் தேர்ச்சி பெற வேண்டியவை:
- முக்கிய கருத்துக்கள்: Pod, Service, Deployment, Namespace போன்ற Kubernetes முக்கிய கருத்துக்களைப் புரிந்து கொள்ளுங்கள்.
- kubectl கட்டளை: Kubernetes கிளஸ்டரை நிர்வகிக்க
kubectlகட்டளையைப் பயன்படுத்தவும். - YAML கட்டமைப்பு: Kubernetes ஆதாரங்களை வரையறுக்க YAML கோப்புகளை எழுதுங்கள்.
- Horizontal Pod Autoscaling (HPA): Kubernetes இன் அளவிடுதல் உத்திகளைக் கற்றுக்கொள்ளுங்கள், ஆதார பயன்பாட்டின் அடிப்படையில் Podகளின் எண்ணிக்கையை தானாகவே சரிசெய்யவும்.
2.7 தொடர்ச்சியான ஒருங்கிணைப்பு/தொடர்ச்சியான விநியோகம் (CI/CD): Jenkins, GitHub Actions
CI/CD கருவிகள் மென்பொருளை உருவாக்குதல், சோதனை செய்தல் மற்றும் வரிசைப்படுத்துதல் ஆகியவற்றை தானியக்கமாக்க பயன்படுகிறது. நீங்கள் தேர்ச்சி பெற வேண்டியவை:
- CI/CD பைப்லைன்: குறியீடு சமர்ப்பிப்பு, உருவாக்கம், சோதனை, வரிசைப்படுத்தல் போன்ற CI/CD பைப்லைனின் பல்வேறு நிலைகளைப் புரிந்து கொள்ளுங்கள்.
- Jenkins: Jenkins உருவாக்கம் மற்றும் வரிசைப்படுத்தல் பணிகளை உள்ளமைக்கவும்.
- GitHub Actions: CI/CD பணிப்பாய்வுகளை வரையறுக்க GitHub Actions ஐப் பயன்படுத்தவும்.
- தானியங்கி சோதனை: CI/CD பைப்லைனில் தானியங்கி சோதனையை ஒருங்கிணைக்கவும்.
2.8 உள்கட்டமைப்பு குறியீடாக (IaC): Terraform, CloudFormation
IaC கருவிகள் குறியீட்டைப் பயன்படுத்தி உள்கட்டமைப்பை நிர்வகிக்கவும் கட்டமைக்கவும் பயன்படுகிறது. நீங்கள் தேர்ச்சி பெற வேண்டியவை:
- Terraform: Terraform ஐப் பயன்படுத்தி உள்கட்டமைப்பு ஆதாரங்களை வரையறுத்து நிர்வகிக்கவும். Terraform திட்டத்தின் அமைப்பு மற்றும் ஒவ்வொரு பகுதியின் செயல்பாட்டையும் புரிந்து கொள்ளுங்கள்.
- CloudFormation: CloudFormation (AWS) ஐப் பயன்படுத்தி உள்கட்டமைப்பு ஆதாரங்களை வரையறுத்து நிர்வகிக்கவும்.
- நிலை மேலாண்மை: IaC கருவிகளின் நிலை கோப்புகளை எவ்வாறு நிர்வகிப்பது என்பதைப் புரிந்து கொள்ளுங்கள், உள்கட்டமைப்பின் நிலைத்தன்மையை உறுதிப்படுத்தவும்.
2.9 கண்காணிப்பு மற்றும் பதிவு செய்தல்: ELK/EFK Stack
கண்காணிப்பு மற்றும் பதிவு செய்யும் கருவிகள் பயன்பாடுகள் மற்றும் உள்கட்டமைப்பின் செயல்திறன் தரவை சேகரிக்க, பகுப்பாய்வு செய்ய மற்றும் காட்சிப்படுத்த பயன்படுகிறது. நீங்கள் தெரிந்து கொள்ள வேண்டியவை:
- ELK Stack: Elasticsearch, Logstash, Kibana ஆகியவற்றின் பயன்பாட்டை அறிந்து கொள்ளுங்கள்.
- EFK Stack: Elasticsearch, Fluentd, Kibana ஆகியவற்றின் பயன்பாட்டை அறிந்து கொள்ளுங்கள்.
- கண்காணிப்பு அளவீடுகள்: CPU பயன்பாடு, நினைவக பயன்பாடு, வட்டு I/O போன்ற பொதுவான கண்காணிப்பு அளவீடுகளைப் புரிந்து கொள்ளுங்கள்.### 3. பயிற்சி சிறந்த ஆசிரியர்
கோட்பாட்டு அறிவு முக்கியமானதுதான், ஆனால் DevOps ஐக் கற்றுக்கொள்வதற்குப் பயிற்சிதான் முக்கியம். சில ஆலோசனைகள் இங்கே:
- CI/CD பைப்லைன் திட்டத்தை உருவாக்குதல்: கோட் ரெபோசிட்டரி, உருவாக்கம், சோதனை, deployment போன்ற அனைத்து அம்சங்களையும் உள்ளடக்கிய முழுமையான CI/CD பைப்லைனை புதிதாக உருவாக்கவும்.
- Infrastructure as Code திட்டம்: Terraform அல்லது CloudFormation ஐப் பயன்படுத்தி உங்கள் கிளவுட் infrastructure ஐ நிர்வகிக்கவும்.
- Kubernetes கிளஸ்டர் மற்றும் மைக்ரோசர்வீஸ் கண்காணிப்பு திட்டம்: Kubernetes கிளஸ்டரை deployment செய்து, அதன் செயல்திறனைக் கண்காணிக்க கண்காணிப்பு கருவிகளைப் பயன்படுத்தவும்.
- ஓப்பன் சோர்ஸ் திட்டங்களில் பங்கேற்கவும்: ஓப்பன் சோர்ஸ் திட்டங்களில் பங்கேற்பதன் மூலம் உண்மையான DevOps நடைமுறைகளை நீங்கள் கற்றுக்கொள்ளலாம்.
- உண்மையான சிக்கல்களைத் தீர்க்கவும்: உங்கள் வேலையில் நீங்கள் சந்திக்கும் DevOps சிக்கல்களைத் தீர்க்க முயற்சிக்கவும்.
4. தொடர்ச்சியான கற்றல்
DevOps களம் தொடர்ந்து வளர்ந்து வருகிறது, புதிய கருவிகள் மற்றும் தொழில்நுட்பங்கள் தொடர்ந்து வந்து கொண்டே இருக்கின்றன. போட்டித்தன்மையுடன் இருக்க தொடர்ச்சியான கற்றல் அவசியம். சில கற்றல் ஆதாரங்கள் இங்கே:
- ஆன்லைன் படிப்புகள்: Coursera, Udemy, A Cloud Guru போன்ற தளங்கள் ஏராளமான DevOps படிப்புகளை வழங்குகின்றன.
- வலைப்பதிவுகள் மற்றும் கட்டுரைகள்: DevOps தொடர்பான வலைப்பதிவுகள் மற்றும் கட்டுரைகளைப் படித்து, சமீபத்திய தொழில்நுட்பங்கள் மற்றும் நடைமுறைகளைப் பற்றி அறிந்து கொள்ளுங்கள்.
- சமூகம்: DevOps சமூகத்தில் பங்கேற்று, மற்ற DevOps பொறியாளர்களுடன் கலந்துரையாடுங்கள்.
- தொழில்நுட்ப மாநாடுகள்: DevOps தொழில்நுட்ப மாநாடுகளில் கலந்து கொண்டு, சமீபத்திய போக்குகள் மற்றும் தொழில்நுட்பங்களைப் பற்றி அறிந்து கொள்ளுங்கள்.
5. சிறந்த நடைமுறைகள்
- எல்லாவற்றையும் தானியங்குபடுத்துங்கள்: திரும்பத் திரும்பச் செய்யும் அனைத்து பணிகளையும் முடிந்தவரை தானியங்குபடுத்துங்கள்.
- எல்லாவற்றையும் கண்காணிக்கவும்: பயன்பாடுகள் மற்றும் infrastructure இன் செயல்திறனைத் தொடர்ந்து கண்காணிக்கவும்.
- தோல்வியை ஏற்றுக்கொள்ளுங்கள்: தோல்வியிலிருந்து கற்றுக்கொண்டு, தொடர்ந்து மேம்படுத்தவும்.
- அறிவைப் பகிரவும்: உங்கள் அறிவு மற்றும் அனுபவத்தை குழு உறுப்பினர்களுடன் பகிர்ந்து கொள்ளுங்கள்.
- பாதுகாப்பு முதலில்: பாதுகாப்பை DevOps செயல்முறைகளில் ஒருங்கிணைக்கவும்.





