CentOS 7 இல் குபெர்னெட்ஸ் கிளஸ்டரை நிறுவுவது எப்படி


கூகிள் ஓபன்சோர்ஸ் சமூகத்திற்கு நன்கொடை அளித்தது, குபெர்னெட்ஸ் இப்போது விருப்பமான கொள்கலன் மேலாண்மை கருவியாக மாறியுள்ளது. இது டாக்கர் இயக்க நேரங்களை மட்டுமல்ல, கொள்கலன்கள் மற்றும் Rkt இயக்க நேரங்களையும் நிர்வகிக்கலாம் மற்றும் திட்டமிடலாம்.

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

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

பரிந்துரைக்கப்பட்ட வாசிப்பு: சென்டோஸ் 8 இல் குபெர்னெட்ஸ் கிளஸ்டரை நிறுவுவது எப்படி

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

  1. சென்டோஸ் 7 (1 முதன்மை முனை, 2 பணியாளர் முனைகள்) இயங்கும் பல சேவையகங்கள். இது ஒரு கண்டிப்பான தேவை இல்லை என்றாலும், உங்கள் மாஸ்டர் கணு குறைந்தது 2 CPU களைக் கொண்டிருக்க பரிந்துரைக்கப்படுகிறது.
  2. உங்கள் எல்லா முனைகளிலும் இணைய இணைப்பு. நாங்கள் களஞ்சியத்திலிருந்து குபெர்னெட்ஸ் மற்றும் டாக்கர் தொகுப்புகளைப் பெறுவோம். அதேபோல், yum தொகுப்பு நிர்வாகி இயல்பாக நிறுவப்பட்டிருப்பதை உறுதிசெய்து, தொலைதூர தொகுப்புகளை பெற முடியும். <
  3. சூடோ அல்லது ரூட் சலுகைகளுடன் கூடிய கணக்கிற்கான அணுகலும் உங்களுக்குத் தேவைப்படும். இந்த டுடோரியலில், நான் எனது ரூட் கணக்கைப் பயன்படுத்துவேன்.

எங்கள் 3-முனை கிளஸ்டர் இதுபோன்றதாக இருக்கும்:

மாஸ்டர்-முனையில் குபெர்னெட்ஸ் கிளஸ்டரை நிறுவுதல்

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

பின்வரும் படிகள் மாஸ்டர்-முனையில் இயங்கும்.

உங்கள் முதன்மை முனையில், ஹோஸ்ட்பெயரை அமைக்கவும், உங்களிடம் டிஎன்எஸ் சேவையகம் இல்லையென்றால், உங்கள்/etc/host கோப்பையும் புதுப்பிக்கவும்.

# hostnamectl set-hostname master-node
# cat <<EOF>> /etc/hosts
10.128.0.27 master-node
10.128.0.29 node-1 worker-node-1
10.128.0.30 node-2 worker-node-2
EOF

உங்கள் புதுப்பிக்கப்பட்ட ஹோஸ்ட்பைல் பிங் கட்டளையைப் பயன்படுத்தி நன்றாக இருக்கிறதா என்று சோதிக்க நீங்கள் தொழிலாளர்-முனை -1 மற்றும் தொழிலாளி-முனை -2 பிங் செய்யலாம்.

# ping 10.128.0.29
# ping 10.128.0.30

அடுத்து, SElinux ஐ முடக்கி, உங்கள் ஃபயர்வால் விதிகளைப் புதுப்பிக்கவும்.

# setenforce 0
# sed -i --follow-symlinks 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux
# reboot

துறைமுகங்களில் பின்வரும் ஃபயர்வால் விதிகளை அமைக்கவும். ஒவ்வொரு ஃபயர்வால்-செ.மீ கட்டளையும் வெற்றியைத் தருகிறது என்பதை உறுதிப்படுத்திக் கொள்ளுங்கள்.

# firewall-cmd --permanent --add-port=6443/tcp
# firewall-cmd --permanent --add-port=2379-2380/tcp
# firewall-cmd --permanent --add-port=10250/tcp
# firewall-cmd --permanent --add-port=10251/tcp
# firewall-cmd --permanent --add-port=10252/tcp
# firewall-cmd --permanent --add-port=10255/tcp
# firewall-cmd –reload
# modprobe br_netfilter
# echo '1' > /proc/sys/net/bridge/bridge-nf-call-iptables

சென்டோஸ் 7 இல் இயல்பாக நிறுவப்படாததால் குபெர்னெட்ஸ் களஞ்சியங்களை கைமுறையாக சேர்க்க வேண்டும்.

cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
EOF

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

# yum install kubeadm docker -y 

நிறுவல் வெற்றிகரமாக முடிந்ததும், இரு சேவைகளையும் இயக்கி தொடங்கவும்.

# systemctl enable kubelet
# systemctl start kubelet
# systemctl enable docker
# systemctl start docker

இப்போது நாங்கள் குபெர்னெட்ஸ் மாஸ்டரைத் தொடங்கத் தயாராக உள்ளோம், ஆனால் அதற்கு முன்\"kubeadm init \" கட்டளையை இயக்க நீங்கள் இடமாற்றத்தை முடக்க வேண்டும்.

# swapoff -a

குபெர்னெட்ஸ் மாஸ்டரைத் தொடங்குவது என்பது ஒரு முழுமையான தானியங்கி செயல்முறையாகும், இது நீங்கள் இயக்கும் k "குபெட்ம் init \" கட்டளையால் நிர்வகிக்கப்படுகிறது.

# kubeadm init

நீங்கள் கடைசி வரியை நகலெடுத்து எங்காவது சேமிக்க விரும்பலாம், ஏனெனில் நீங்கள் அதை தொழிலாளர் முனைகளில் இயக்க வேண்டும்.

kubeadm join 10.128.0.27:6443 --token nu06lu.xrsux0ss0ixtnms5  \ --discovery-token-ca-cert-hash sha256:f996ea3564e6a07fdea2997a1cf8caeddafd6d4360d606dbc82314688425cd41 

உதவிக்குறிப்பு: சில நேரங்களில் இந்த கட்டளை இயற்றப்பட்ட வாதங்கள் (ஆர்க்ஸ்) பற்றி புகார் செய்யலாம், எனவே எந்த பிழையும் ஏற்படாமல் திருத்தவும். எனவே, --token உடன் வரும் ‘\’ எழுத்தை நீக்குவீர்கள், மேலும் உங்கள் இறுதி கட்டளை இப்படி இருக்கும்.

kubeadm join 10.128.0.27:6443 --token nu06lu.xrsux0ss0ixtnms5  --discovery-token-ca-cert-hash sha256:f996ea3564e6a07fdea2997a1cf8caeddafd6d4360d606dbc82314688425cd41

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

ரூட்டைப் பயன்படுத்த, இயக்கவும்:

# mkdir -p $HOME/.kube
# cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
# chown $(id -u):$(id -g) $HOME/.kube/config

சூடோ இயக்கப்பட்ட பயனரைப் பயன்படுத்த, இயக்கவும்:

$ mkdir -p $HOME/.kube
$ sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
$ sudo chown $(id -u):$(id -g) $HOME/.kube/config

இப்போது kubectl கட்டளை செயல்படுத்தப்பட்டதா என்று சோதிக்கவும்.

# kubectl get nodes

இந்த கட்டத்தில், மாஸ்டர்-நோட்டின் நிலை ‘நோட்ரெடி’ என்பதையும் நீங்கள் கவனிப்பீர்கள். ஏனென்றால், நாம் இன்னும் நெற்று வலையமைப்பை கிளஸ்டருக்கு பயன்படுத்தவில்லை.

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

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

நெற்று நெட்வொர்க் அமைப்பைப் பெற இந்த கட்டளைகள் முக்கியமாக இருக்கும்.

# export kubever=$(kubectl version | base64 | tr -d '\n')
# kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$kubever"

இப்போது உங்கள் முதன்மை முனையின் நிலையை நீங்கள் சரிபார்த்தால், அது ‘தயார்’ ஆக இருக்க வேண்டும்.

# kubectl get nodes

அடுத்து, நாங்கள் தொழிலாளர் முனைகளை கிளஸ்டரில் சேர்க்கிறோம்.

குபெர்னெட்ஸ் கிளஸ்டரில் சேர பணியாளர் முனைகளை அமைத்தல்

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

உங்கள் பணியாளர்-முனை -1 மற்றும் பணியாளர்-முனை -2 இல், ஹோஸ்ட்பெயரை அமைக்கவும், உங்களிடம் டிஎன்எஸ் சேவையகம் இல்லையென்றால், உங்கள் முதன்மை மற்றும் பணியாளர் முனைகளையும்/etc/புரவலன் கோப்பில் புதுப்பிக்கவும்.

# hostnamectl set-hostname 'node-1'
# cat <<EOF>> /etc/hosts
10.128.0.27 master-node
10.128.0.29 node-1 worker-node-1
10.128.0.30 node-2 worker-node-2
EOF

உங்கள் புதுப்பிக்கப்பட்ட ஹோஸ்ட்பைல் நன்றாக இருக்கிறதா என்று சோதிக்க மாஸ்டர்-நோட்டை பிங் செய்யலாம்.

அடுத்து, SElinux ஐ முடக்கி, உங்கள் ஃபயர்வால் விதிகளைப் புதுப்பிக்கவும்.

# setenforce 0
# sed -i --follow-symlinks 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux

துறைமுகங்களில் பின்வரும் ஃபயர்வால் விதிகளை அமைக்கவும். அனைத்து ஃபயர்வால்-செ.மீ கட்டளைகளும், வெற்றியைத் தருகின்றன என்பதை உறுதிப்படுத்திக் கொள்ளுங்கள்.

# firewall-cmd --permanent --add-port=6783/tcp
# firewall-cmd --permanent --add-port=10250/tcp
# firewall-cmd --permanent --add-port=10255/tcp
# firewall-cmd --permanent --add-port=30000-32767/tcp
# firewall-cmd  --reload
# echo '1' > /proc/sys/net/bridge/bridge-nf-call-iptables

சென்டோஸ் 7 இல் முன்பே நிறுவப்படாததால் குபெர்னெட்ஸ் களஞ்சியங்களை கைமுறையாக சேர்க்க வேண்டும்.

cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
EOF

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

# yum install kubeadm docker -y 

இரண்டு சேவைகளையும் தொடங்கி இயக்கவும்.

# systemctl enable docker
# systemctl start docker
# systemctl enable kubelet
# systemctl start kubelet

க்ளஸ்டரில் சேர, kubeadm init உருவாக்கிய டோக்கன் நமக்கு இப்போது தேவைப்படுகிறது. நீங்கள் எங்காவது நகலெடுத்திருந்தால் அதை உங்கள் நோட் -1 மற்றும் நோட் -2 க்கு நகலெடுத்து ஒட்டலாம்.

# kubeadm join 10.128.0.27:6443 --token nu06lu.xrsux0ss0ixtnms5  --discovery-token-ca-cert-hash sha256:f996ea3564e6a07fdea2997a1cf8caeddafd6d4360d606dbc82314688425cd41 

கடைசி வரியில் பரிந்துரைக்கப்பட்டபடி, உங்கள் முதன்மை முனைக்குச் சென்று, பின்வரும் கட்டளையைப் பயன்படுத்தி தொழிலாளர் முனை -1 மற்றும் தொழிலாளர் முனை -2 ஆகியவை கிளஸ்டரில் சேர்ந்துள்ளனவா என்று சோதிக்கவும்.

# kubectl get nodes

அனைத்து படிகளும் வெற்றிகரமாக இயங்கினால், நீங்கள் மாஸ்டர்-நோட்டில் தயார் நிலையில் நோட் -1 மற்றும் நோட் -2 ஐப் பார்க்க வேண்டும்.

பரிந்துரைக்கப்பட்ட வாசிப்பு: குபெர்னெட்ஸ் கிளஸ்டரில் என்ஜினெக்ஸை எவ்வாறு வரிசைப்படுத்துவது

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