Kubbernetes in Docker(kind)를 시도했습니다.
13031 단어 Kuberneteskindtech
Kubbernetes in Docker(kind)를 시도했습니다.
제가 책임지겠습니다 TechCommit Advent Calendar 2020 16일째.내가 이렇게 말했어!
Kubbernetes 관련 이야기이기 때문에 Kubbernetes in Docker를 시도했습니다. 글을 쓸 수 있도록 허락해 주십시오.
개요
Kubbernetes in Docker에서kubernetes cluster를 구축하고 Hello-worldpod(pod의 내용은 Hello-world 용기) 확인 로그를 설계해 봅니다.
카탈로그
영역이 추가되어 카탈로그를 준비했습니다.
(추기: 페이지 내 링크가 원활하지 않아 잠시 링크를 취소합니다.)
정편
Kubbernetes란 무엇입니까?
Kubbernete는 컨테이너 공개 퍼포먼스를 할 수 있어, 어쨌든 대단한 거야!(어휘력)
내 감각이 너무 강한 어휘력으로 설명해 봐. 여기 링크된 자료를 보면 이해하기 쉬울 거야!
Kubbernetes in Docker란 무엇입니까?
Kubbernetes in Docker는 통칭kind로 공식 홈페이지여기.에 있습니다.나중에 Kubbernetes in Docker를 kind라고 부릅니다.
이런 아이콘.너무 귀여워요.
안은 이렇게 움직여요.(이런 걸 소스를 읽으면 쉽게 그릴 수 있을 것 같은데...)
구축 환경 정보
다음 환경에서 시도해 봤습니다.
사전 준비 정보
이와 같이 docker를 미리 설치해야 합니다.
docker 설치에 관해서는 아래의 글을 참고할 수 있을 것 같습니다.
링크 주소는 영어 페이지로 구글 번역이나 미래 번역 등을 통해 일본어로 번역할 수 있기를 바랍니다.(젠, qita, Qita에 친절한 기사를 쓴 다른 사람이 꼭 있을 거야.)
구축해보세요.
어서 구축해 보시오.
키드를 설치하다.
Mac의 경우
$ brew install kind
==> Downloading https://homebrew.bintray.com/bottles/kind-0.9.0.catalina.bottle.1.tar.gz
==> Downloading from https://d29vzk4ow07wi7.cloudfront.net/e5ba99b5f14711e0dcb121a992d74c5ee6c6b0468b27e5200bf796d4987e13c0?response-cont
######################################################################## 100.0%
==> Pouring kind-0.9.0.catalina.bottle.1.tar.gz
==> Caveats
Bash completion has been installed to:
/usr/local/etc/bash_completion.d
==> Summary
🍺 /usr/local/Cellar/kind/0.9.0: 8 files, 9.2MB
$
Linux, Windows의 경우 여기를 참조하십시오.
https://kind.sigs.k8s.io/docs/user/quick-start/
kind 집합을 생성합니다.
$ kind create cluster
Creating cluster "kind" ...
✓ Ensuring node image (kindest/node:v1.19.1) 🖼
✓ Preparing nodes 📦
✓ Writing configuration 📜
✓ Starting control-plane 🕹️
✓ Installing CNI 🔌
✓ Installing StorageClass 💾
Set kubectl context to "kind-kind"
You can now use your cluster with:
kubectl cluster-info --context kind-kind
Have a question, bug, or feature request? Let us know! https://kind.sigs.k8s.io/#community 🙂
$
생성된kind 클래스를 표시합니다.kind 집단 완성!
$kind get clusters
kind
$
생성된kind 컬렉션 정보를 표시합니다.
클래스가 있으면kubectl로 조작할 수 있습니다!편하네.
$ kubectl cluster-info --context kind-kind
Kubernetes master is running at https://127.0.0.1:57741
KubeDNS is running at https://127.0.0.1:57741/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy
To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.
$
kubectl의 방향을 확인한 후 방향
docker
(kind군집)인 것 같습니다.마크다운이 색상을 몰라서 썼어요
kind-kind
.$ kubectx
docker-desktop
docker-for-desktop
* kind-kind
minikube
$
약속한 모든 이름 공간의 자원을 표시합니다.
$ kubectl get all --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system pod/coredns-f9fd979d6-65q8q 1/1 Running 0 33m
kube-system pod/coredns-f9fd979d6-qn9lt 1/1 Running 0 33m
kube-system pod/etcd-kind-control-plane 1/1 Running 0 34m
kube-system pod/kindnet-xz975 1/1 Running 0 33m
kube-system pod/kube-apiserver-kind-control-plane 1/1 Running 0 34m
kube-system pod/kube-controller-manager-kind-control-plane 1/1 Running 0 34m
kube-system pod/kube-proxy-gtz5z 1/1 Running 0 33m
kube-system pod/kube-scheduler-kind-control-plane 1/1 Running 0 34m
local-path-storage pod/local-path-provisioner-78776bfc44-7vtzz 1/1 Running 0 33m
NAMESPACE NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
default service/kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 34m
kube-system service/kube-dns ClusterIP 10.96.0.10 <none> 53/UDP,53/TCP,9153/TCP 34m
NAMESPACE NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
kube-system daemonset.apps/kindnet 1 1 1 1 1 <none> 34m
kube-system daemonset.apps/kube-proxy 1 1 1 1 1 kubernetes.io/os=linux 34m
NAMESPACE NAME READY UP-TO-DATE AVAILABLE AGE
kube-system deployment.apps/coredns 2/2 2 2 34m
local-path-storage deployment.apps/local-path-provisioner 1/1 1 1 34m
NAMESPACE NAME DESIRED CURRENT READY AGE
kube-system replicaset.apps/coredns-f9fd979d6 2 2 2 33m
local-path-storage replicaset.apps/local-path-provisioner-78776bfc44 1 1 1 33m
$
어쨌든 동작부터 확인해.
Hello-world pod를 시작합니다.
$ kubectl run hello-world --image=hello-world --restart=Never
pod/hello-world created
$
pod가commpleted로 변했기 때문에 시작이 끝난 것 같습니다.
$ kubectl get pods
NAME READY STATUS RESTARTS AGE
hello-world 0/1 Completed 0 3s
$
pod의 로그를 확인합니다.
Hello-world의pod에 Hello-world 컨테이너 로그가 표시됩니다.
*
니까 잘 움직여!!$ kubectl logs hello-world
Hello from Docker!
This message shows that your installation appears to be working correctly.
To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
(amd64)
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.
To try something more ambitious, you can run an Ubuntu container with:
$ docker run -it ubuntu bash
Share images, automate workflows, and more with a free Docker ID:
https://hub.docker.com/
For more examples and ideas, visit:
https://docs.docker.com/get-started/
$
걷어치우다
$ kubectl delete pod hello-world
pod "hello-world" deleted
$
끝말
kind는 간단하게 분류를 구축할 수 있어 편리합니다.
이번에는 정말 부딪쳤을 뿐이야, 나는 다시 놀고 싶어!
내일은 @naokikobashi입니다. 기대하세요!
제가 인용하고 참고하는 것을 허락해 주십시오
kind
Reference
이 문제에 관하여(Kubbernetes in Docker(kind)를 시도했습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/saw/articles/try-kubernetes-in-docker텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)