K8s常用运维命令

2024-06-23 15:38

本文主要是介绍K8s常用运维命令,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一. 查看集群信息

[root@k8s-master ~]# kubectl cluster-info

Kubernetes master is running at http://localhost:8080

To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.

[root@k8s-master ~]# kubectl cluster-info dump

  

二. 查看各组件状态

[root@k8s-master ~]# kubectl -s http://localhost:8080 get componentstatuses


     

或者

[root@k8s-master ~]# kubectl -s http://172.16.60.220:8080 get componentstatuses

三. GET信息

1) 查看节点 (k8s-master 对应的是 172.18.41.205的主机名)

[root@k8s-master ~]# kubectl get node                                #将命令中的node变为nodes也是可以的

  

[root@k8s-master ~]# kubectl -s http://k8s-master:8080 get node    #将命令中的node变为nodes也是可以的

  

2) 查看pods清单

[root@k8s-master ~]# kubectl get pod                          

  #将命令中的pod变为pods也是可以的                 

  

3) 查看service清单

[root@k8s-master ~]# kubectl get service                                          

#将命令中的service变为services也是可以的

  

或者  (后面的sed表示 打印奇数行)

[root@k8s-master ~]# kubectl get services -o json|grep '"name":'|sed -n '1~2p'

   

  

4) 查看replicationControllers清单 (同理可以将命令中的replicationControllers变为replicationController也是可以的)

[root@k8s-master ~]# kubectl get replicationControllers

  

5) 查看rc和namespace

[root@k8s-master ~]# kubectl get rc,namespace

  

6) 查看pod和svc(和service一样)

[root@k8s-master ~]# kubectl get pods,svc

  

7) 以jison格式输出pod的详细信息.

[root@k8s-master ~]# kubectl get pods

  

注意下面命令中的pods的名称可以通过上面命令查看

[root@k8s-master ~]# kubectl get po nginx-controller-djd1b -o json

{
    "apiVersion": "v1",
    "kind": "Pod",
    "metadata": {
        "annotations": {
            "kubernetes.io/created-by": "{\"kind\":\"SerializedReference\",\"apiVersion\":\"v1\",\"reference\":{\"kind\":\"ReplicationController\",\"namespace\":\"default\",\"name\":\"nginx-controller\",\"uid\":\"50a16131-4d52-11e9-99f2-00163e0e3c31\",\"apiVersion\":\"v1\",\"resourceVersion\":\"3860\"}}\n"
        },
        "creationTimestamp": "2019-03-23T11:03:18Z",
        "generateName": "nginx-controller-",
        "labels": {
            "name": "nginx"
        },
        "name": "nginx-controller-djd1b",
        "namespace": "default",
        "ownerReferences": [
            {
                "apiVersion": "v1",
                "controller": true,
                "kind": "ReplicationController",
                "name": "nginx-controller",
                "uid": "50a16131-4d52-11e9-99f2-00163e0e3c31"
            }
        ],
        "resourceVersion": "8369",
        "selfLink": "/api/v1/namespaces/default/pods/nginx-controller-djd1b",
        "uid": "4387cd87-4d5b-11e9-99f2-00163e0e3c31"
    },
    "spec": {
        "containers": [
            {
                "image": "172.18.41.206:5000/nginx",
                "imagePullPolicy": "Always",
                "name": "nginx",
                "ports": [
                    {
                        "containerPort": 80,
                        "protocol": "TCP"
                    }
                ],
                "resources": {},
                "terminationMessagePath": "/dev/termination-log"
            }
        ],
        "dnsPolicy": "ClusterFirst",
        "nodeName": "172.18.41.207",
        "restartPolicy": "Always",
        "securityContext": {},
        "terminationGracePeriodSeconds": 30
    },
    "status": {
        "conditions": [
            {
                "lastProbeTime": null,
                "lastTransitionTime": "2019-03-23T11:03:18Z",
                "status": "True",
                "type": "Initialized"
            },
            {
                "lastProbeTime": null,
                "lastTransitionTime": "2019-03-23T11:03:18Z",
                "status": "True",
                "type": "Ready"
            },
            {
                "lastProbeTime": null,
                "lastTransitionTime": "2019-03-23T11:03:18Z",
                "status": "True",
                "type": "PodScheduled"
            }
        ],
        "containerStatuses": [
            {
                "containerID": "docker://ca97dceebc3f5a3619b2e83d6d50357eb5beb1abc677a5056442fe6a63b30967",
                "image": "172.18.41.206:5000/nginx",
                "imageID": "docker-pullable://172.18.41.206:5000/nginx@sha256:7734a210432278817f8097acf2f72d20e2ccc7402a0509810c44b3a8bfe0094a",
                "lastState": {},
                "name": "nginx",
                "ready": true,
                "restartCount": 0,
                "state": {
                    "running": {
                        "startedAt": "2019-03-23T11:03:18Z"
                    }
                }
            }
        ],
        "hostIP": "172.18.41.207",
        "phase": "Running",
        "podIP": "192.168.44.3",
        "startTime": "2019-03-23T11:03:18Z"
    }
}

  

还可以输出其它格式和方法(kubectl get -h查看帮助)

[root@k8s-master ~]# kubectl get -h

这篇关于K8s常用运维命令的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1087573

相关文章

RedHat运维-Linux文本操作基础-AWK进阶

你不用整理,跟着敲一遍,有个印象,然后把它保存到本地,以后要用再去看,如果有了新东西,你自个再添加。这是我参考牛客上的shell编程专项题,只不过换成了问答的方式而已。不用背,就算是我自己亲自敲,我现在好多也记不住。 1. 输出nowcoder.txt文件第5行的内容 2. 输出nowcoder.txt文件第6行的内容 3. 输出nowcoder.txt文件第7行的内容 4. 输出nowcode

【服务器运维】MySQL数据存储至数据盘

查看磁盘及分区 [root@MySQL tmp]# fdisk -lDisk /dev/sda: 21.5 GB, 21474836480 bytes255 heads, 63 sectors/track, 2610 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesSector size (logical/physical)

【服务器运维】CentOS6 minimal 离线安装MySQL5.7

1.准备安装包(版本因人而异,所以下面的命令中版本省略,实际操作中用Tab自动补全就好了) cloog-ppl-0.15.7-1.2.el6.x86_64.rpmcpp-4.4.7-23.el6.x86_64.rpmgcc-4.4.7-23.el6.x86_64.rpmgcc-c++-4.4.7-23.el6.x86_64.rpmglibc-2.12-1.212.el6.x86_64.r

【服务器运维】CentOS7 minimal 离线安装 gcc perl vmware-tools

0. 本机在有网的情况下,下载CentOS镜像 https://www.centos.org/download/ 1. 取出rpm 有的情况可能不需要net-tools,但是如果出现跟ifconfig相关的错误,就把它安装上。另外如果不想升级内核版本的话,就找对应内核版本的rpm版本安装 perl-Time-Local-1.2300-2.el7.noarch.rpmperl-Tim

React+TS前台项目实战(十七)-- 全局常用组件Dropdown封装

文章目录 前言Dropdown组件1. 功能分析2. 代码+详细注释3. 使用方式4. 效果展示 总结 前言 今天这篇主要讲全局Dropdown组件封装,可根据UI设计师要求自定义修改。 Dropdown组件 1. 功能分析 (1)通过position属性,可以控制下拉选项的位置 (2)通过传入width属性, 可以自定义下拉选项的宽度 (3)通过传入classN

Linux 下的Vim命令宝贝

vim 命令详解(转自:https://www.cnblogs.com/usergaojie/p/4583796.html) vi: Visual Interface 可视化接口 vim: VI iMproved VI增强版 全屏编辑器,模式化编辑器 vim模式: 编辑模式(命令模式)输入模式末行模式 模式转换: 编辑-->输入: i: 在当前光标所在字符的前面,转为输入模式

帆软报表常用操作

欢迎来到我的博客,代码的世界里,每一行都是一个故事 🎏:你只管努力,剩下的交给时间 🏠 :小破站 帆软报表常用操作 多序号实现使用数据集作为参数空白页或者竖线页修改页面Title金额,或者保留两位小数等等设置日期格式显示图片使用公式 多序号实现 所用函数为SEQ(),如果一张报表中需要用到多个序号,那么就需要加入参数SEQ(1),SEQ(

常用MQ消息中间件Kafka、ZeroMQ和RabbitMQ对比及RabbitMQ详解

1、概述   在现代的分布式系统和实时数据处理领域,消息中间件扮演着关键的角色,用于解决应用程序之间的通信和数据传递的挑战。在众多的消息中间件解决方案中,Kafka、ZeroMQ和RabbitMQ 是备受关注和广泛应用的代表性系统。它们各自具有独特的特点和优势,适用于不同的应用场景和需求。   Kafka 是一个高性能、可扩展的分布式消息队列系统,被设计用于处理大规模的数据流和实时数据传输。它

Linux中拷贝 cp命令中拷贝所有的写法详解

This text from: http://www.jb51.net/article/101641.htm 一、预备  cp就是拷贝,最简单的使用方式就是: cp oldfile newfile 但这样只能拷贝文件,不能拷贝目录,所以通常用: cp -r old/ new/ 那就会把old目录整个拷贝到new目录下。注意,不是把old目录里面的文件拷贝到new目录,

XMG 常用的手势

// 创建点按手势     UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tap:)];    tap.numberOfTabsRequired=2; //点击的次数