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 ...
随机推荐
- Web系统页面打印技术实现与分析
1 Web页面打印概述应用WEB化,不论对开发商,还是对用户来说,实在是一种很经济的选择,因为基于WEB的应用,客户端的规则很简单,容易学习,容易维护,容易发布.在WEB系统中,打印的确是个烦人的问题 ...
- Safecracker-HDU1015
题意 给你大写字母的字符串,A=1,...Z=26,以及target 问你是否有v - w^2 + x^3 - y^4 + z^5 = target 有输出字典序大的那个字符串 分析 dfs code ...
- Linux内核分析 读书笔记 (第四章)
第四章 进程调度 调度程序负责决定将哪个进程投入运行,何时运行以及运行多长时间.进程调度程序可看做在可运行态进程之间分配有限的处理器时间资源的内核子系统.只有通过调度程序的合理调度,系统资源才能最大限 ...
- 20135337——linux第四次实践:字符集总结与分析
ASCII & GB2312 & UTF-8 ASCII 主要用于显示现代英语和其他西欧语言.它是现今最通用的单字节编码系统,并等同于国际标准ISO 646: 7位(bits)表示一个 ...
- This Android SDK requires Android Developer Toolkit version 17.0.0 or above. Current version is 10.0.0.v201102162101-104271. Please update ADT to the latest version.
win7/xp 下面安装Android虚拟机,更新SDK后,在Eclipse preference里指向android-sdk-windows时. 出现 : This Android SDK requ ...
- org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [applicationContext.xml]; nested exception is java.io.FileNotFoundException: c
//这个是 配置文件放错了地方 org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing ...
- 牛客OI周赛7-普及组
https://ac.nowcoder.com/acm/contest/372#question A.救救猫咪 #include <bits/stdc++.h> using namespa ...
- PAT 1076 Wifi密码
https://pintia.cn/problem-sets/994805260223102976/problems/994805262622244864 下面是微博上流传的一张照片:“各位亲爱的同学 ...
- Red Hat 5.8 CentOS 6.5 共用 输入法
pick up from http://jingyan.baidu.com/article/20b68a885a3607796cec622c.html
- 给kali linux2.0装一个中文输入法
没有中文输入法好痛苦啊.. 毕竟做了无限网卡,虚拟机和主机可以完完全全当两台设备使用了,所以kali还是需要一个中文输入法才方便. 由于使用的是比较新的kali版本和源,现在安装fcitx已经可以直接 ...