kubernetes命令详情

查看客户端和服务器侧的版本信息
kubectl version
列出当前版本的kubernetes的服务器端所支持的api版本信息
kubectl api-versions
查看版本源
kubectl api-resources
查看帮助,语法格式
kubectl explain rc 创建
kubectl run nginx --replicas= --labels="app=example" --image=nginx:1.10 --port=
在创建的时候指定运行的命令
kubectl run busybox --image=busybox --command -- ping baidu.com
在pod中运行命令
kubectl exec nginx-6f8cf9fbc4-lvsqj ls
进入pod
kubectl exec nginx-6f8cf9fbc4-lvsqj -it bash
进入pod的某个容器
kubectl exec pod-demo -it --container busybox -- bash
kubectl exec pod-demo -it -c myapp -- bash
创建命名空间
kubectl create namespace mytest
查看命名空间
kubectl get namespace
查看pod标签
kubectl get pods --show-labels
查看指定标签的pod
kubectl get pods -l run=nginx
查看deploy
kubectl get deploy
查看pod详细信息
kubectl get pods -o wide
查看所有
kubectl get all
查看一个服务详细信息
kubectl describe service nginx-service
kubectl describe node nodehost
kubectl describe deployment myapp
查看endpoint
kubectl get endpoints
升级nginx至1.9.1
kubectl set image deploy nginx nginx=nginx:1.9.
暂停更新
kubectl rollout pause deployment myapp-deploy
继续更新
kubectl rollout resume deployment myapp-deploy
监控查看升级状态
kubectl rollout status deployment nginx
查看某个历史版本
kubectl rollout history deployment nginx --revision=
回滚到上一版本
kubectl rollout undo deployment/nginx-deployment
--to-revision参数指定回滚到某个历史版本
kubectl rollout undo deployment/nginx-deployment --to-revision=2
删除deployment
kubectl delete deployment nginx
查看在集群信息
kubectl cluster-info
超详细集群信息
kubectl cluster-info dump
查看所有名称空间的serivceaccount
kubectl get sa --all-namespace
查看默认的名称空间使用的是哪个secret
kubectl get sa default -o yaml
发布一个服务
kubectl expose deployment nginx --port= --type=NodePort --target-port= --name=nginx-service
–port:宿主机暴露出去的端口
–type=NodePort:使用结点+端口方式访问服务
–target-port:容器的端口
–name:创建service指定的名称 deployment扩容缩容
kubectl scale deployment nginx --replicas=
将get信息到出为yaml格式
kubectl get deploy kube-dns -n kube-system -o yaml > kube-dns.yaml
设置节点为维护模式(即节点不可被调度,但不影响已有pod的运行)
kubectl cordon k8s-slave
kubectl cordon 192.168.1.123
关闭维护模式
kubectl uncordon k8s-slave 查看日志
mysql--1dnm2
从容器中复制文件到宿主机
kubectl cp mysql--1dnm2:/tmp/message.log message.log
编辑
kubectl edit service nginx
替换
kubectl replace -f nginx_forreplace.yaml
删除node
kubectl drain node03 --delete-local-data --force --ignore-daemonsets
kubectl delete node node01
kubeadm reset 使用策略合并补丁并修补资源
kubectl patch node k8s-node- -p '{"spec":{"unschedulable":true}}' # 部分更新节点
更新容器镜像; spec.containers[*].name 是必须的,因为这是合并的关键字
kubectl patch pod valid-pod -p '{"spec":{"containers":[{"name":"kubernetes-serve-hostname","image":"new image"}]}}'
使用具有位置数组的 json 补丁更新容器镜像
kubectl patch pod valid-pod --type='json' -p='[{"op": "replace", "path": "/spec/containers/0/image", "value":"new image"}]'
使用具有位置数组的 json 补丁禁用 deployment 的 livenessProbe
kubectl patch deployment valid-deployment --type json -p='[{"op": "remove", "path": "/spec/template/spec/containers/0/livenessProbe"}]'
使用文件或者标准输入来更改配置信息。
kubectl apply -f nginx/nginx.yaml
自动在某个范围内扩容,跟scale不同的是前者还是需要手动执行,而autoscale则会根据负载进行调解,通过最小值和最大值的指定进行设定
kubectl autoscale deployment nginx --min= --max=5 --cpu-percent=80 执行drain命令,发现这条命令做了两件事情:
. 设定此node不可以使用(cordon)
. evict了其上的两个pod
[root@ku8- tmp]# kubectl drain 192.168.32.134
node "192.168.32.134" cordoned
pod "nginx-2476590065-d6h8f" evicted
pod "nginx-2476590065-9lfzh" evicted
node "192.168.32.134" drained
[root@ku8- tmp]#
结果确认
evict的意思有驱逐和回收的意思,让我们来看一下evcit这个动作的结果到底是什么。
结果是134上面已经不再有pod,而在132和133上新生成了两个pod,用以替代在134上被退场的pod,而这个替代的动作应该是replicas的机制保证的。所以drain的结果就是退场pod和设定node不可用(排水),这样的状态则可以进行维护了,执行完后重新uncordon即可。
创建docker私有仓库的认证secret
kubectl create secret docker-registry myregistrykey --docker-server=DOCKER_REGISTRY_SERVER --docker-username=DOCKER_USER --docker-password=DOCKER_PASSWORD --docker-email=DOCKER_EMAIL
kubernetes命令详情的更多相关文章
- Docker Kubernetes 命令行创建容器
Docker Kubernetes 命令行创建容器 环境: 系统:Centos 7.4 x64 Docker版本:18.09.0 Kubernetes版本:v1.8 管理节点:192.168.1.79 ...
- 手把手教你打造高效的 Kubernetes 命令行终端
Kubernetes 作为云原生时代的操作系统,熟悉和使用它是每名用户的必备技能.本文将介绍一些提高操作 Kubernetes 效率的技巧以及如何打造一个高效的 Kubernetes 命令行终端的方法 ...
- 文件内容操作命令 cat、more、less、head、tail、wc、grep 命令详情
文件内容操作命令 cat.more.less.head.tail.wc.grep 命令详情 1) cat命令 用途:显示出文件的全部内容 格式:cat 目标文件 例: ...
- kubernetes 命令使用
学会命令的查找和使用,而不是死记命令,记命令不如提高英文水平 1.kubernetes环境搭建完成后,kubernetes环境搭建参考http://www.cnblogs.com/sosogengdo ...
- Logcat命令详情
logcat是什么? Logcat 是一个命令行工具,用于转储系统消息日志,其中包括设备引发错误时的堆叠追踪以及从您的应用使用 Log类编写的消息. 格式:[adb] logcat [<opti ...
- kubernetes 命令记录
操作基本命令: 通过yaml文件创建: kubectl create -f xxx.yaml (不建议使用,无法更新,必须先delete) kubectl apply -f xxx.yaml (创 ...
- route命令详情
基础命令学习目录首页 原文链接:https://www.cnblogs.com/lpfuture/p/5857738.html 考试题一:linux下如何添加路由(百度面试题) 以上是原题,老男孩老师 ...
- CloudFoundry命令行和Kubernetes命令行的Restful API消费方式
先说CloudFoundry的命令行工具CLI.我们在CloudFoundry环境下工作,第一个使用的命令就是cf login. 如果在环境变量里维护CF_TRACE的值为true: 则我们能发现,诸 ...
- Docker安装、命令详情、层级架构、docker服务启动失败解决方法
容器背景: 层级架构: 容器对比传统化虚拟机: 可以把docker理解成是一款自带软件(比如:nignx.tomcat.....)的镜像操作系统(首先是要下载镜像) 以下是Windows环境安装Do ...
随机推荐
- 在DIV中如何控制字的位置?
想到实现字体在div中处于上图(右下角)的位置的话,只需在字体样式上面加上这行代码就好了:style='margin-top:120px;height:20px;float:right;text-al ...
- numpy array分割-【老鱼学numpy】
有合并,就有分割. 本节主要讲述如何通过numpy对数组进行横向/纵向分割. 横向/纵向分割数组 首先创建一个6行4列的数组,然后我们对此数组按照横向进行切割,分成3块,这样每块应该有2行,见例子: ...
- 理解Python协程:从yield/send到yield from再到async/await
Python中的协程大概经历了如下三个阶段:1. 最初的生成器变形yield/send2. 引入@asyncio.coroutine和yield from3. 在最近的Python3.5版本中引入as ...
- Linux shell 脚本报错:/bin/bash^M: bad interpreter: No such file or directory
今天遇到一个很诡异的问题,一直运行很正常的shell脚本失败了,只是昨天增加了一个参数而已. 报错信息: /bin/bash^M: bad interpreter: No such file or d ...
- 使用python处理地理数据:Geopandas
说句实话处理地理数据使用python还是比较麻烦的
- centos6.8 安装jdk
一.卸载CentOS自带的Java 1. 查看CentOS的Java的信息 [root@bogon /]# java -version java version "1.7.0_9 ...
- Android Notification 详解
转载自 http://www.cnblogs.com/travellife/  Notification 概述 Notification,是一种具有全局效果的通知,可以在系统的通知栏中显示.当 A ...
- CSS3_综合案例
综合案例 设置元素的 width,还可以利用 left 和 right 为了防止图片太小,background-size: 100% 100%; <!DOCTYPE html> <h ...
- Spark 实现wordcount
配置完spark之后,使用spark实现wordcount,这一部分完全参考<深入理解Spark:核心思想与源码分析> 依然使用hadoop wordcountTest的那几个txt文件 ...
- 移动端web开发常见问题
1.移动端如何定义字体font-family 三大手机系统的字体: ios 系统 默认中文字体是Heiti SC 默认英文字体是Helvetica 默认数字字体是HelveticaNeue 无微软雅黑 ...