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 ...
随机推荐
- <a>标签中href="javascript:;"** 为什么 style不用src**
&src/href <!--href 用于标示资源和文档关系,src 用于替换标签内容--> <img src="xxx.jpg"/> <sc ...
- Linux内核学习期末总结(网课)
标签(空格分隔): 20135321余佳源 余佳源(原创作品转载请注明出处) <Linux内核分析> MOOC课程http://mooc.study.163.com/course/USTC ...
- Proxy基础---------获取collection接口的构造跟方法
1----查看proxy api 2------测试代码 package cn.proxy01; import java.lang.reflect.Constructor; import java.l ...
- [区块链]POW 与POS
POW:全称Proof ofWork,工作证明. 这是什么意思呢?就是说,你能获得多少货币,取决于你挖矿贡献的有效工作,也就是说,你电脑性能越好,分给你的矿就会越多,这就是根据你的工作证明来执行货币的 ...
- TFS2018 linux Agent的安装
1. 感谢徐蕾老师的文档,根据文档简单学会了TFS agent的安装,在此简单记录一下: 前置条件: CentOS7.4 or CentOS7.5的版本 安装的软件有git 2.17 dotnet s ...
- python自动化运维笔记1 —— 系统性能信息模块psutil
一.系统基础信息模块 1.1 系统性能信息模块psutil psutil是一个跨平台库(http://code.google.com/p/psutil/),能够轻松实现获取系统运行的进程和系统利用率( ...
- 借鉴 学习 DELPHI 通用函数 哈哈
[转]关于Delphi通用涵数 http://m.blog.csdn.net/blog/dragonjiang5460/1196927 2006-9-8阅读2016 评论0 DELPHI程序注册码设计 ...
- js語句
js語句就是告訴瀏覽器要做什麼: js代碼就是js語句序列: js代碼塊就是{}包括的,函數就是一個代碼塊的典型例子: js注釋:單行注釋://,多行注釋:/**/ js對大小寫敏感: js語句可以不 ...
- 实现CSS等分布局的5种方式
前面的话 等分布局是指子元素平均分配父元素宽度的布局方式,本文将介绍实现等分布局的5种方式 float [思路一]float 缺点:结构和样式存在耦合性,IE7-浏览器下对宽度百分比取值存在四舍五入的 ...
- iOS程序的启动执行顺序
1 程序的入口 进入main函数, 设置AppDelegate称为函数的代理 2 程序完成加载 -[AppDelegate application:didFinishLaunchingWithOpt ...