Docker&k8s - 创建pod

网友投稿 285 2022-09-12

Docker&k8s - 创建pod

一 创建简单pod

vi test.yaml

输入内容:

apiVersion: v1kind: Podmetadata: name: command-demo labels: purpose: demonstrate-commandspec: containers: - name: command-demo-container image: debian command: ["printenv"] args: ["HOSTNAME", "KUBERNETES_PORT"]

保存文件后,shell中执行创建命令:

kubectl create -f test.yaml

查看pods列表:

kubectl get pods

查看pod的日志:

kubectl logs command-demo

可以看到执行内容:

command-demotcp://10.96.0.1:443

二 给容器分配CPU和RAM资源

当创建一个Pod的时候,你可以为运行在Pod中的容器请求CPU和RAM资源。你还可以设置CPU和RAM资源的限制。请求CPU和RAM资源,在配置文件里面包含resources:rquests字段。设置CPU和RAM限制包含resource:limits字段。如果节点上具有足够的CPU和RAM资源可用于所有容器要求的CPU和RAM总和,Kubernetes将把Pod调度在上面。同样当容器运行在节点上时,Kubernetes不允许容器消耗的CPU和RAM资源超出指定的容器的限制。如果容器超出RAM限制,将会结束。如果CPU超出限制,将成为CPU节流的候选者。

pod配置文件内容(测试时保存的文件名为testWithCpuAndMem.yaml,可以自行调整):

apiVersion: v1kind: Podmetadata: name: cpu-ram-demospec: containers: - name: cpu-ram-demo-container image: gcr.io/google-samples/node-hello:1.0 resources: requests: memory: "64Mi" cpu: "250m" limits: memory: "128Mi" cpu: "1"

执行创建:

kubectl create -f testWithCpuAndMem.yaml

显示pod信息:

kubectl describe pod cpu-ram-demo

我本地的展示内容:

Name: cpu-ram-demoNamespace: defaultPriority: 0PriorityClassName: Node: docker-desktop/192.168.65.3Start Time: Sun, 07 Jun 2020 10:06:38 +0800Labels: Annotations: Status: PendingIP: 10.1.0.11Containers: cpu-ram-demo-container: Container ID: Image: gcr.io/google-samples/node-hello:1.0 Image ID: Port: Host Port: State: Waiting Reason: ImagePullBackOff Ready: False Restart Count: 0 Limits: cpu: 1 memory: 128Mi Requests: cpu: 250m memory: 64Mi Environment: Mounts: /var/run/secrets/kubernetes.io/serviceaccount from default-token-nglmp (ro)Conditions: Type Status Initialized True Ready False ContainersReady False PodScheduled True Volumes: default-token-nglmp: Type: Secret (a volume populated by a Secret) SecretName: default-token-nglmp Optional: falseQoS Class: BurstableNode-Selectors: Tolerations: node.kubernetes.io/not-ready:NoExecute for 300s node.kubernetes.io/unreachable:NoExecute for 300sEvents: Type Reason Age From Message ---- ------ ---- ---- ------- Normal Scheduled 28m default-scheduler Successfully assigned default/cpu-ram-demo to docker-desktop Normal SandboxChanged 28m kubelet, docker-desktop Pod sandbox changed, it will be killed and re-created. Warning Failed 26m (x6 over 28m) kubelet, docker-desktop Error: ImagePullBackOff Normal Pulling 26m (x4 over 28m) kubelet, docker-desktop Pulling image "gcr.io/google-samples/node-hello:1.0" Warning Failed 26m (x4 over 28m) kubelet, docker-desktop Failed to pull image "gcr.io/google-samples/node-hello:1.0": rpc error: code = Unknown desc = Error response from daemon: Get net/request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers) Warning Failed 26m (x4 over 28m) kubelet, docker-desktop Error: ErrImagePull Normal BackOff 3m33s (x99 over 28m) kubelet, docker-desktop Back-off pulling image "gcr.io/google-samples/node-hello:1.0"

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:k8s部署微服务springcloud从0-1(zuul网关的实现)
下一篇:首席营销官:被“颜值”绑架的女孩子,慌得一批!
相关文章

 发表评论

暂时没有评论,来抢沙发吧~