Kubernetes kubectl运行名称-澄清
根据文件:Kubernetes kubectl运行名称-澄清,kubernetes,kubectl,Kubernetes,Kubectl,根据文件: kubectl运行名称--image=image 将运行一个映像 一些问题: 我想这是一个吊舱而不是一个容器 我猜这个名字和吊舱有关 kubectl run NAME--image=image命令将使用名为image的映像为给定映像创建一个名为NAME的pod(通过为给定映像创建相应的部署和复制集)。在Docker中将此处的name视为标记名 然后,当您运行kubectl get pods时,您将在列表中看到一个名为name的pod 使用kubectl get all将获取默认名
kubectl运行名称--image=image
将运行一个映像
一些问题:
- 我想这是一个吊舱而不是一个容器
- 我猜这个名字和吊舱有关
kubectl get pods
时,您将在列表中看到一个名为name的pod
使用kubectl get all
将获取默认名称空间中的所有资源(还将列出部署和复制集对象)
例如:
$ kubectl run nginx --image=nginx
$ kubectl get all
NAME READY STATUS RESTARTS AGE
pod/nginx-6db489d4b7-cs748 0/1 ContainerCreating 0 6s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 31d
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/nginx 0/1 1 0 6s
NAME DESIRED CURRENT READY AGE
replicaset.apps/nginx-6db489d4b7 1 1 0 6s
kubectl run NAME--image=image
命令将使用名为image的映像为给定映像创建一个名为NAME的pod(通过为给定映像创建相应的部署和复制集)。在Docker中将此处的name视为标记名
然后,当您运行kubectl get pods
时,您将在列表中看到一个名为name的pod
使用kubectl get all
将获取默认名称空间中的所有资源(还将列出部署和复制集对象)
例如:
$ kubectl run nginx --image=nginx
$ kubectl get all
NAME READY STATUS RESTARTS AGE
pod/nginx-6db489d4b7-cs748 0/1 ContainerCreating 0 6s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 31d
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/nginx 0/1 1 0 6s
NAME DESIRED CURRENT READY AGE
replicaset.apps/nginx-6db489d4b7 1 1 0 6s
雪崩,你说得对。这与docker运行命令基本相同。因此,使用
kubectl run NAME--image=image
将从docker image运行名为image
的名为NAME
的文件。
您可以使用kubectl descripe pod NAME
下面是一个kubectl运行nginx的示例--image=nginx
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning FailedScheduling 89s (x2 over 89s) default-scheduler 0/2 nodes are available: 2 node(s) had taints that the pod didn't tolerate.
Normal Scheduled 19s default-scheduler Successfully assigned default/nginx-7cdbd8cdc9-glkxq to centos-master
Normal Pulling 18s kubelet, centos-master pulling image "nginx"
Normal Pulled 14s kubelet, centos-master Successfully pulled image "nginx"
Normal Created 14s kubelet, centos-master Created container
Normal Started 14s kubelet, centos-master Started container
因此,kubectl运行后发生的情况是:
- 调度程序正在尝试选择一个节点来启动容器(首先 它由于污染而失败,因为我的节点处于NotReady(未就绪)状态 目前很重要,但您可以阅读更多)
- 调度程序已成功将pod分配给节点(centos主节点)
- kubelet检查docker映像是否可用,如果可用,则将其拉入 必要的
- 然后创建并启动容器
kubectl
命令行工具支持几种不同的方式来创建Kubernetes对象:
- 命令命令
- 命令式对象配置
- 声明性对象配置
run
命令是命令式方法的一个例子。是最简单的启动方式
[…]因为这种技术直接作用于活动对象,所以
不提供以前配置的历史记录
Snowcrash,您是对的。这与docker run命令基本相同。因此,使用
kubectl run NAME--image=image
将从docker image运行名为image
的命名NAME
。
您可以使用kubectl descripe pod NAME
下面是一个kubectl运行nginx的示例--image=nginx
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning FailedScheduling 89s (x2 over 89s) default-scheduler 0/2 nodes are available: 2 node(s) had taints that the pod didn't tolerate.
Normal Scheduled 19s default-scheduler Successfully assigned default/nginx-7cdbd8cdc9-glkxq to centos-master
Normal Pulling 18s kubelet, centos-master pulling image "nginx"
Normal Pulled 14s kubelet, centos-master Successfully pulled image "nginx"
Normal Created 14s kubelet, centos-master Created container
Normal Started 14s kubelet, centos-master Started container
因此,kubectl运行后发生的情况是:
- 调度程序正在尝试选择一个节点来启动容器(首先 它由于污染而失败,因为我的节点处于NotReady(未就绪)状态 目前很重要,但您可以阅读更多)
- 调度程序已成功将pod分配给节点(centos主节点)
- kubelet检查docker映像是否可用,如果可用,则将其拉入 必要的
- 然后创建并启动容器
kubectl
命令行工具支持几种不同的方式来创建Kubernetes对象:
- 命令命令
- 命令式对象配置
- 声明性对象配置
run
命令是命令式方法的一个例子。是最简单的启动方式
[…]因为这种技术直接作用于活动对象,所以
不提供以前配置的历史记录