Kubernetes学习笔记(一)
参考:
kubectl Cheat Sheet | Kubernetes
Kubernetes kubectl 命令表 _ Kubernetes(K8S)中文文档_Kubernetes中文社区
Play with Kubernetes (play-with-k8s.com) (模拟环境)
[k8s系统情况]
1) kubernetes config指令:
>kubectl config view # Show Merged kubeconfig settings
>kubectl config get-contexts # display list of contexts
>kubectl config current-context # display the current-context
2) API resource指令:
>kubectl api-resources # for a complete list of supported resources
>kubectl api-resources --verbs=list,get # All resources that support the "list" and "get" request verbs
3) node详细情况:
>kubectl describe node <node name>
# 含有该node的详细信息,例如:NetworkUnavailable /MemoryPressure /DiskPressure /PIDPressure /Ready;
OS版本信息;cpu/momery/pods数量;IP地址;各个pod的cpu/memory利用率;Event事件
4)
>kubectl describe <api resource> #获取api对象详细信息
>kubectl explain pods #Get the documentation of the resource and its fields
>kubectl explain pods.spec.containers #JSONPath identifier
>kubectl get node -o wide #output带wide参数,获取详细信息,含node ip地址信息
>kubectl get nodes --show-labels #含failure domain信息
>kubectl cluster-info
>kubectl get componentstatus #component状态信息
>kubectl get apiservices
>kubectl diff -f <filename> # Compares the current state of the cluster against the state that the cluster would be in if the manifest was applied.
[查看各种API Resource]
1) Get commands with basic output:
>kubectl get services -n <namespace> # List all services in the namespace
>kubectl get pods --all-namespaces # List all pods in all namespaces
>kubectl get pods -A # List all pods in all namespaces
>kubectl get deployment my-dep # List a particular deployment
>kubetctl get rc,pods # resource type will be added before the resource name
2) Describe commands with verbose output:
>kubectl describe nodes my-node
>kubectl describe pods my-pod #包含详细信息,Events项会提供重要信息
>kubectl describe pods -A #所有pods
3) 排序输出:
>kubectl get pods -A --sort-by=.metadata.name
>kubectl get pods -n <ns> --sort-by='.status.containerStatuses[0].restartCount' #按重启次数
>kubectl get pv --sort-by=.spec.capacity.storage #按容量排序
[查看pod信息]
>kubectl get pods -o name -A #output,显示name
>kubectl get pods -o wide #output,显示详细信息,含pod的IP地址,所在node
>kubectl get pods -n <ns> -owide -w #观察pod的创建终止等动态变化:After listing/getting the requested object, watch for changes.
>kubectl get pods -o json #output,以json格式显示详细信息
>kubectl get pod <pod name> -o yaml #Get a pod's YAML
>kubectl get pod -n <namespace> #List all pods in the current namespace
>kubectl get pods --show-labels #Show labels for all pods (or any other Kubernetes object that supports labelling)
>kubectl get pods --no-headers #不显示column名
>kubectl get pods -L app #output,显示Label=app信息
>kubectl get pods -L role #output,显示pod的role信息:如master,replica,data,logger等
>kubectl get pods -L label1,lablel2 或者
>kubectl get pods -L label1 -L label2
>kubectl get pods -l app #selector过滤
>kubectl get pods -A #获取所有namespace的pods
>kubectl get pods --sort-by='.status.containerStatuses[0].restartCount' # List pods Sorted by Restart Count?
>kubectl get pod my-con --template="{{range .status.containerStatuses}}{{.name}}:{{.restartCount}}{{end}}" #查看某个pod的每个container的重启次数
>kubectl get pods --field-selector=status.phase=Running # Get all running pods in the namespace
>kubectl get pod mysql --template="{{.status.phase}}" #查看pod生命周期
>kubectl get pods --all-namespaces -o jsonpath='{range.items[*].status.initContainerStatuses[*]}{.containerID}{"\n"}{end}' | cut -d/ -f3
# List all containerIDs of initContainer of all pods
# Helpful when cleaning up stopped containers, while avoiding removal of initContainers.
>kubectl exec <pod> -- <command> #在pod里运行command
>kubectl exec <pod> -c <container> -- <command> #在pod的container里运行command
Kubernetes学习笔记(一)的更多相关文章
- Kubernetes 学习笔记(一):基础概念
个人笔记,仅本人查阅使用,不保证正确. 零.微服务 微服务架构专注于应用解耦合,通过将应用彻底地组件化和服务化,每个微服务只包含一个非常小的功能,比如权限管理.日志收集等等.由这一组微服务组合起来,提 ...
- Kubernetes学习笔记(八):Deployment--声明式的升级应用
概述 本文核心问题是:如何升级应用. 对于Pod的更新有两种策略: 一是删除全部旧Pod之后再创建新Pod.好处是,同一时间只会有一个版本的应用存在:缺点是,应用有一段时间不可用. 二是先创建新Pod ...
- Kubernetes学习笔记(四):服务
服务介绍 服务是一种为一组相同功能的pod提供单一不变接入点的资源.当服务存在时,他的IP和端口不会改变.客户端通过IP和端口建立连接,这些连接会被路由到任何一个pod上.如此,客户端不需要知道每个单 ...
- Kubernetes学习笔记之认识Kubernetes组件
前言:笔记知识点来源于Kubernetes官方文档说明,链接:https://kubernetes.io/docs/concepts/overview/components/ ,本记录仅仅是学习笔记记 ...
- 深入剖析Kubernetes学习笔记:开篇词(00)
一.关于Kubernetes初学的疑惑 就在这场因"容器"而起的技术变革中,kubernetes项目已经成为容器技术的事实标准,重新定义了基础设置领域对应用编排与管理的种种可能 1 ...
- kubernetes学习笔记(二)——部署服务
文章目录 (1)创建app (2)创建app的docker镜像 (3)部署app到k8s (4)参考资料 前面一篇文章部署好了minikube环境,这次学习下怎么部署app到kubernetes环境当 ...
- kubernetes学习笔记(一)——minikube安装记录
想学习一下kubernetes,于是先安装一个单机版来学习一下.但是就是这个最简单的单机版安装方式都倒腾了我好久,记录下自己的安装过程.博主是在windows利用vmware workstation安 ...
- Kubernetes 学习笔记(二):本地部署一个 kubernetes 集群
前言 前面用到过的 minikube 只是一个单节点的 k8s 集群,这对于学习而言是不够的.我们需要有一个多节点集群,才能用到各种调度/监控功能.而且单节点只能是一个加引号的"集群&quo ...
- 【Kubernetes学习笔记】-使用Minikube快速部署K8S单机学习环境
介绍 https://minikube.sigs.k8s.io/docs/ Minikube 用于快速在本地搭建 Kubernetes 单节点集群环境,它对硬件资源没有太高的要求,方便开发人员学习试用 ...
- 【Kubernetes学习笔记】-服务访问之 IP & Port & Endpoint 辨析
目录 不同类型的IP Pod IP Cluster IP 不同类型的Port port nodePort TargetPort containerPort hostPort Endpoint Endp ...
随机推荐
- LeetCode-846 一手顺子
来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/hand-of-straights 题目描述 Alice 手中有一把牌,她想要重新排列这些牌,分成 ...
- c#反射优化
https://www.cnblogs.com/xinaixia/p/5777886.html https://www.cnblogs.com/xinaixia/p/5777961.html
- Android Studio连接SQLlite
1. MainActivity.java package com.example.dbproject;import android.database.sqlite.SQLiteDatabase;imp ...
- 马哥教育第一周作业N67044-张铭扬
1. 图文并茂解释开源许可证 GPL.BSD.MIT.Mozilla.Apache和LGPL的区别? 1)MIT许可证:MIT是六种开源许可证中最自由宽容,它允许使用者自由修改后无需放置版权说明并且可 ...
- RTFormer: Efficient Design for Real-Time Semantic Segmentation with Transformer概述
0.前言 相关资料: arxiv github 论文解读 论文基本信息: 发表时间:NeurlPS2022(2022.10.13) 1.摘要 最近,基于Transformer的网络在语义分割方面取得了 ...
- K8s集群版本升级
k8s组件升级流程: 升级主管理节点→升级其他管理节点→升级工作节点 首先备份主管理节点的etcd,检查版本号,为了保证版本的兼容性,跨度最好不要超过两个版本. [root@master ~]# ku ...
- nginx 更改配置client_max_body_size nginx.conf 修改默认限制上传附件大小
Nginx 上传大文件超时解决办法 情况如下:用nginx作代理服务器,上传大文件时(测试上传50m的文件),提示上传超时或文件过大. 原因是nginx对上传文件大小有限制,而且默认是1M.另外,若上 ...
- 一些JVM指令
1.jps:查看本机java进程信息. 2 .jstack:打印线程的栈信息,制作线程dump文件. 3.jmap:打印内存映射,制作堆dump文件 4.jstat:性能监控工具 5.jhat:内存分 ...
- 蓝牙mesh组网实战(智能家居应用)
目录 蓝牙mesh组网目前存在有入门门槛高的问题,比如,嵌入式工程师需要考虑到标准mesh模型的兼容,app开发工程师需要了解mesh协议栈才能直接走mesh与芯片通信.而沁恒官方提供的透传模型简洁易 ...
- getClassLoader
类加载器(class loader)用来加载 Java 类到 Java 虚拟机中.一般来说,Java 虚拟机使用 Java 类的方式如下:Java 源程序(.java 文件)在经过 Java 编译器编 ...