कुबर्नेट्स आहे एक मुक्त आणि मुक्त स्रोत कंटेनर व्यवस्थापन प्रणाली प्रदान करते होस्ट संगणकांच्या गटांमध्ये उपयोजन स्वयंचलित करणे, स्केलिंग आणि अनुप्रयोग कंटेनरचे कार्य स्वयंचलित करण्यासाठी एक व्यासपीठ.
कुबर्नेट्स सह, ते त्यांच्या संस्थेच्या उपयोजन कार्ये चालविण्यासाठी स्वतंत्रपणे परिसर, सार्वजनिक आणि संकरित मेघ मूलभूत सुविधांचा लाभ घेऊ शकतात.
उबंटू आणि डेरिव्हेटिव्ह्जवर कुबर्नेट्सची स्थापना
व्यावहारिक स्थापनेसाठी, आम्ही या लेखात तयार करणार्या दोन नोड क्लस्टरचा उपयोग करणार आहोत, ज्यामध्ये मास्टर नोड आणि स्लेव्ह नोड असेल.
दोन्ही नोड्सवर कुबर्नेट्स स्थापित असणे आवश्यक आहे. आम्ही या दोघांवर डॉकर स्थापित करणे ही पहिली गोष्ट करणार आहोत. यासाठी आम्हाला फक्त पुढील आज्ञा त्यांच्यावर चालविणे आवश्यक आहे.
sudo apt install docker.io
डॉकर स्थापित केलेला असल्याचे सत्यापित करण्यासाठी, आपण दोन्ही नोडवर खालील आदेश चालवू शकता:
docker --version
आता चला दोन्ही नोड्सवर डॉकर सक्षम करण्यासाठी पुढे जाऊया:
sudo systemctl enable docker
आता पुढील चरण दोन्ही नोड्समध्ये कुबर्नेट्स की जोडणे आहे, आम्ही हे पुढील आदेशासह करतो:
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add
पुढील चरण दोन्ही सिस्टममध्ये खालील रेपॉजिटरी समाविष्ट करणे आहे:
sudo apt-add-repository "deb http://apt.kubernetes.io/ kubernetes-xenial main"
इंस्टॉलेशन प्रक्रियेची शेवटची पायरी म्हणजे दोन्ही नोड्सवर खालील आदेशाद्वारे कुबॅडम स्थापित करणे:
sudo apt install kubeadm
ते कुबेडम आवृत्ती क्रमांक तपासू शकतात आणि खालील आदेशाद्वारे स्थापना सत्यापित करतात:
kubeadm version
कुबर्नेट्स तैनाती
आता सिस्टीममध्ये कुबर्नेट्स उपयोजन कार्यान्वित करण्यासाठी दोन्ही नोडमध्ये स्वॅप मेमरी (चालू असल्यास) अक्षम करणे आवश्यक आहे.
त्यांनी दोन्ही नोडवर स्वॅप मेमरी अक्षम केली पाहिजेजसे की कुबर्नेट्स स्वॅप मेमरी वापरणार्या सिस्टमवर योग्यरित्या कार्य करत नाही.
हे करण्यासाठी, फक्त चालवा:
sudo swapoff -a
आता पुढची पायरी आहे मास्टर नोडला एक अद्वितीय होस्टनाव देण्यासाठी खालील आज्ञा चालवा:
sudo hostnamectl set-hostname master-node
स्लेव्ह नोडसाठी आपण टाइप करणे आवश्यक आहे:
sudo hostnamectl set-hostname slave-node
आता हे केले vपुढील कमांडसह मास्टर नोड सुरू करण्यासाठी पुढे जाऊ.
sudo kubeadm init --pod-network-cidr = 10.244.0.0/16
आपल्या इंटरनेट कनेक्शनवर अवलंबून प्रक्रियेस एक मिनिट किंवा अधिक लागू शकेल. या कमांडचे आऊटपुट खूप महत्वाचे आहे, म्हणून तुम्ही आउटपुटमध्ये माहिती लिहा, कारण त्यात आयपी, टोकन आणि इतर समाविष्ट आहेत.
आपले क्लस्टर वापरण्यास प्रारंभ करण्यासाठी, त्यांना नियमित वापरकर्ता म्हणून खालील चालविण्याची आवश्यकता आहे:
mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config
आता ते रूट यूजर्स म्हणून प्रत्येक नोडवर खालील चालवून कोणत्याही मशीनमध्ये सामील होऊ शकतात:
kubeadm join tuip --token tutoken --discovery-token-ca-cert-hash sha256:tuhash
जेथे ते काही मिनिटांपूर्वी सांगितले गेले होते की माहितीच्या तुतुकेन, ट्यूप आणि आपल्या हॅशची माहिती बदलेल.
नोड्सची यादी मिळवित आहे
आपल्याला दिसेल की मास्टर नोडची स्थिती अद्याप तयार नाही. कारण मास्टर नोडवर अद्याप कोणतीही पॉड तैनात केलेली नाही आणि म्हणूनच कंटेनर नेटवर्क इंटरफेस रिक्त आहे.
यादी पाहण्यासाठी आम्हाला फक्त कार्यान्वित करावे लागेल:
kubectl get nodes
मास्टर नोडद्वारे पॉड नेटवर्क उपयोजित करत आहे
पॉड नेटवर्क हे नेटवर्कमधील नोड्स दरम्यानचे संप्रेषण करण्याचे साधन आहे. या ट्यूटोरियल मध्ये आम्ही आमच्या क्लस्टर मध्ये फ्लॅनेल पॉड नेटवर्क खालील कमांडद्वारे कार्यान्वित करीत आहोत.
sudo kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
नेटवर्कची स्थिती जाणून घेण्यासाठी फक्त टाइप करा:
kubectl get pods --all-namespaces sudo kubectl get nodes
एकदा हे पूर्ण झाल्यावर, क्लस्टर तयार करण्यासाठी नेटवर्कमध्ये स्लेव्ह नोड जोडण्याची वेळ आली आहे, त्याच प्रकारे त्यांनी मास्टर नोड प्रमाणे माहितीची पूर्तता केली पाहिजे.
sudo kubeadm join tuip --token tutoken --discovery-token-ca-cert-hash sha256:tuhash
आता जेव्हा आपण मास्टर नोडवर पुढील आज्ञा चालवत असाल तर ते आपल्या सिस्टमवर दोन नोड्स, मास्टर नोड आणि सर्व्हर नोड कार्यरत असल्याची पुष्टी करेल.
sudo kubectl get nodes
हे दर्शवते की दोन-नोड क्लस्टर आता कुबर्नेट्स कंटेनर व्यवस्थापन प्रणालीद्वारे चालू आहे आणि चालू आहे.