கணினி நிர்வாக பணிகளுக்கு அன்சிபிள் தொகுதிகள் எவ்வாறு பயன்படுத்துவது - பகுதி 6
கடந்த தலைப்புகளில் உள்ள சில அன்சிபில் தொகுதிகளின் இந்த பகுதி 6 இல், இப்போது நாம் ஆழமாகச் சென்று பல கணினி நிர்வாக பணிகளைச் செய்ய உதவக்கூடிய கூடுதல் தொகுதிக்கூறுகளைக் கண்டுபிடிப்போம்.
ஒவ்வொரு தொகுதியின் அடிப்படை யோசனையையும் நீங்கள் பெறுவீர்கள், மேலும் சில பணிகளை நிறைவேற்றுவதற்கான விருப்பங்களைப் பாருங்கள்.
- அன்சிபில் மென்பொருள் தொகுப்புகள் மற்றும் களஞ்சியங்களை நிர்வகித்தல்
- அன்சிபிலைப் பயன்படுத்தி சேவைகளை நிர்வகித்தல் <
- ஃபயர்வாலை அன்சிபிலுடன் நிர்வகித்தல்
- அன்சிபில் கோப்புகள் அல்லது கோப்புறைகளை காப்பகப்படுத்துதல்
- அன்சிபிலுடன் பணிகளை திட்டமிடுங்கள்
- பயனர்களையும் குழுக்களையும் அன்சிபிலுடன் நிர்வகிக்கவும்
- அன்சிபில் கோப்புகள் மற்றும் கோப்பகங்களை உருவாக்கவும்
- அன்சிபில் சேமிப்பிடத்தை நிர்வகித்தல்
- கோப்பு முறைமைகளை நிர்வகிக்கக்கூடியது
லினக்ஸ் கணினிகளில் தொகுப்புகளை நிறுவும் போது, வெவ்வேறு விநியோக மேலாளர்கள் வெவ்வேறு தொகுப்பு நிர்வாகிகளுடன் வருகிறார்கள். RedHat விநியோகங்களுக்கு, எங்களுக்கு பொருத்தமானது.
அன்சிபிள் என்பது தொகுப்பு எனப்படும் ஒரு தொகுதிடன் வருகிறது, இது வெவ்வேறு அமைப்புகளுக்கு வெவ்வேறு தொகுப்பு மேலாளர்களைப் பயன்படுத்துவதற்கான தேவையை நீக்குகிறது. இது தானாகவே ஹோஸ்ட் அமைப்பின் தொடர்புடைய தொகுப்பு நிர்வாகியைப் பயன்படுத்துகிறது, இதனால் வேலை எளிதாகிறது.
எடுத்துக்காட்டாக, டெபியன் மற்றும் ரெட்ஹாட் டிஸ்ட்ரோக்கள் இரண்டையும் உள்ளடக்கிய ஹோஸ்ட்களின் குழுவில் htop ஐ நிறுவ, கீழே உள்ள install_htop.yml பிளேபுக்கில் காட்டப்பட்டுள்ளபடி தொகுப்பு தொகுதியைப் பயன்படுத்துங்கள்.
--- - name: Install htop on Ubuntu and CentOS hosts: all tasks: - package: name: htop state: installed
குறிப்பு: தொகுப்பு பெயர்கள் ஒரு இயக்க முறைமையிலிருந்து மற்றொன்றுக்கு வேறுபடலாம். எடுத்துக்காட்டாக, ரெபாட் விநியோகங்களில் httpd மற்றும் டெபியன்/உபுண்டு அமைப்புகளுக்கான அப்பாச்சி 2 ஆகியவை அப்பாச்சி வலை சேவையகத்தைக் குறிக்கின்றன. எனவே, இந்த தொகுப்புகளை அனுப்பும்போது கூடுதல் எச்சரிக்கையுடன் இருக்க வேண்டும். வழக்கமாக, மாறிகள் அல்லது நிபந்தனை அறிக்கைகளைப் பயன்படுத்துவது சிறந்தது.
அடுத்து, எங்களிடம் ஒரு சேவை தொகுதி உள்ளது, இது லினக்ஸ் கணினிகளில் சேவைகளை நிர்வகிக்கப் பயன்படுகிறது. சேவையைத் தொடங்க, நிறுத்த அல்லது மறுதொடக்கம் செய்ய இது பயன்படுகிறது. ஒரு சேவையை இயக்க நீங்கள் இதைப் பயன்படுத்தலாம், இதனால் ஒரு கணினி துவங்கும் போது, அது தானாகவே சேவையைத் தொடங்குகிறது.
எடுத்துக்காட்டாக, RHEL 8 இல் அப்பாச்சி வெப்சர்வரைத் தொடங்க மற்றும் இயக்க, காட்டப்பட்டுள்ளபடி சேவையைப் பயன்படுத்தவும்.
--- - name: Start and enable httpd service hosts: webservers tasks: - service: name: httpd state: started enabled: yes
Http சேவையை நிறுத்த, நிறுத்தப்பட்ட பண்புகளை அனுப்பவும்.
--- - name: Stop httpd service hosts: webservers tasks: - service: name: httpd state: stopped
Httpd சேவையை மறுதொடக்கம் செய்ய, மறுதொடக்கம் செய்யப்பட்ட பண்புக்கூறு அனுப்பவும்.
--- - name: Restart httpd service hosts: webservers tasks: - service: name: httpd state: restarted
ஃபயர்வாலை நிர்வகிப்பது மற்றொரு முக்கியமான பணி அமைப்பு நிர்வாகிகள் மேற்கொள்கிறது. அன்சிபில் பிளேபுக்குகளில், ஃபயர்வால்ட் மற்றும் யுஎஃப்யூ தொகுதிகள் மூலம் இது மிகவும் எளிதானது. ஒரு துறைமுகம் அல்லது சேவையை அல்லது ஒரு மூல முகவரியை அனுமதிக்க அல்லது தடுக்க ஃபயர்வாலை உள்ளமைக்கலாம்.
உள்ளே செல்லலாம் மற்றும் சில எடுத்துக்காட்டுகளைப் பார்ப்போம்:
--- - name: Allow port 80 hosts: webservers tasks: -firewalld: port: 80/tcp permanent: yes state: enabled
மேலே உள்ள பிளேபுக்கில், ஃபயர்வால் முழுவதும் போர்ட் 80 அனுமதிக்கப்படுகிறது.
நிரந்தர: ஆம் குறியீடு> விருப்பம் ஃபயர்வால் விதியைச் செயல்படுத்துகிறது மற்றும் மறுதொடக்கங்களில் தொடர்ந்து நிலைத்திருக்கும். இருப்பினும், இந்த விதி உடனடியாக பொருந்தாது. மறுதொடக்கத்திற்குப் பிறகுதான் இது நடைமுறைக்கு வருகிறது. உடனடியாக விதியைச் செயல்படுத்த,
உடனடி: ஆம் குறியீடு> விருப்பத்தைப் பயன்படுத்தவும்.
அனுமதிக்கப்பட்ட முகவரிகளைக் குறிப்பிட, மூலத்தைப் பயன்படுத்தவும்: 0.0.0.0/0 அறிக்கை.
- firewalld: source: 192.168.0.0/24 zone: public state: enabled
துறைமுக விருப்பத்தை பின்வருமாறு பயன்படுத்த அனுமதிக்கப்பட வேண்டிய துறைமுகங்களின் வரம்பைக் குறிப்பிட:
- firewalld: port: 213-567/udp permanent: yes state: enabled
துறைமுகத்தைத் தடுக்க, காட்டப்பட்டுள்ளபடி முடக்கப்பட்டுள்ள மாநில விருப்பத்தை மாற்றவும்:
-firewalld: port: 80/tcp permanent: yes state: disabled
ஒரு துறைமுகத்தைச் சேர்ப்பது/தடுப்பதைத் தவிர, அதே விதிகளை ஒரு சேவைக்கும் பயன்படுத்தலாம். இது மிகவும் எளிது. சேவை தொகுதியைப் பயன்படுத்தி, சேவையைச் சேர்க்கச் சேர்த்து, மாநில விருப்பம் இயக்கப்பட்டிருப்பதை உறுதிசெய்க.
- firewalld: service: https permanent: true state: enabled
சேவையைத் தடுக்க, மாநில விருப்பத்தை முடக்கப்பட்டதாக அமைக்கவும்.
- firewalld: service: https permanent: true state: disabled
காப்பகம் என்பது ஒரு கோப்பு அல்லது கோப்புறையின் சுருக்கத்தை எளிதில் சிறியதாகவும், சிறியதாகவும் இருக்கும் வடிவத்திற்கு குறிக்கிறது. காப்பகம் எனப்படும் தொகுதிக்கூறுடன் பொருந்தக்கூடிய கப்பல்கள். ஒரு கோப்பை சுருக்கிக் கொள்வது எளிதானது. கோப்பின் மூல பாதையையும் சுருக்கப்பட்ட கோப்பின் இலக்கையும் குறிப்பிடுவது தேவை.
கீழே ஒரு பிளேபுக் compress.yml ஐக் கவனியுங்கள்.
--- - hosts: webservers tasks: • name: Compress a folder archive: path: /opt/data/web dest: /tmp/web.gz
மேலே உள்ள பிளேபுக்/opt/data/web அடைவை சுருக்கி /tmp/web.gz இல் சேமிக்கிறது.
இயல்புநிலை சுருக்க வடிவம் .gz
ஆகும், இருப்பினும், வடிவமைப்பு பண்புக்கூற்றைப் பயன்படுத்தி இதைக் குறிப்பிடலாம். அடுத்த பிளேபுக்கிற்கு மாதிரி.
--- - hosts: webservers Tasks: - name: Create a zip archive archive: path: /opt/data/web dest: /tmp/web format: zip
மேலே உள்ள பிளேபுக்/opt/data/web அடைவை /tmp/web.zip க்கு சுருக்குகிறது.
சுருக்கமில்லாத பண்பைப் பயன்படுத்தி சுருக்கப்பட்ட கோப்பையும் நீங்கள் சுருக்கலாம். கீழே உள்ள பிளேபுக்கைக் கவனியுங்கள்.
--- - hosts: webservers tasks: - name:Uncompress /tmp/web.gz to/opt directory on Ansible controller unarchive: src: /tmp/web.bz2 dest: /opt/
மேலே உள்ள பிளேபுக் /opt/data/web.gz கோப்பை அன்சிசிபிள் கன்ட்ரோலரைத் தேர்வுசெய்ய/தேர்வுசெய்கிறது.
தொலை மூல அமைப்பைக் குறிப்பிட remote_src = ஆம்
விருப்பத்தைப் பயன்படுத்தவும்.
--- - hosts: webservers tasks: - name:Uncompress /tmp/web.bz2 to/opt on remote host unarchive: src: /tmp/web.bz2 dest: /opt/ remote_src=yes
மேலே உள்ள பிளேபுக் ரிமோட் முனையில் /tmp/web.bz2 கோப்பை/opt/அடைவுக்கு இணைக்கிறது.
அன்சிபில் பிளேபுக்குகளில் வேலைகளை திட்டமிட கிரான் தொகுதி உதவுகிறது.
கீழே உள்ள பிளேபுக்கைக் கவனியுங்கள்.
--- - hosts: webservers tasks: - name: Create a scheduled task cron: name: Run employee attendance job: sh /opt/scripts/attendace.sh month: 4 day: 5 hour: 17 minute: 00
பிளேபுக் ஏப்ரல் 5 ஆம் தேதி மாலை 5:00 மணிக்கு வருகை ஸ்கிரிப்டை இயக்குகிறது.
ஏப்ரல் 5 ஆம் நாள் திங்கள் என்றால் மட்டுமே இயக்க இந்த ஸ்கிரிப்டை திட்டமிட விரும்பினால், வார நாள்: 1 பண்புக்கூறு பயன்படுத்தவும். 0 ஞாயிற்றுக்கிழமையும் 6 சனிக்கிழமை கிரான் குறியீட்டின் படி குறிக்கிறது.
month: 4 day: 5 hour: 17 minute: 00 weekday: 1
இந்த புலங்களில் ஏதேனும் ஒரு நட்சத்திரம் (*) எந்த மதிப்பையும் குறிக்கிறது.
ஏப்ரல் 5 ஆம் தேதி மாலை 5:00 மணிக்கு வேலையை இயக்குவதற்கு, வார நாள் எதுவாக இருந்தாலும், காட்டப்பட்டுள்ளபடி நேர அளவுருக்களைப் பயன்படுத்தவும்.
month: 4 day: 5 hour: 17 minute: 00 weekday: *
ஒவ்வொரு மாதமும் 5 வது நாளில் மாலை 5:00 மணிக்கு கிரான் வேலையைச் செய்ய கீழே உள்ள அமைப்புகளைப் பயன்படுத்தவும்.
month: * day: 5 hour: 17 minute: 00 weekday: *
தினமும் மாலை 5:00 மணிக்கு கிரான் வேலையைச் செய்ய, நேர அமைப்புகளை காட்டப்பட்டுள்ளபடி அமைக்கவும்:
month: * day: * hour: 17 minute: 00 weekday: *
ஒவ்வொரு 5 மணி நேரத்திற்கும் கிரான் வேலையை இயக்க, காட்டப்பட்டுள்ளபடி படி மதிப்பு */5
ஐப் பயன்படுத்தவும்.
month: * day: * hour: */5 minute: * weekday: *
அன்சிபிள் பிளேபுக்குகளுக்குள் பயனர்களையும் குழுக்களையும் நீங்கள் மிகவும் சிரமமின்றி நிர்வகிக்கலாம்.
புதிய பயனரை உருவாக்க, காட்டப்பட்டுள்ளபடி பயனர் தொகுதியைப் பயன்படுத்தவும்.
--- - hosts: webservers tasks: - name: Create a new user user: name: Jack
யுஐடி, குழுக்கள் போன்ற கூடுதல் விருப்பங்களையும் நீங்கள் சேர்க்கலாம்.
- name: Create a new user user: name: Jack comment: Jack Peters uid: 1002 group: administrators shell: /bin/bash
பயனரை அகற்ற, remove: yes
அறிக்கையைப் பயன்படுத்தவும்.
- name: Remove the user 'Jack' user: name: Jack state: absent remove: yes
புதிய குழுவை உருவாக்க, குழு தொகுதியைப் பயன்படுத்தவும்.
- name: Create a group group: name: developers
கோப்பகங்களின் கோப்புகளை உருவாக்க, கோப்பு தொகுதியைப் பயன்படுத்தவும்.
எடுத்துக்காட்டாக, புதிய கோப்பகத்தை உருவாக்க.
--- - hosts: webservers tasks: - name: Create a new directory file: path: /opt/app state: directory
உரிமையாளர், குழு மற்றும் கோப்பு அனுமதிகள் போன்ற பிற பண்புகளை நீங்கள் சேர்க்கலாம்.
- hosts: webservers tasks: - name: Create a new directory file: path: /opt/web state: directory owner: www-data group: www-data mode: 0644
கூடுதலாக, நீங்கள் மறுநிகழ்வைப் பயன்படுத்தி மீண்டும் மீண்டும் கோப்பகங்களை உருவாக்கலாம்: ஆம் அறிக்கை.
--- - hosts: webservers tasks: - name: Create directories recursively file: path: /opt/web/app state: directory owner: www-data group: www-data mode: 0644 recurse: yes
ஒரு கோப்பை உருவாக்க, state: touch
விருப்பத்தைப் பயன்படுத்தவும்.
--- - hosts: webservers tasks: - name: Create a new file file: path: /opt/web/index.html state: touch owner: www-data group: www-data mode: 0644
எல்விஎம் தொகுதிகள் மற்றும் குழுக்களை உள்ளமைக்க எல்விஜி தொகுதி பயன்படுத்தப்படுகிறது.
கீழே உள்ள பிளேபுக்கைக் கவனியுங்கள்:
--- - hosts: webservers tasks: • name: Create lVM volume group lvg: vg: vg1 pvs: /dev/sda1 pesize: 32
இது 32 எம்பி அளவிலான உடல் அளவைக் கொண்ட /dev/sda1
பகிர்வின் மேல் ஒரு தொகுதிக் குழுவை உருவாக்குகிறது.
உருவாக்கியதும், காட்டப்பட்டுள்ளபடி ஒரு தருக்க தொகுதியை உருவாக்க lvol தொகுதியைப் பயன்படுத்தவும்
--- - hosts: webservers tasks: - name: Create lVM volume lvol: vg: vg1 lv: lvol1 pvs: /dev/sda1
ஒரு தொகுதி சாதனத்தில் கோப்பு முறைமையை உருவாக்க, கோப்பு முறைமை தொகுதியைப் பயன்படுத்தவும்.
கீழேயுள்ள பிளேபுக் தொகுதி அளவிலான xf களின் கோப்பு முறைமை வகையை உருவாக்குகிறது.
--- - hosts: webservers tasks: - name: Create a filesystem filesystem: fstype: xfs dev: /dev/vg1/lvol1
கீழேயுள்ள பிளேபுக்கில் காட்டப்பட்டுள்ளபடி மவுண்ட் தொகுதியைப் பயன்படுத்தி தொகுதி அளவை ஏற்ற நீங்கள் அடுத்து செல்லலாம்:
--- - hosts: webservers tasks: - name: Mount a filesystem mount: fstype: xfs src: /dev/vg1/lvol1 path: /opt/web state: mounted
இது தலைப்பை முடிக்கிறது. அன்சிபில் பிளேபுக்குகளில் குறிப்பிட்ட உள்ளமைக்கப்பட்ட தொகுதிகள் மூலம் நிறைவேற்றக்கூடிய பல்வேறு கணினி நிர்வாக பணிகளை நாங்கள் உள்ளடக்கியுள்ளோம்.