pod测试

喜欢而已 提交于 2020-04-06 03:37:58

[root@master ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
192.168.3.228:5000/test/s v1 fdcfe04e9ea4 3 days ago 398MB
sshd v1 fdcfe04e9ea4 3 days ago 398MB
192.168.3.228:5000/test/n v1 588bb5d559c2 5 days ago 127MB
nginx 1.16 588bb5d559c2 5 days ago 127MB
registry 2 708bc6af7e5e 2 months ago 25.8MB
registry latest 708bc6af7e5e 2 months ago 25.8MB
192.168.3.228:5000/test/1 v1 708bc6af7e5e 2 months ago 25.8MB

mkdir -p /opt/yml/test

cd /opt/yml/test

vim k8s_pod.yml

apiVersion: v1
kind: Pod
metadata: 
  name: nginx
  lablels:
    app: web
spec:
  containers:
    - name: n1
      image: 192.168.3.228:5000/test/n:v1
      ports: 
        - containerPort: 80

[root@master test]# kubectl create -f k8s_pod.yml
error: error validating "k8s_pod.yml": error validating data: found invalid field lablels for v1.ObjectMeta; if you choose to ignore these errors, turn validation off with --validate=false  (这里提示上面标签出错。lables部分)
[root@master test]# kubectl create -f k8s_pod.yml --validate=false
pod "nginx" created   (这里代表成功了)

[root@master ~]# kubectl get pod
NAME READY STATUS RESTARTS AGE
nginx 0/1 ContainerCreating 0 4m 问题在这里,不断创建中

[root@master ~]# kubectl describe pods nginx
Name:           nginx
Namespace:      default
Node:           192.168.3.229/192.168.3.229
Start Time:     Sun, 05 Apr 2020 14:02:25 -0400
Labels:         <none>
Status:         Pending
IP:
Controllers:    <none>
Containers:
  n1:
    Container ID:
    Image:                      192.168.3.228:5000/test/n:v1
    Image ID:
    Port:                       80/TCP
    State:                      Waiting
      Reason:                   ContainerCreating
    Ready:                      False
    Restart Count:              0
    Volume Mounts:              <none>
    Environment Variables:      <none>
Conditions:
  Type          Status
  Initialized   True 
  Ready         False 
  PodScheduled  True 
No volumes.
QoS Class:      BestEffort
Tolerations:    <none>
Events:
  FirstSeen     LastSeen        Count   From                    SubObjectPath   Type            Reason  Message
  ---------     --------        -----   ----                    -------------   --------        ------  -------
  6m            6m              1       {default-scheduler }                    Normal          ScheduleSuccessfully assigned nginx to 192.168.3.229
  6m            1m              6       {kubelet 192.168.3.229}                 Warning         FailedSync       Error syncing pod, skipping: failed to "StartContainer" for "POD" with ErrImagePull: "image pull failed for registry.access.redhat.com/rhel7/pod-infrastructure:latest, this may be because there are no credentials on this request.  details: (open /etc/docker/certs.d/registry.access.redhat.com/redhat-ca.crt: no such file or directory)"

  6m    7s      25      {kubelet 192.168.3.229}         Warning FailedSync      Error syncing pod, skipping: failed to "StartContainer" for "POD" with ImagePullBackOff: "Back-off pulling image \"registry.access.redhat.com/rhel7/pod-infrastructure:latest\""

Error syncing pod, skipping: failed to "StartContainer" for "POD" with ErrImagePull: "image pull failed for registry.access.redhat.com/rhel7/pod-infrastructure:latest, this may be because there are no credentials on this request. details: (open /etc/docker/certs.d/registry.access.redhat.com/redhat-ca.crt: no such file or directory)"

6m 7s 25 {kubelet 192.168.3.229} Warning FailedSync Error syncing pod, skipping: failed to "StartContainer" for "POD" with ImagePullBackOff: "Back-off pulling image \"registry.access.redhat.com/rhel7/pod-infrastructure:latest\""

错误提示中文件pull去红帽pull的

解决上述问题需要pull个镜像到所有regisrty上

docker pull docker.io/tianyebj/pod-infrastructure

docker tag docker.io/tianyebj/pod-infrastructure:latest 192.168.3.228:5000/test/pod-infrastructure:latest

docker push 192.168.3.228:5000/test/pod-infrastructure:latest  

node节点改vim /etc/kubernetes/kubelet 

KUBELET_POD_INFRA_CONTAINER="--pod-infra-container-image=192.168.3.228:5000/test/pod-infrastructure:latest"

systemctl  restart kubelet

mastar节点删除nginx:kubectl delete pod nginx

重建nginx

[root@master ~]# kubectl create -f /opt/yml/test/k8s_pod.yml --validate=false
pod "nginx" created
[root@master ~]# kubectl get pod
NAME READY STATUS RESTARTS AGE
nginx 1/1 Running 0 43s 1/1 Running为正常

[root@master ~]# kubectl get pods -o wide
NAME READY STATUS RESTARTS AGE IP NODE
nginx 1/1 Running 0 10m 172.16.91.2 192.168.3.229

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!