Ubuntu 22.04
Sponsored Link

Kubernetes : पॉड्स तैनात करें2023/09/04

 
Kubernetes क्लस्टर पर पॉड्स और अन्य बनाने के लिए यह बुनियादी ऑपरेशन है।
यह उदाहरण निम्न प्रकार से पर्यावरण पर आधारित है।
-----------+---------------------------+--------------------------+------------
           |                           |                          |
       eth0|10.0.0.25              eth0|10.0.0.71             eth0|10.0.0.72
+----------+-----------+   +-----------+-----------+   +-----------+-----------+
|  [ ctrl.srv.world ]  |   |  [snode01.srv.world]  |   |  [snode02.srv.world]  |
|     Control Plane    |   |      Worker Node      |   |      Worker Node      |
+----------------------+   +-----------------------+   +-----------------------+

[1] पॉड्स बनाएं या हटाएं।
# [test-nginx] पॉड्स चलाएँ

root@ctrl:~#
kubectl create deployment test-nginx --image=nginx

deployment.apps/test-nginx created
root@ctrl:~#
kubectl get pods

NAME                          READY   STATUS    RESTARTS   AGE
test-nginx-5d84c8d9d4-zhghp   1/1     Running   0          45s

# [test-nginx] पॉड के लिए पर्यावरण चर दिखाएं

root@ctrl:~#
kubectl exec test-nginx-5d84c8d9d4-zhghp -- env

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
HOSTNAME=test-nginx-5d84c8d9d4-zhghp
NGINX_VERSION=1.23.2
NJS_VERSION=0.7.7
PKG_RELEASE=1~bullseye
KUBERNETES_PORT_443_TCP=tcp://10.96.0.1:443
KUBERNETES_PORT_443_TCP_PROTO=tcp
KUBERNETES_PORT_443_TCP_PORT=443
KUBERNETES_PORT_443_TCP_ADDR=10.96.0.1
KUBERNETES_SERVICE_HOST=10.96.0.1
KUBERNETES_SERVICE_PORT=443
KUBERNETES_SERVICE_PORT_HTTPS=443
KUBERNETES_PORT=tcp://10.96.0.1:443
HOME=/root

# [test-nginx] पॉड तक शेल पहुंच

root@ctrl:~#
kubectl exec -it test-nginx-5d84c8d9d4-zhghp -- bash
root@test-nginx-5d84c8d9d4-zhghp:/#
hostname

test-nginx-5d84c8d9d4-zhghp
root@test-nginx-5d84c8d9d4-zhghp:/#
exit
# [test-nginx] पॉड के लॉग दिखाएं

root@ctrl:~#
kubectl logs test-nginx-5d84c8d9d4-zhghp

/docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration
/docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/
/docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh
10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf
10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf
/docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh
/docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh
/docker-entrypoint.sh: Configuration complete; ready for start up
2022/11/02 04:57:47 [notice] 1#1: using the "epoll" event method
2022/11/02 04:57:47 [notice] 1#1: nginx/1.23.2
.....
.....

# फली को स्केल करें

root@ctrl:~#
kubectl scale deployment test-nginx --replicas=3

deployment.extensions/test-nginx scaled
root@ctrl:~#
kubectl get pods -o wide

NAME                          READY   STATUS    RESTARTS   AGE     IP                NODE                NOMINATED NODE   READINESS GATES
test-nginx-5d84c8d9d4-4gb97   1/1     Running   0          33s     192.168.186.65    snode01.srv.world   <none>           <none>
test-nginx-5d84c8d9d4-ltsj4   1/1     Running   0          33s     192.168.186.66    snode01.srv.world   <none>           <none>
test-nginx-5d84c8d9d4-zhghp   1/1     Running   0          4m51s   192.168.211.129   snode02.srv.world   <none>           <none>

# सेवा सेट करें

root@ctrl:~#
kubectl expose deployment test-nginx --type="NodePort" --port 80

service "test-nginx" exposed
root@ctrl:~#
kubectl get services test-nginx

NAME         TYPE       CLUSTER-IP      EXTERNAL-IP   PORT(S)        AGE
test-nginx   NodePort   10.101.17.194   <none>        80:32041/TCP   5s

# पहुंच सत्यापित करें

root@ctrl:~#
curl 10.101.17.194

<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
.....
.....
<p><em>Thank you for using nginx.</em></p>
</body>
</html>

# सेवा हटाएँ

root@ctrl:~#
kubectl delete services test-nginx

service "test-nginx" deleted
# पॉड्स हटाएं

root@ctrl:~#
kubectl delete deployment test-nginx

deployment.extensions "test-nginx" deleted
मिलान सामग्री