常用的k8s管理命令

news2024/11/23 16:51:34

Kubernetes 是一个由主节点和工作节点组成的容器编排工具。它只允许通过作为控制平面核心组件的 API 服务器进行通信。API 服务器公开了一个 HTTP REST API,允许内部组件(如用户和集群)和外部组件之间的通信。
你可以将 API 服务器视为 Kubernetes 的主要用户界面或前端。它使您能够查询、更新或管理 Kubernetes 对象或资源的状态。为了建立这些交互,Kubernetes API 可以直接发出 REST 请求、使用客户端库或通过kubectl 命令行接收直接命令。

kubectl 可以帮助您执行各种操作,包括:

部署容器化应用
运行 Kubernetes 操作
监控任务
检查和管理集群资源
查看系统日志

kubectl 是kubernetes的一个管理工具,需要安装,并且一般安装在主节点上。

kubeclt 的语法:

kubectl [command] [TYPE] [NAME] [flags]
  • command:描述要执行的操作类型。常见操作包括创建、写入、获取、应用 和删除。这些命令要么创建新的 Kubernetes 对象,要么修改现有对象,要么请求有关现有对象的信息。你可以在单个命令中指定多个资源。
  • TYPE —描述你的命令所针对的资源类型。常见的选项是pod、 service、 deployment、 daemonset、 statefulset、 job 或cronjob。
  • NAME —这是区分大小写的,指定你的命令应该应用到的资源的名称。提供资源名称不是强制性的——如果你提供名称,则命令仅限于该特定资源(或者如果没有该名称的资源,你会收到错误消息。如果不指定,则该命令适用于当前命名空间集群中的所有资源。
  • flags —这些表示特殊选项或对特定信息的请求。它们也可以用作修饰符来覆盖默认值或环境变量。

1、get 查询资源

使用 kubectl get 操作列出一个或多个资源

  • 查看所有k8s节点
kubectl get nodes

在这里插入图片描述

  • 查看所有pod

1、查看所有的pod

kubectl  get pod -A  

2、指定名称空间,查看对应名称空间的pod, -n 后面是名称空间

[root@k8s-master01 /]# kubectl get pod -n kube-system
NAME                                       READY   STATUS    RESTARTS   AGE
calico-kube-controllers-7cc8dd57d9-wrcgh   1/1     Running   0          138d
calico-node-9qpvq                          1/1     Running   0          138d
calico-node-f8ww5                          1/1     Running   0          138d
calico-node-gfrkb                          1/1     Running   0          138d
coredns-7449ff9459-csbkf                   1/1     Running   0          138d
nacos-7bb9bd6dc-g4665                      1/1     Running   0          135d
sfnacos-94975b78d-zfvhn                    1/1     Running   0          78d

3、指定名称空间,查看pod详情,加 -o wide

[root@k8s-master01 /]# kubectl get pod -n kube-system -o wide
NAME                                       READY   STATUS    RESTARTS   AGE    IP             NODE           NOMINATED NODE   READINESS GATES
calico-kube-controllers-7cc8dd57d9-wrcgh   1/1     Running   0          138d   10.88.0.2      k8s-master01   <none>           <none>
calico-node-9qpvq                          1/1     Running   0          138d   172.16.0.48    k8s-node01     <none>           <none>
calico-node-f8ww5                          1/1     Running   0          138d   172.16.0.150   k8s-master01   <none>           <none>
calico-node-gfrkb                          1/1     Running   0          138d   172.16.0.147   k8s-node02     <none>           <none>
coredns-7449ff9459-csbkf                   1/1     Running   0          138d   172.7.32.129   k8s-master01   <none>           <none>
nacos-7bb9bd6dc-g4665                      1/1     Running   0          135d   172.7.32.135   k8s-master01   <none>           <none>
sfnacos-94975b78d-zfvhn                    1/1     Running   0          78d    172.7.32.181   k8s-master01   <none>           <none>

  • 查看指定名称空间的deployment
[root@k8s-master01 /]# kubectl get deployment -n kube-system
NAME                      READY   UP-TO-DATE   AVAILABLE   AGE
calico-kube-controllers   1/1     1            1           138d
coredns                   1/1     1            1           138d
nacos                     1/1     1            1           138d
sfnacos                   1/1     1            1           78d

  • 查看services网络
[root@k8s-master01 /]# kubectl get svc -o wide
NAME         TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)   AGE    SELECTOR
kubernetes   ClusterIP   10.96.0.1    <none>        443/TCP   139d   <none>

2、 Describe 描述

  • 查看日志
    pod 后面加pod的名称,-n 后面名称空间
[root@k8s-master01 /]# kubectl describe pod calico-kube-controllers -n kube-system
Name:                 calico-kube-controllers-7cc8dd57d9-wrcgh
Namespace:            kube-system
Priority:             2000000000
Priority Class Name:  system-cluster-critical
Node:                 k8s-master01/172.16.0.150
Start Time:           Fri, 24 Feb 2023 10:03:31 +0800
Labels:               k8s-app=calico-kube-controllers
                      pod-template-hash=7cc8dd57d9
Annotations:          <none>
Status:               Running
IP:                   10.88.0.2
IPs:
  IP:           10.88.0.2
  IP:           2001:4860:4860::2
Controlled By:  ReplicaSet/calico-kube-controllers-7cc8dd57d9
Containers:
  calico-kube-controllers:
    Container ID:   containerd://d56f786700e356de6b4bf59af4f15c22949bc4caf1b4420ee31feb9d714556b0
    Image:          docker.io/calico/kube-controllers:v3.19.4
    Image ID:       docker.io/calico/kube-controllers@sha256:b15521e60d8bb04a501fe0ef4bf791fc8c164a175dd49a2328fb3f2b89838a68
    Port:           <none>
    Host Port:      <none>
    State:          Running
      Started:      Fri, 24 Feb 2023 10:04:07 +0800
    Ready:          True
    Restart Count:  0
    Liveness:       exec [/usr/bin/check-status -l] delay=10s timeout=1s period=10s #success=1 #failure=6
    Readiness:      exec [/usr/bin/check-status -r] delay=0s timeout=1s period=10s #success=1 #failure=3
    Environment:
      ENABLED_CONTROLLERS:  node
      DATASTORE_TYPE:       kubernetes
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-l9tcm (ro)
Conditions:
  Type              Status
  Initialized       True
  Ready             True
  ContainersReady   True
  PodScheduled      True
Volumes:
  kube-api-access-l9tcm:
    Type:                    Projected (a volume that contains injected data from multiple sources)
    TokenExpirationSeconds:  3607
    ConfigMapName:           kube-root-ca.crt
    ConfigMapOptional:       <nil>
    DownwardAPI:             true
QoS Class:                   BestEffort
Node-Selectors:              kubernetes.io/os=linux
Tolerations:                 CriticalAddonsOnly op=Exists
                             node-role.kubernetes.io/master:NoSchedule
                             node.kubernetes.io/not-ready:NoExecute op=Exists for 300s
                             node.kubernetes.io/unreachable:NoExecute op=Exists for 300s
Events:                      <none>

3、apply 创建资源

比如安装calico, 安装文件为calico.yaml, 直接apply 就可创建calico的资源

kubectl apply -f calico.yaml 

4、delete删除

  • 删除整个安装,比如calico
kubectl delete -f calico.yaml 
  • 删除deployment
kubectl delete deployment nkafka-deployment-1 -n kafka

nkafka-deployment-1 :deployment 名称
-n kafka : 名称空间

  • 删除pod
kubectl delete pod calico-node-dmwpf -n kube-system 

calico-node-dmwpf : pod 名称
-n kube-system : 名称空间

  • 强制删除pod,状态是Terminating的 pod 无法删除时,使用强制删除
kubectl delete pod kube-system calico-kube-controllers-7cc8dd57d9-4l9kn --force --grace-period=0 -n kube-system 

kube-system: 名称空间
calico-kube-controllers-7cc8dd57d9-4l9kn: pod名称

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/745371.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

RestClient操作索引库

一、初始化RestClient 分为三步&#xff1a; 1&#xff09;引入es的RestHighLevelClient依赖&#xff1a; <dependency><groupId>org.elasticsearch.client</groupId><artifactId>elasticsearch-rest-high-level-client</artifactId> </dep…

字节面试:连接一个不存在的 IP 地址,会发生什么?

分享两个字节面试题&#xff0c;都是基于场景问的网络问题。 Q1&#xff1a;客户端连接一个不存在的 IP 地址&#xff0c;会发生什么&#xff1f; Q2&#xff1a;客户端连接一个存在的 IP 地址但是端口不存在&#xff0c;会发生什么&#xff1f; PS&#xff1a;这里的「连接…

leetcode:2395. 和相等的子数组(python3解法)

难度&#xff1a;简单 给你一个下标从 0 开始的整数数组 nums &#xff0c;判断是否存在 两个 长度为 2 的子数组且它们的 和 相等。注意&#xff0c;这两个子数组起始位置的下标必须 不相同 。 如果这样的子数组存在&#xff0c;请返回 true&#xff0c;否则返回 false 。 子数…

快消品行业企业如何选择适合自己的订单管理系统源码

快消品行业企业在选择适合自己的订单管理系统源码时&#xff0c;需要考虑以下五个方面&#xff1a; 首先&#xff0c;企业需要考虑订单管理系统的功能是否能够满足自身的需求。订单管理系统应该具备订单录入、订单查询、订单处理、订单跟踪、进销存管理、临期提醒等基本功能&am…

创业大赛,助力AI创业团队加速发展

AI产业投资人认为&#xff0c;参加AI大模型大赛的企业&#xff0c;无论是大厂还是创业团队&#xff0c;在技术、资本和产品等方面都面临全方位的竞争。特别对于创业团队而言&#xff0c;早期的问题是缺乏资金和技术支持&#xff0c;这让很多创业团队犹豫不决。 大型模型的研发…

2.MySQL- Linux 常见指令

目录 回顾&#xff1a;Linux 常见命令 一、创建目录 make directory (mkdir) 二、创建一个空白的文本文件 (touch) 练习 三、查看文本文件内容相关的指令&#xff08;cat head tile...&#xff09; 3.1 cat 3.2 head & tail 3.3 wc -l 3.4 grep 3.5 less & …

电脑城要倒闭?“泰酷辣”

电脑城要倒闭&#xff1f;“泰酷辣” &#x1f607;博主简介&#xff1a;我是一名正在攻读研究生学位的人工智能专业学生&#xff0c;我可以为计算机、人工智能相关本科生和研究生提供排忧解惑的服务。如果您有任何问题或困惑&#xff0c;欢迎随时来交流哦&#xff01;&#x1…

走进Linux世界【一、Linux概述】

第一章 Linux概述 1、操作系统 ​ 定义&#xff1a;操作系统(Operating System&#xff0c;简称OS)是管理计算机硬件与软件资源的计算机程序 ​ 作用&#xff1a;是把计算机系统中对硬件设备的操作封装起来&#xff0c;供应用软件调用&#xff0c;也是提供一个让用户与系统交…

I2C(IIC)总线 物理层

2C 通信设备常用的连接方式如下图&#xff1a; ①它是一个支持多设备的总线。“总线”指多个设备共用的信号线。在一个I2C 通讯总线中&#xff0c;可连接多个I2C 通讯设备&#xff0c;支持多个通讯主机及多个通讯从机。 ②一个I2C 总线只使用两条总线线路&#xff0c;一条双向串…

Windows 操作系统架构介绍

Windows 操作系统架构介绍 4 种基本类型的用户模式进程用户进程服务进程系统进程环境子系统服务进程Windows 内核模式组件 重要的系统组件环境子系统和子系统 DLL子系统的启动Windows 子系统Windows 10 和 Win32k.sys 其他子系统执行体内核内核对象内核处理器控制区&#xff08…

掌握这些写简历投简历的“黑魔法”,告别简历已读不回!

“哎&#xff0c;我还能找到工作吗&#xff1f;” 这是最近加我微信的好友&#xff0c;问的最多的一句话。 太卷了 最近加我微信的朋友很多&#xff0c;我都很奇怪&#xff0c;最近也没怎么发文章&#xff0c;怎么会有这么多人加我。 大概就是因为太卷了&#xff0c;之前写的…

右键pdf文件没有打印

问题描述 右键点pdf文件&#xff0c;弹出的菜单找不到打印选项。网上找了很多办法&#xff0c;然并卵啊。还是得靠自己慢慢摸索。 原因分析 新安装的win11系统&#xff0c;pdf文件默认可以用windows自带的edge浏览器打开。但是edge浏览器没有能力提供右键打印功能。 解决办法…

(一)ESP32基于MicroPython平台——环境搭建

一. 获取固件 我们要使用MicroPython平台进行ESP32程序的编写&#xff0c;您需要做的第一件事是下载最新的 MicroPython 固件.bin 文件以加载到您的 ESP32 设备上。您可以从 &#xff1a;MicroPython固件链接下载它 。从这里&#xff0c;您有 3 个主要选择&#xff1a; 稳定的…

STM32与RS485

单片机应用实践篇之RS485通信及MODBUS通信协议——MODBUS通信协议简介_哔哩哔哩_bilibili RS485基本认识 1&#xff1a;RS485用于工业控制&#xff0c;与我们使用的USART不同&#xff0c;无法直接与单片机的RXD和TXD直接相连&#xff0c;需要使用转化芯片&#xff0c;将TTL电平…

Halcon——C#中在HWindow上显示字符串遇见的问题及解决方案

Halcon——C#中在HWindow上显示字符串遇见的问题及解决方案 前言一、HWindow上显示字符串的两种方式1. DispText函数2. WriteString函数 二、DispText函数与WriteString函数的区别三、遇见的问题及解决方案“HALCON error #5123: Wrong window type in operator disp_text”“H…

带你【玩转Linux命令】➽ cat chattr 每天2个day01

带你【玩转Linux命令】➽ cat & chattr 每天2个day01 &#x1f53b; 一、文件管理命令1.1 cat-打印输出文件内容1.2 chattr-改变文件属性 &#x1f53b; 总结—温故知新 &#x1f448;【上一篇】 &#x1f496;The Begin&#x1f496; 点点关注&#xff0c;收藏不迷路&am…

驱动程序设计 驱动程序函数、驱动控制LED闪烁 7.7

驱动函数 .read() .write() ssize_t (*read) (struct file *, char __user *, size_t, loff_t *);ssize_t (*write) (struct file *, const char __user *, size_t, loff_t *);驱动程序 /** 文件名称&#xff1a;mod.c* 创 建 者: memories* 创建日期&#xff1a;2023…

GPU调研之TensorFlow Benchmarks测试GPU

目录 1. 查看服linux服务器信息 2. Linux系统安装pip详细步骤 3. Centos安装python3 4. 安装TensorFlow 5. TensorFlow测试结果解读 6. 参考文档 gpu的占用率为99%&#xff0c;是一种比较正常的使用状态。 gpu是图形处理器的简称&#xff0c;又称显示核心、视觉处理器、…

Java 生成图片验证码

图片验证码使用场景 登录注册&#xff1a;可以区分机器和人类的一种手段&#xff0c;其最大的作用是为了防止机器人程序暴力登录或攻击短信发送&#xff1a;可以有效避免客户网站或APP遭到恶意攻击、预防资金损失 实现方式 1.添加Maven依赖 <dependency><groupId&g…

智能制造与低代码开发:数智时代的强力合击!

说在前面 在当今数智时代的浪潮中&#xff0c;智能制造正在成为制造业的发展焦点。随着科技的不断进步和创新&#xff0c;智能制造为企业带来了全新的发展机遇和挑战。那么&#xff0c;数智时代下的制造业到底是怎样的一个发展盛况&#xff1f;智能制造的新 趋势又是如何展现的…