常用的k8s管理命令

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-controllerspod-template-hash=7cc8dd57d9
Annotations:          <none>
Status:               Running
IP:                   10.88.0.2
IPs:IP:           10.88.0.2IP:           2001:4860:4860::2
Controlled By:  ReplicaSet/calico-kube-controllers-7cc8dd57d9
Containers:calico-kube-controllers:Container ID:   containerd://d56f786700e356de6b4bf59af4f15c22949bc4caf1b4420ee31feb9d714556b0Image:          docker.io/calico/kube-controllers:v3.19.4Image ID:       docker.io/calico/kube-controllers@sha256:b15521e60d8bb04a501fe0ef4bf791fc8c164a175dd49a2328fb3f2b89838a68Port:           <none>Host Port:      <none>State:          RunningStarted:      Fri, 24 Feb 2023 10:04:07 +0800Ready:          TrueRestart Count:  0Liveness:       exec [/usr/bin/check-status -l] delay=10s timeout=1s period=10s #success=1 #failure=6Readiness:      exec [/usr/bin/check-status -r] delay=0s timeout=1s period=10s #success=1 #failure=3Environment:ENABLED_CONTROLLERS:  nodeDATASTORE_TYPE:       kubernetesMounts:/var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-l9tcm (ro)
Conditions:Type              StatusInitialized       TrueReady             TrueContainersReady   TruePodScheduled      True
Volumes:kube-api-access-l9tcm:Type:                    Projected (a volume that contains injected data from multiple sources)TokenExpirationSeconds:  3607ConfigMapName:           kube-root-ca.crtConfigMapOptional:       <nil>DownwardAPI:             true
QoS Class:                   BestEffort
Node-Selectors:              kubernetes.io/os=linux
Tolerations:                 CriticalAddonsOnly op=Existsnode-role.kubernetes.io/master:NoSchedulenode.kubernetes.io/not-ready:NoExecute op=Exists for 300snode.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.hqwc.cn/news/21057.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【误差自适应跟踪方法AUV】自适应跟踪(EAT)方法研究(Matlab代码Simulin实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

路径规划算法:基于人工蜂鸟优化的路径规划算法- 附代码

路径规划算法&#xff1a;基于人工蜂鸟优化的路径规划算法- 附代码 文章目录 路径规划算法&#xff1a;基于人工蜂鸟优化的路径规划算法- 附代码1.算法原理1.1 环境设定1.2 约束条件1.3 适应度函数 2.算法结果3.MATLAB代码4.参考文献 摘要&#xff1a;本文主要介绍利用智能优化…

C# HTTP Error 500.19

解决办法&#xff1a; .vs configapplicationhost.config 修改<section name"windowsAuthenticationnurununoverrideModeDefault"Allow”/>

内网渗透之kerberos协议解析

kerberos协议简介&#xff1a; Kerberos协议是由麻省理工学院&#xff08;MIT&#xff09;开发的一种网络身份验证协议&#xff0c;用于在非安全网络中实现安全的身份验证。其设计目标是通过密钥系统为客户与服务器应用程序提供强大的认证服务。 Kerberos协议要解决的实际上就…

Linux驱动开发:Linux内核启动流程详解

前言&#xff1a;Linux 内核同样作为 Linux 驱动开发的 “三巨头” 之一&#xff0c;Linux 内核的启动流程要比 uboot 复杂的多&#xff0c;涉及到的内容也更多。但秉持着 “知其然知其所以然” 的学习态度&#xff0c;作者将给读者朋友大致的过一遍 Linux 内核的启动流程。(考…

Windows 安装 RabbitMq 和 Erlang

1.安装Erlang 音乐RabbitMq是基于Erlang开发的&#xff0c;所以先要安装这个环境 下载地址&#xff1a;32位 64位 其他版本自己找 官网 下载完之后无脑安装直接一直下一步 2.配置Erlang环境变量 2.1 新建ERLANG_HOME 把自己的安装的根目录填进去 比如&#xff1a;C:\Progra…

【javaEE面试题(五)在JMM(Java Memory Model (Java 内存模型))下谈volatile的作用】

volatile的作用 JMM下volatile作用 volatile 能保证内存可见性 volatile 修饰的变量, 能够保证 “内存可见性”. 代码在写入 volatile 修饰的变量的时候 改变线程工作内存中volatile变量副本的值将改变后的副本的值从工作内存刷新到主内存 代码在读取 volatile 修饰的变量的时…

基于低代码平台的项目设计的一般流程及低代码平台(基于iVX)与MVC的关系

基于低代码平台的项目设计的一般流程及低代码平台&#xff08;基于iVX&#xff09;与MVC的关系 1.基于低代码平台的项目设计的一般流程a.流程图b.MVC架构应用于iVX项目的各分层排序&#xff1a;&#xff08;1&#xff09;第一步&#xff1a;写M&#xff08;2&#xff09;第二步…

Linux+Docker+Gitlab+Jenkins+虚拟内存

最近想研究一下怎么自动化发布项目,于是找到了gitlab+jenkins这个组合,正好借机也研究一下最近很火的docker技术。本篇共分为五部分,分别为安装要求,内存虚拟化,安装docker,安装gitlab,安装jenkins。 一、 安装要求 1 Docker安装要求: 1.1 操作系统 Docker只支持64…

数据科学竞赛之吃鸡排名预测答辩PPT

该课程我的成绩为优秀&#xff0c;PPT格式仅供参考。

Jquery

一、概念 JQuery是一套兼容多浏览器的JS脚本库&#xff0c;核心理念是写的更少&#xff0c;做的更多&#xff0c;使用Jquery将极大的提高编写JS代码的效率。 下载与安装&#xff1a;下载&#xff1a;只需要在官网下载js文件&#xff0c;也可以用在线的。 安装&#xff1a;在需要…

echarts折线图横向渐变填充

这种情况&#xff0c;需要后端去计算&#xff0c;如何把不同分段的值赋予不同的颜色&#xff0c;然后组合成下面我们需要的格式就可以实现 drawLine1() {if (document.getElementById(s1) ! null) {var that thislet heightNum (this.porosityList.maxDepth-this.porosityLis…