kubernetes(K8S)集群kubectl命令妙用

Posted Friends of the wind

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kubernetes(K8S)集群kubectl命令妙用相关的知识,希望对你有一定的参考价值。

分类

提示:记住使用率高的即可,其他现用现查

1、Basic Commands (Beginner):基础命令初级

create 通过文件名或者标准输入创建资源。
expose 使用 replication controller, service, deployment 或者 pod 并暴露它作为一个 新的k8s服务
run 在集群中运行一个指定的镜像,也可能是副本
set 为 objects 设置一个指定的特征
run-container 在集群中运行一个指定的镜像.

2、Basic Commands (Intermediate):基础命令中级
get 显示一个或更多 resources(资源分为pod、instance、service等很多种)
explain 查看资源的文档
edit 在服务器上编辑一个资源
delete 通过文件名、标准输入、资源和名称或资源和标签删除资源

3、Deploy Commands:部署命令
rollout Manage the rollout of a resource
rolling-update 完成指定的 ReplicationController 的滚动升级
scale 为 Deployment, ReplicaSet, Replication Controller 或者 Job 设置一个新的副本数量
autoscale 自动调整一个 Deployment, ReplicaSet, 或者 ReplicationController 的副本数量

4、Cluster Management Commands:集群管理命令
certificate 修改 certificate 资源.
cluster-info 显示集群信息
top 显示资源CPU、内存、硬盘使用
cordon 标记 node 为 unschedulable
uncordon 标记 node 为 schedulable
drain 排除维护的节点
taint 更新一个或者多个 node 上的 taints

5、Troubleshooting and Debugging Commands:故障诊断和调试命令
describe 显示一个指定 resource 或者 group 的 resources 详情
logs 输出容器在 pod 中的日志
attach Attach 到一个运行中的 container
exec 在一个 container 中执行一个命令
port-forward Forward one or more local ports to a pod
proxy 运行一个 proxy 到 Kubernetes API server
cp 复制 files 和 directories 到 containers 和从容器中复制 files 和 directories.
auth Inspect authorization

6、Advanced Commands:高级命令
apply 通过文件名或标准输入流(stdin)对资源进行配置
patch 使用 strategic merge patch 更新一个资源的 field(s)
replace 通过 filename 或者 stdin替换一个资源
convert 在不同的 API versions 转换配置文件
Settings Commands:设置命令
label 更新在这个资源上的 labels
annotate 更新一个资源的注解
completion Output shell completion code for the specified shell (bash or zsh)

7、Other Commands:其他命令
api-versions Print the supported API versions on the server, in the form of “group/version”
config 修改 kubeconfig 文件
help Help about any command
plugin Runs a command-line plugin
version 输出 client 和 server 的版本信息


巧记

提示:不要看命令多,实际环境可能用不到一半,记住高频率的,其他现用现查

例如:
1、 查看当前版本支持的所有命令帮助

查看控制器情况
kubectl get deployment

查看资源详细信息

kubectl describe deployment web

查看service资源 和暴露端口

2、 create:通过文件名或标准输入创建资源

创建一个pod控制器
kubectl create deployment nginx --image=nginx

对外发布服务暴露端口
kubectl expose deployment nginx --name=nginx-svc --port=80 --type=NodePort

3、 修改
服务的扩容与缩容

kubectl scale deployment web --replicas=8

编辑web资源的配置文件
kubectl edit deployment web

服务升级(变更镜像)与回滚
[root@docker01 ~]# kubectl get deployment -o wide


以上是关于kubernetes(K8S)集群kubectl命令妙用的主要内容,如果未能解决你的问题,请参考以下文章

Kubernetes(K8s) kubectl get 常用命令

一Kubernetes详解-k8s概念和名词解释理解。包括组件架构资源管理kubectl命令

部署k8s ssl集群实践3:部署kubectl命令工具行

6、二进制安装K8s之部署kubectl

Kubernetes(k8s) 笔记总结

k8s实践:基本概念kubectl命令和资料分享