Kubernetes प्रारंभ मार्गदर्शक: कसे कार्यक्षमतेने कंटेनरयुक्त अनुप्रयोग व्यवस्थापित करावे
Kubernetes प्रारंभ मार्गदर्शक: कसे कार्यक्षमतेने कंटेनरयुक्त अनुप्रयोग व्यवस्थापित करावे
Kubernetes ने सध्या सर्वात लोकप्रिय कंटेनर ऑर्केस्ट्रेशन प्लॅटफॉर्म बनले आहे, जे कंटेनरयुक्त अनुप्रयोगांचे स्वयंचलित तैनाती, विस्तार आणि व्यवस्थापन यांचे समाधान प्रदान करते. हा लेख प्रारंभिक आणि मध्यम स्तरावरील विकासकांसाठी एक व्यावहारिक प्रारंभ मार्गदर्शक प्रदान करेल, जेणेकरून तुम्ही लवकरात लवकर Kubernetes च्या मुख्य संकल्पना आणि वास्तविक कार्यपद्धती शिकू शकाल.
Kubernetes म्हणजे काय?
Kubernetes (सामान्यतः K8s म्हणून संक्षिप्त) हा एक ओपन-सोर्स प्लॅटफॉर्म आहे, जो कंटेनरयुक्त अनुप्रयोगांचे स्वयंचलित तैनाती, विस्तार आणि व्यवस्थापन करण्यासाठी वापरला जातो. हे Google द्वारे विकसित केले गेले आहे आणि क्लाउड नेटिव्ह संगणन फाउंडेशन (CNCF) कडे दान केले आहे. Kubernetes चा मुख्य उद्देश अनुप्रयोगांच्या जीवनचक्र व्यवस्थापनास सुलभ करणे आणि प्रणालीची उच्च उपलब्धता आणि स्वयंचलित व्यवस्थापन सुनिश्चित करणे आहे.
Kubernetes च्या मुख्य घटक
1. Pod
Pod हा Kubernetes मधील सर्वात लहान तैनाती युनिट आहे, ज्यामध्ये एक किंवा अधिक कंटेनर असू शकतात. प्रत्येक Pod नेटवर्क आणि स्टोरेज सामायिक करतो, जो निकट संबंधीत सेवा चालवण्यासाठी योग्य आहे.
apiVersion: v1
kind: Pod
metadata:
name: my-app-pod
spec:
containers:
- name: my-app-container
image: nginx
2. Deployment
Deployment Pod च्या जीवनचक्राचे व्यवस्थापन करण्यासाठी वापरले जाते, जे सुनिश्चित करते की निर्दिष्ट संख्येतील Pod चालू स्थितीत आहेत आणि याचे आवृत्ती नियंत्रण आणि अद्यतने करता येतात.
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-app-deployment
spec:
replicas: 3
selector:
matchLabels:
app: my-app
template:
metadata:
labels:
app: my-app
spec:
containers:
- name: my-app-container
image: nginx
3. Service
Service स्थिर प्रवेश प्रवेश प्रदान करते, जे इतर Pod किंवा बाह्य वापरकर्त्यांना चालू असलेल्या Pod वर प्रवेश करण्याची परवानगी देते.
apiVersion: v1
kind: Service
metadata:
name: my-app-service
spec:
type: LoadBalancer
selector:
app: my-app
ports:
- port: 80
targetPort: 80
Kubernetes चे फायदे
- स्वयंचलित व्यवस्थापन: Kubernetes स्वयंचलितपणे कंटेनर अनुप्रयोगांचे तैनाती, विस्तार आणि व्यवस्थापन करू शकते, ज्यामुळे हाताने काम कमी होते आणि चुकण्याची शक्यता कमी होते.
- उच्च उपलब्धता: ReplicaSets द्वारे, Kubernetes सुनिश्चित करते की पुरेशी Pod उदाहरणे चालू आहेत, एकदा एखादे उदाहरण अपयशी झाल्यास, प्रणाली ते स्वयंचलितपणे पुन्हा सुरू किंवा बदलते.
- लोड संतुलन: Kubernetes मध्ये अंतर्निहित लोड संतुलन कार्यक्षमता आहे, जी सेवांसाठी ट्रॅफिक वितरित करते, संसाधनांचा कार्यक्षमतेने वापर सुनिश्चित करते.
Kubernetes कसे लवकर शिकावे
1. वातावरणाची तयारी
सर्वप्रथम, तुम्हाला Kubernetes वातावरण तयार करणे आवश्यक आहे. हे विविध मार्गांनी केले जाऊ शकते, जसे की Minikube स्थानिक चाचणीसाठी वापरणे, किंवा क्लाउड सेवा प्रदात्यांवर (जसे Google Kubernetes Engine, AWS EKS, Azure AKS) क्लस्टर तयार करणे.
Minikube वापरून Kubernetes स्थापित करणे
- Minikube आणि kubectl स्थापित करा
# Minikube स्थापित करा (विशिष्ट स्थापना पद्धतीसाठी Minikube च्या अधिकृत दस्तऐवजाचा संदर्भ घ्या)
brew install minikube
# kubectl स्थापित करा
brew install kubectl
- Minikube सुरू करा
minikube start
2. पहिला अनुप्रयोग तैनात करणे
Nginx चा उदाहरण म्हणून, आपण Nginx तैनात करण्यासाठी एक Deployment आणि Service परिभाषित करून करू शकतो.
# deployment.yaml फाइल तयार करा
cat deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx
ports:
- containerPort: 80
EOF
# deployment लागू करा
kubectl apply -f deployment.yaml
# service.yaml फाइल तयार करा
cat service.yaml
apiVersion: v1
kind: Service
metadata:
name: nginx-service
spec:
selector:
app: nginx
ports:
- protocol: TCP
port: 80
targetPort: 80
type: NodePort
EOF
# service लागू करा
kubectl apply -f service.yaml
3. अनुप्रयोगावर प्रवेश
जेव्हा तुम्ही NodePort प्रकाराची Service तयार करता, तेव्हा Kubernetes त्याला एक पोर्ट प्रदान करते. प्रवेश पत्ता मिळवण्यासाठी खालील आदेश वापरा:
minikube service nginx-service --url
प्रिंट केलेल्या URL वर ब्राउझर वापरून प्रवेश केल्यास, तुम्हाला Nginx चा स्वागत पृष्ठ दिसेल.
सामान्य त्रुटी आणि डिबगिंग
Kubernetes चा वापर करताना, तुम्हाला काही सामान्य समस्यांचा सामना करावा लागू शकतो, जसे की Pod स्थिती CrashLoopBackOff आहे. हे एक त्रुटी नाही, तर एक सुरक्षा यंत्रणा आहे, Kubernetes Pod कोसळल्यानंतर अनंत वेळा पुन्हा सुरू करत नाही, तर प्रत्येक पुनःप्रारंभाच्या दरम्यान विलंब वाढवतो, प्रणालीच्या गोंधळ टाळण्यासाठी.
तुम्ही खालील आदेश वापरून Pod च्या लॉग्ज पाहू शकता, जे डिबगिंगमध्ये मदत करेल:
kubectl logs
निष्कर्ष
Kubernetes हा एक शक्तिशाली कंटेनर व्यवस्थापन साधन आहे, ज्याद्वारे त्याच्या मुख्य संकल्पना आणि सामान्य आदेश शिकून, तुम्ही क्लाउड नेटिव्ह अनुप्रयोगांचे अधिक कार्यक्षमतेने व्यवस्थापन आणि तैनात करू शकाल. क्लाउड संगणन आणि कंटेनर तंत्रज्ञानाच्या प्रसारासोबत, Kubernetes शिकणे तुमच्या व्यावसायिक विकासासाठी नवीन संधी उघडेल. आशा आहे की हा मार्गदर्शक तुम्हाला Kubernetes च्या शिकण्याच्या प्रवासात मदत आणि संदर्भ प्रदान करेल.





