1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

KubernetesのimagePullPolicy機能の動作確認

Posted at

目的

kubernetesのcontainerのimageの取得する/しない動作を確認する。
deploymentにimagePullPolicyで設定する

事前準備: internet reachが無い状態にする

bash
vagrant@vagrant:~/jira$ ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
From 10.0.2.2 icmp_seq=1 Destination Net Unreachable
From 10.0.2.2 icmp_seq=2 Destination Net Unreachable
^C
--- 8.8.8.8 ping statistics ---
6 packets transmitted, 0 received, +6 errors, 100% packet loss, time 5117ms

vagrant@vagrant:~/jira$

deploymentで使うimageをlocalのnodeの落としておく

bash
vagrant@vagrant:~/jira$ docker images | grep d058fe5de8ce
atlassian/jira-software                 latest              d058fe5de8ce        3 days ago          634MB
vagrant@vagrant:~/jira$

deploymentにIfNotPresentをconfigしていない場合 => ErrImagePullになる

bash
vagrant@vagrant:~/jira$ cat jira-deployment-svc.yaml | grep image
      - image: atlassian/jira-software
        # imagePullPolicy: IfNotPresent
vagrant@vagrant:~/jira$ kubectl apply -f jira-deployment-svc.yaml
deployment.apps/jira created
service/jira created
vagrant@vagrant:~/jira$ kubectl get pod -n jira -w
NAME                    READY   STATUS             RESTARTS   AGE
jira-66c5d87466-lqprz   0/1     ImagePullBackOff   0          6s
jira-66c5d87466-lqprz   0/1     ErrImagePull       0          31s
jira-66c5d87466-lqprz   0/1     ImagePullBackOff   0          44s
^Cvagrant@vagrant:~/jira$

一旦deploymentを消す

bash
vagrant@vagrant:~/jira$ kubectl delete -f jira-deployment-svc.yaml
deployment.apps "jira" deleted
service "jira" deleted

今度はdeplymentにIfNotPresentをconfigしている場合 => podがrunningになる

bash
vagrant@vagrant:~/jira$ cat jira-deployment-svc.yaml | grep image
      - image: atlassian/jira-software
        imagePullPolicy: IfNotPresent
vagrant@vagrant:~/jira$ kubectl apply -f jira-deployment-svc.yaml
deployment.apps/jira created
service/jira created
vagrant@vagrant:~/jira$ kubectl get pod -n jira
NAME                    READY   STATUS    RESTARTS   AGE
jira-5d59fdd6c6-npmfk   1/1     Running   0          5s
vagrant@vagrant:~/jira$

結論

imagePullPolicyをIfNotPresentにすれば、imageがlocalにあれば再度pullしてくる事は無い。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?