Kubernetes-ийн үндэсний гарын авлага: Контейнержуулсан програмуудыг хэрхэн үр дүнтэй удирдах вэ

2/22/2026
4 min read

Kubernetes-ийн үндэсний гарын авлага: Контейнержуулсан програмуудыг хэрхэн үр дүнтэй удирдах вэ

Kubernetes нь одоогоор хамгийн алдартай контейнерийн зохион байгуулалтын платформ болжээ. Энэ нь контейнержуулсан програмуудыг автоматжуулан байршуулж, өргөжүүлж, удирдах шийдлийг санал болгодог. Энэ нийтлэл нь эхлэгчид болон дунд зэргийн хөгжүүлэгчдэд зориулсан хэрэгтэй үндэсний гарын авлага болох бөгөөд та Kubernetes-ийн гол ойлголтууд болон практик үйлдлүүдийг хурдан сурахад туслах болно.

Кubernetes гэж юу вэ?

Kubernetes (ихэвчлэн K8s гэж товчилдог) нь контейнержуулсан програмуудыг автоматжуулан байршуулж, өргөжүүлж, удирдахад зориулагдсан нээлттэй платформ юм. Энэ нь Google-ийн хөгжүүлсэн бөгөөд Cloud Native Computing Foundation (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-ийн суралцах аялалд тань туслах, лавлахад зориулагдсан гэж найдаж байна.

Published in Technology

You Might Also Like

Хэрхэн үүлний тооцооллын технологийг ашиглах вэ: Таны анхны үүлний инфраструкцийг байгуулах бүрэн гарын авлагаTechnology

Хэрхэн үүлний тооцооллын технологийг ашиглах вэ: Таны анхны үүлний инфраструкцийг байгуулах бүрэн гарын авлага

[[HTMLPLACEHOLDER0]] [[HTMLPLACEHOLDER1]] [[HTMLPLACEHOLDER2]] [[HTMLPLACEHOLDER3]] [[HTMLPLACEHOLDER4]] [[HTMLPLACEHOLD...

Сэрэмжлүүлэг! Claude Code-ийн эцэг шууд хэллээ: 1 сарын дараа Plan Mode хэрэггүй болно, програм хангамжийн инженерийн цол алга болноTechnology

Сэрэмжлүүлэг! Claude Code-ийн эцэг шууд хэллээ: 1 сарын дараа Plan Mode хэрэггүй болно, програм хангамжийн инженерийн цол алга болно

Сэрэмжлүүлэг! Claude Code-ийн эцэг шууд хэллээ: 1 сарын дараа Plan Mode хэрэггүй болно, програм хангамжийн инженерийн цо...

2026年 Top 10 深度学习资源推荐Technology

2026年 Top 10 深度学习资源推荐

2026年 Top 10 深度学习资源推荐 深度 суралцах хурдан хөгжиж байгаа тул олон төрлийн суралцах материал, хэрэгсэл гарч ирж байна. Энэ ...

2026 оны Топ 10 AI агент: Гол борлуулалтын цэгүүдийн тайлбарTechnology

2026 оны Топ 10 AI агент: Гол борлуулалтын цэгүүдийн тайлбар

2026 оны Топ 10 AI агент: Гол борлуулалтын цэгүүдийн тайлбар Оршил Хиймэл оюун ухааны хурдтай хөгжлийн хамт, AI агентууд...

2026 оны шилдэг 10 AI хэрэгслийг санал болгож байна: Хүний оюун ухааны жинхэнэ потенциалыг чөлөөлөхTechnology

2026 оны шилдэг 10 AI хэрэгслийг санал болгож байна: Хүний оюун ухааны жинхэнэ потенциалыг чөлөөлөх

2026 оны шилдэг 10 AI хэрэгслийг санал болгож байна: Хүний оюун ухааны жинхэнэ потенциалыг чөлөөлөх Технологи хурдтай хө...

2026 оны Top 10 AWS хэрэгсэл ба нөөцийн саналTechnology

2026 оны Top 10 AWS хэрэгсэл ба нөөцийн санал

2026 оны Top 10 AWS хэрэгсэл ба нөөцийн санал Хурдан хөгжиж буй үүлний тооцооллын салбарт Amazon Web Services (AWS) нь т...