Kubernetes基础命令

news/2024/11/13 15:46:13/文章来源:https://www.cnblogs.com/hxqwe/p/18369522

Kubernetes 提供 kubectl 是使用 Kubernetes API 与 Kubernetes 集群的控制面进行通信的命令行工具。

这个工具叫做 kubectl

针对配置信息,kubectl 在 $HOME/.kube 目录中查找一个名为 config 的配置文件。 你可以通过设置 KUBECONFIG 环境变量或设置 --kubeconfig

参数来指定其它 kubeconfig 文件。

语法

使用以下语法从终端窗口运行 kubectl 命令:

kubectl [command] [TYPE] [NAME] [flags]

其中 commandTYPENAME 和 flags 分别是:

  • command:指定要对一个或多个资源执行的操作,例如 creategetdescribedelete

  • TYPE:指定资源类型。资源类型不区分大小写, 可以指定单数、复数或缩写形式。例如,以下命令输出相同的结果:

kubectl get pod pod1
kubectl get pods pod1
kubectl get po pod1
  • NAME:指定资源的名称。名称区分大小写。 如果省略名称,则显示所有资源的详细信息。例如:kubectl get pods
  • 在对多个资源执行操作时,你可以按类型和名称指定每个资源,或指定一个或多个文件:

  • 要按类型和名称指定资源:

  • 要对所有类型相同的资源进行分组,请执行以下操作:TYPE1 name1 name2 name<#>
    例子:

    kubectl get pod example-pod1 example-pod2
  • 分别指定多个资源类型:TYPE1/name1 TYPE1/name2 TYPE2/name3 TYPE<#>/name<#>
    例子:

    kubectl get pod/example-pod1 replicationcontroller/example-rc1
  • 用一个或多个文件指定资源:-f file1 -f file2 -f file<#>

  • flags: 指定可选的参数。例如,可以使用 -s 或 --server 参数指定 Kubernetes API 服务器的地址和端口。

以下是一些常用命令和选项:

查看集群信息

kubectl cluster-info

 获取资源

kubectl get <resource>:列出指定资源的列表(如 pods, services, deployments)
#例子
kubectl get pods       获取所有 Pods
kubectl get services       获取所有 Services

-n--namespace  指定要查询的命名空间。
-A--all-namespaces  显示所有命名空间中的 Pod。
-o--output  指定输出格式,可以是 widejsonyamlname 等。
--field-selector  根据特定字段选择 Pod,例如 Pod 的状态。
-l--selector  根据标签选择 Pod。
--watch  实时监视 Pod 的变化。

 描述资源

kubectl describe <resource> <name>:显示资源的详细信息(如 kubectl describe pod my-pod)

 创建和应用配置

kubectl create -f <file>:根据配置文件创建资源。
kubectl apply -f <file>:应用或更新资源配置。
vim test.yamlapiVersion: v1
kind : Pod
metadata:name: alpine
spec:containers:- name: alpineimage: harbor.hiuiu.com/basic_image/centos7_filebeat_nginx:2408.uimagePullPolicy: Neverports:- containerPort: 8000command: ["/bin/sh"]args: ["-c", "while true; do echo hello; sleep 10; done"]


##imagePullPolicy有三个取值:

#Always 每次都下载最新镜像
#Never 不会尝试获取镜像,如果镜像存在本地,kubelet尝试启动容器;否则启动失败
#IfNotPresent 只有当镜像在本地不存在时才会拉取

#如果省略
imagePullPolicy字段:
1.且镜像标签为latest或没有设置标签,自动设置为Always
2.且镜像指定了标签,自动设置为IfNotPresent
kubectl apply -f test.yaml      #根据根yaml文件应用或更新资源配置
kubectl delete -f test.yaml      #删除由yaml文件应用生成的资源配置

删除资源

kubectl delete <resource> <name>:删除指定资源(如 kubectl delete pod my-pod)

 执行命令

kubectl exec -it <pod> -- <command>:在 Pod 中执行命令(如 kubectl exec -it my-pod -- /bin/bash)
#例子
kubectl exec nginx11 -it bash

 查看日志

kubectl logs <pod>:查看指定 Pod 的日志

 查看命令说明

kubectl explain pod

 管理命名空间

kubectl get namespace     #列出居群环境所有namespace

kubectl create ns test2      #创建一个namespace

kubectl config set-context --current --namespace=test2      #切换当前namespace

kubectl config view --minify --output 'jsonpath={..namespace}'      #显示当前namespace

kubectl describe namespace test2      #查看namespace详细信息

kubectl delete namespace test2      #删除namespace同时删除里面的pod

使用YAML 文件定义命名空间

 

vim ns.yaml

apiVersion: v1 kind: Namespace metadata:name: my
-namespace

kubectl apply -f namespace.yaml #执行yaml文件

 

未完待续

 

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

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

相关文章

CRMEB多商户版前端页面安装依赖要点

CRMEB多商户版CRMEB_Mer_v2.3.2(20240710源码包).zip安装环境如下(很重要)平台管理-admin端安装依赖yarn install平台商户-mer端安装依赖yarn install平台客服-service端安装依赖npm install

打砖块小游戏html小游戏

这里提供一个打砖块小游戏html代码,有需要的小伙伴可以自己试试。body内容 点击查看代码 <select id="difficulty"><option value="easy">简单</option><option value="medium">中等</option><option value=&…

LLM应用实战: 产业治理多标签分类

本期的干货就是分享关于如何基于LLM实现数量多、层级多的多标签分类的实战经验,各位读者可以参考借鉴。1. 背景 许久未见,甚是想念~ 近期本qiang~换了工作,处于新业务适应期,因此文章有一段时间未更新,理解万岁! 现在正在着手的工作是产业治理方面,主要负责其中一个功能…

使用cilium开发ebpf程序

使用go开发ebpf程序最常见的一个框架就是cilium。开发前需要了解ebpf,了解go语言的基础知识。 在本地安装go之后下载bpf2go go get github.com/cilium/ebpf/cmd/bpf2go 从最简单的开发框架开始 下载示例源码 git clone https://github.com/cilium/ebpf.git 在ebpf/examples下是…

element ui 中日期选择器disabledDate的几种用法

现实开发中,遇到截止日期,跟着接口返回来确定的。需要用函数来实现disabledDate 这块知识,在手册文档写的也不详细。 这块实现基于element-ui 2.15.14https://blog.csdn.net/hellowang02/article/details/131575982相信坚持的力量,日复一日的习惯.

Paper Reading: SAFE: Scalable Automatic Feature Engineering Framework for Industrial Tasks

本文提出了一种可扩展自动特征工程方法 SAFE,它包括特征生成阶段和特征选择阶段,具备较高的计算效率、可扩展性,能满足实际业务问题的要求。不同于使用算子枚举所有的生成特征,本文的特征生成阶段专注于挖掘原始特征对,以更高的概率生成更有效的新特征。在特征选择阶段,本…

织梦模板引擎的代码样式有如下几种形式

1、织梦模板引擎的代码样式有如下几种形式:{dede:标记名称 属性=值/} {dede:标记名称 属性=值}{/dede:标记名称}{dede:标记名称 属性=值}自定义样式模板(InnerText){/dede:标记名称} 提示: 如果使用带底层模板的标记,必须严格用{dede:标记名称 属性=值}{/dede:标记名称} 这种…

Flannel VxLAN DR 模式

Flannel VxLAN DR 模式Flannel VxLAN DR 模式 一、环境信息主机 IPubuntu 172.16.94.141软件 版本docker 26.1.4helm v3.15.0-rc.2kind 0.18.0clab 0.54.2kubernetes 1.23.4ubuntu os Ubuntu 20.04.6 LTSkernel 5.11.5 内核升级文档二、安装服务 kind 配置文件信息 $ cat insta…

从零开始学习C++(0)

这是什么? 要先学习 C++,我们要先了解 C++ 是什么这是 Wiki Pedia 的解释,我们来提炼一下:C++ 是一种高级语言。 C++ 是 C 语言的扩展升级版。 C++ 是面向对象语言。下载环境 简单了解一下后,我们来下载 C++ 编译器环境。 目前有很多种编译器,例如:Dev-C++ CodeBlocks V…

vm linux 共享文件夹

虚拟机设置共享目录挂载mkdir /mnt/hgfs mount -t fuse.vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other cd /mnt/hgfs/ ls 留待后查,同时方便他人 联系我:renhanlinbsl@163.com

win10mysql服务丢失

虚拟机中安装的mysql突然连接不上了,点击计算机-管理,发现mysql服务都不见了。 使用命令行重新安装:mysqld.exe --install 又提示:Install/Remove of the Service Denied!,这个是权限问题,用管理员运行就好 到计算机-管理中找到msyql服务,点击启动,正常了纯属记录程序…

vue3.0启动报错

vue突然重启报错:Two output files share the same path but have different contents,按照网络方法各种依赖重新清除,再安装,不太行,仔细一看,透,vue大小写写错了