k8s技术--Kubernetes集群kubectl命令的常见使用方法
kubectl [command] [TYPE] [NAME] [flags]- command:指定您希望对一个或多个资源执行的操作,例如创建,获取,描述,删除。
- TYPE:指定资源类型。 资源类型区分大小写,可以使用单数,复数或缩写形式。
- NAME:指定资源的名称。 名称区分大小写。 如果省略名称,则会显示所有资源的详细信息,例如$ kubectl get pod。
- flags:指定可选标志。 例如,可以使用-s或--server标志来指定Kubernetes API服务器的地址和端口。
1、显示Pod的更多信息
2、创建资源对象
3、查看资源对象
4、查看rc和service列表
5、描述资源对象
6、删除资源对象
7、执行容器的命令
8、使用一些复杂过滤条件查看特定的资源对象
9、Pod的扩容缩容、滚动升级以及更新资源配置
10、查看容器的日志
11、Kubectl context和配置
创建 kubeconfig 文件
kubeconfig 为 kubectl 的配置文件,包含访问 apiserver 的所有信息,如 apiserver 地址、CA 证书和自身使用的证书;
source /opt/k8s/bin/environment.sh
# 设置集群参数
kubectl config set-cluster kubernetes \
--certificate-authority=/etc/kubernetes/cert/ca.pem \
--embed-certs=true \
--server=${KUBE_APISERVER} \
--kubeconfig=kubectl.kubeconfig # 设置客户端认证参数
kubectl config set-credentials admin \
--client-certificate=admin.pem \
--client-key=admin-key.pem \
--embed-certs=true \
--kubeconfig=kubectl.kubeconfig # 设置上下文参数
kubectl config set-context kubernetes \
--cluster=kubernetes \
--user=admin \
--kubeconfig=kubectl.kubeconfig # 设置默认上下文
kubectl config use-context kubernetes --kubeconfig=kubectl.kubeconfig
--certificate-authority:验证 kube-apiserver 证书的根证书;--client-certificate、--client-key:刚生成的admin证书和私钥,连接 kube-apiserver 时使用;--embed-certs=true:将 ca.pem 和 admin.pem 证书内容嵌入到生成的 kubectl.kubeconfig 文件中(不加时,写入的是证书文件路径);
分发 kubeconfig 文件
分发到所有使用 kubectl 命令的节点:
source /opt/k8s/bin/environment.sh
for node_ip in ${NODE_IPS[@]}
do
echo ">>> ${node_ip}"
ssh k8s@${node_ip} "mkdir -p ~/.kube"
scp kubectl.kubeconfig k8s@${node_ip}:~/.kube/config
ssh root@${node_ip} "mkdir -p ~/.kube"
scp kubectl.kubeconfig root@${node_ip}:~/.kube/config
done
- 保存到用户的
~/.kube/config文件;
12、在线编辑资源
13、节点和集群信息查询或调度方法
14、资源类型列表
|
资源类型
|
缩写别名
|
|
apiservices
|
|
|
certificatesigningrequests
|
csr
|
|
clusters
|
|
|
clusterrolebindings
|
|
|
clusterroles
|
|
|
componentstatuses
|
cs
|
|
configmaps
|
cm
|
|
controllerrevisions
|
|
|
cronjobs
|
|
|
customresourcedefinition
|
crd
|
|
daemonsets
|
ds
|
|
deployments
|
deploy
|
|
endpoints
|
ep
|
|
events
|
ev
|
|
horizontalpodautoscalers
|
hpa
|
|
ingresses
|
ing
|
|
jobs
|
|
|
limitranges
|
limits
|
|
namespaces
|
ns
|
|
networkpolicies
|
netpol
|
|
nodes
|
no
|
|
persistentvolumeclaims
|
pvc
|
|
persistentvolumes
|
pv
|
|
poddisruptionbudget
|
pdb
|
|
podpreset
|
|
|
pods
|
po
|
|
podsecuritypolicies
|
psp
|
|
podtemplates
|
|
|
replicasets
|
rs
|
|
replicationcontrollers
|
rc
|
|
resourcequotas
|
quota
|
|
rolebindings
|
|
|
roles
|
|
|
secrets
|
|
|
serviceaccounts
|
sa
|
|
services
|
svc
|
|
statefulsets
|
|
|
storageclasses
|
|
15、kubectl的格式化输出
|
输出格式
|
描述
|
|
-o=custom-columns=<spec>
|
使用逗号分隔的自定义列列表打印表格
|
|
-o=custom-columns-file=<filename>
|
使用 文件中的自定义列模板打印表格
|
|
-o=json
|
输出 JSON 格式的 API 对象
|
|
-o=jsonpath=<template>
|
打印 jsonpath 表达式中定义的字段
|
|
-o=jsonpath-file=<filename>
|
打印由 文件中的 jsonpath 表达式定义的字段
|
|
-o=name
|
仅打印资源名称
|
|
-o=wide
|
以纯文本格式输出任何附加信息,对于 Pod ,包含节点名称
|
|
-o=yaml
|
输出 YAML 格式的 API 对象
|
16、Kubectl 日志打印级别
|
详细等级
|
描述
|
|
--v=0
|
总是对操作人员可见。
|
|
--v=1
|
合理的默认日志级别,如果您不需要详细输出。
|
|
--v=2
|
可能与系统的重大变化相关的,有关稳定状态的信息和重要的日志信息。这是对大多数系统推荐的日志级别。
|
|
--v=3
|
有关更改的扩展信息。
|
|
--v=4
|
调试级别详细输出。
|
|
--v=6
|
显示请求的资源。
|
|
--v=7
|
显示HTTP请求的header。
|
|
--v=8
|
显示HTTP请求的内容。
|
k8s技术--Kubernetes集群kubectl命令的常见使用方法的更多相关文章
- Kubeadm部署K8S(kubernetes)集群(测试、学习环境)-单主双从
1. kubernetes介绍 1.1 kubernetes简介 kubernetes的本质是一组服务器集群,它可以在集群的每个节点上运行特定的程序,来对节点中的容器进行管理.目的是实现资源管理的自动 ...
- kubernetes集群管理命令(二)
系列目录 上一节我们介绍了一些基本的命令,这一节我们介绍一些更为复杂的命令. pod排序 使用kubectl get pod获取pod资源默认是以名称排序的,有些时候我们可能希望按其它顺序排序.比如说 ...
- kubernetes集群管理命令(三)
系列目录 前面两节我们由浅入深介绍了不少kubernetes管理比较常用的命令.本节我们通过案例讲解一些需要更为复杂的操作才能完成的命令. 选择一个deployment下的所有pod 前面讲到过,ku ...
- 常用的清理 Kubernetes 集群资源命令
1. Kubernetes 基础对象清理 清理 Evicted 状态的 Pod kubectl get pods --all-namespaces -o wide | grep Evicted | a ...
- Kubernetes集群管理工具kubectl命令技巧大全
一. kubectl概述 Kubectl是用于控制Kubernetes集群的命令行工具,通过kubectl能够对集群本身进行管理,并能够在集群上进行容器化应用的安装部署. kubectl命令的语法如下 ...
- 用8个命令调试Kubernetes集群
如果使用任何系统的时间足够长,那么你肯定必须对其进行调试,Kubernetes也不例外.它是一个分布式系统,有许多运动部件.我们将介绍8个可以运行以调试任何Kubernetes集群的命令. 它将帮助你 ...
- 二进制安装部署kubernetes集群---超详细教程
本文收录在容器技术学习系列文章总目录 前言:本篇博客是博主踩过无数坑,反复查阅资料,一步步搭建完成后整理的个人心得,分享给大家~~~ 本文所需的安装包,都上传在我的网盘中,需要的可以打赏博主一杯咖啡钱 ...
- 二进制文件方式安装kubernetes集群
所有操作全部用root使用者进行,高可用一般建议大于等于3台的奇数,我们使用3台master来做高可用 练习环境说明: 参考GitHub master: kube-apiserver,kube-con ...
- 使用Minikube运行一个本地单节点Kubernetes集群
使用Minikube是运行Kubernetes集群最简单.最快捷的途径,Minikube是一个构建单节点集群的工具,对于测试Kubernetes和本地开发应用都非常有用. ⒈安装Minikube Mi ...
随机推荐
- 【MOOC EXP】Linux内核分析实验六报告
程涵 原创博客 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 进程的描述和进程的创建 知识点梳理: ...
- 毕业设计 之 二 PHP集成环境(Dreamweaver)使用
毕业设计 之 二 PHP学习笔记(一) 作者:20135216 平台:windows10 软件:XAMPP,DreamWeaver 一.环境搭建 1.XAMPP下载安装 XAMPP是PHP.MySQL ...
- ELF文件格式分析
一般的 ELF 文件包括三个索引表:ELF header,Program header table,Section header table. 1)ELF header:在文件的开始,保存了路 ...
- Java计算器(结对)
一:题目简介 我们要做的是一个多功能计算器,Java程序编辑器是:图形界面.线程.流与文件等技术的综合应用. 图形界面的实现:考虑到简单.实用.高效等特点,就选择了Swing来完成实现,在选择组件上, ...
- numpy行转列
>>> a = np.array([1, 2, 3]) >>> a = a.reshape(-1, 1) #-1表示任意行数,1表示1列 >>> ...
- ABP集成短信发送模块
ABPZero并没有手机短信发送功能,现在我们来集成一个,为后面注册.登录作铺垫. 阿里云短信服务 首先需要在阿里云开通短信服务,连接地址 开通后,在签名管理中添加一个签名 在模板管理中添加一个模板, ...
- Golang 数组、切片、映射
定义数组 var arr1 [5]int //整型类型 fmt.Println(arr1) //[0 0 0 0 0] //赋值 arr1 = [5]int{1, 2, 3, 4, 5} fmt.Pr ...
- PHP文件下载功能实现
客户端的浏览器通过HTTP协议可以实现文件下载: 方法一: 能提供用户下载的最简单的方法就是使用一个<a></a>标签,比如在页面中添加这么一行代码 <a href=&q ...
- Daemon Thread [shirocache] (Running)
shiro cache的原理 https://cwiki.apache.org/confluence/display/SHIRO/Caching shirocache这个线程相关的内容
- Python 爬虫 --- urllib
对于互联网数据,Python 有很多处理网络协议的工具,urllib 是很常用的一种. 一.urllib.request,request 可以很方便的抓取 URL 内容. urllib.request ...