kubectl命令举例

news2024/11/20 1:35:43

为了使读者能够快速掌握kubectl命令的使用方法,下面对常用的命令进行介绍。

1. kubectl create命令

此命令通过文件或者标准输入创建一个资源对象,支持YAML或者JSON格式的配置文件。例如,如果用户创建了一个Nginx的YAML配置文件,其内容如下:

apiVersion: v1

kind: ReplicationController

metadata:

  name: nginx-controller

spec:

  replicas: 2

  selector:

    name: nginx

  template:

    metadata:

      labels:

        name: nginx

    spec:

      containers:

        - name: nginx

          image: nginx

          ports:

            - containerPort: 80

用户可以使用以下命令创建MySQL的副本控制器:

$ kubectl create -f nginx.yaml

replicationcontroller "nginx-controller" created

2. kubectl get命令

用户可以通过此命令列出一个或多个资源对象,该命令的参数为资源类型名称。例如,使用下面的命令列出当前命名空间下的节点:

$ kubectl get nodes

NAME              STATUS       AGE

192.168.1.122   Ready        12d

192.168.1.123   Ready        12d

使用下面的命令列出所有的服务:

$ kubectl get services

NAME         CLUSTER-IP       EXTERNAL-IP      PORT(S)      AGE

kubernetes  10.254.0.1       <none>            443/TCP      12d

...

需要在Node上执行,准备redhat-ca.cr文件:

$ yum install *rhsm*

$ wget http://mirror.centos.org/centos/7/os/x86_64/Packages/ python-rhsm-certificates-1.19.10-1.el7_4.x86_64.rpm

$ rpm2cpio python-rhsm-certificates-1.19.10-1.el7_4.x86_64.rpm | cpio -iv --to-stdout ./etc/rhsm/ca/redhat-uep.pem | tee /etc/rhsm/ca/redhat-uep.pem

$ docker pull registry.access.redhat.com/rhel7/pod-infrastructure:latest

下面的命令以比较详细的方式列出当前命名空间中的Pod:

$ kubectl get pods -o wide

NAME                      READY   STATUS  RESTARTS     AGE IP             NODE

nginx-controller-g5165   1/1     Running 0             4m  172.17.0.3   127.0.0.1

nginx-controller-zz0dk   1/1     Running 0             4m  172.17.0.2   127.0.0.1

...

3. kubectl describe命令

此命令用于显示一个或多个资源对象的详细信息。例如,我们想要获取名称为nginx-controller-g5165的Pod的详细信息,可以使用以下命令:

$ kubectl describe pods/nginx-controller-g5165

Name:           nginx-controller-g5165

Namespace:      default

Node:           127.0.0.1/127.0.0.1

Start Time:     Sat, 23 Mar 2023 07:00:19 +0800

Labels:         name=nginx

Status:         Running

IP:             172.17.0.3

Controllers:    ReplicationController/nginx-controller

Containers:

  nginx:

    Container ID:               docker://5c427e437a4cb413e33b12c3dcc5d16ec1772876a4e5552669d842edf8bb1372

    Image:                      nginx

    Image ID:                   docker-pullable://docker.io/ nginx@sha256:98efe605f61725fd817ea69521b0eeb32bef007af0e3d0aeb6258c6e6fe7fc1a

    Port:                       80/TCP

    State:                      Running

    Started:                   Sat, 23 Mar 2023 07:03:37 +0800

    Ready:                      True

    Restart Count:             0

    Volume Mounts:             <none>

    Environment Variables:   <none>

Conditions:

  Type          Status

  Initialized   True

  Ready         True

  PodScheduled  True

No volumes.

...

4. kubectl exec命令

此命令用于在Pod的容器中执行一个命令。例如,下面的命令在名称为my-nginx- 379829228-8gfbb的容器中执行/bin/bash命令:

$ kubectl exec -it my-nginx-379829228-8gfbb /bin/bash

root@my-nginx-379829228-8gfbb:/#

$ kubectl exec -it nginx-c5cff9dcc-dr88w /bin/bash

执行完以后,可以发现Shell的命令提示符发生了变化,表明已经进入了容器的Shell环境中。

如果想要在容器中执行ls命令,可以使用以下方式:

$ kubectl exec nginx-controller-g5165 ls

bin

boot

dev

etc

home

lib

lib64

media

...

在上面的命令中,nginx-controller-g5165为Pod的名称。

5. kubectl run命令

该命令用来创建一个应用。与kubectl create命令不同,在该命令中,所有的选项可以通过命令行指定。例如,使用下面的命令创建一个Nginx应用:

$ kubectl run --image=nginx nginx-app --port=8080

deployment "nginx-app" created

执行完之后,通过get命令查看创建进度,如下所示:

$ kubectl get pods

NAME                            READY        STATUS       RESTARTS         AGE

nginx-app-2743647498-f6qc6   1/1           Running      0                  1m

...

可以得知,刚刚创建的Pod已经处于运行状态。

6. kubectl delete命令

该命令用来删除集群中的资源。例如,下面的命令删除名称为nginx-controller-zz0dk的Pod:

$ kubectl delete pods/nginx-controller-zz0dk

pod "nginx-controller-zz0dk" deleted

除了上面介绍的几个命令之外,kubectl还提供了许多功能强大的命令,读者可以参考其他的技术文档,在此不再详细介绍。

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

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

相关文章

使用CrawlSpider爬取全站数据。

CrawpSpider和Spider的区别 CrawlSpider使用基于规则的方式来定义如何跟踪链接和提取数据。它支持定义规则来自动跟踪链接&#xff0c;并可以根据链接的特征来确定如何爬取和提取数据。CrawlSpider可以对多个页面进行同样的操作&#xff0c;所以可以爬取全站的数据。CrawlSpid…

AtCoder Beginner Contest 233 (A-Ex)

A.根据题意模拟即可 B.根据题意模拟即可 C.直接用map 进行dp即可 D.用前缀和进行模拟&#xff0c;用map统计前缀和&#xff0c;每次计算当前前缀和-k的个数就是以当前点为右端点答案。 E - Σ[k0..10^100]floor(X&#xff0f;10^k) (atcoder.jp) &#xff08;1&#xff09;…

《XSS-Labs》02. Level 11~20

XSS-Labs 索引Level-11题解 Level-12题解 Level-13题解 Level-14题解 Level-15题解 Level-16题解 Level-17题解 Level-18~20题解 靶场部署在 VMware - Win7。 靶场地址&#xff1a;https://github.com/do0dl3/xss-labs 只要手动注入恶意 JavaScript 脚本成功&#xff0c;就可以…

第82步 时间序列建模实战:LightGBM回归建模

基于WIN10的64位系统演示 一、写在前面 这一期&#xff0c;我们介绍LightGBM回归。 同样&#xff0c;这里使用这个数据&#xff1a; 《PLoS One》2015年一篇题目为《Comparison of Two Hybrid Models for Forecasting the Incidence of Hemorrhagic Fever with Renal Syndr…

面试题:Kafka 为什么会丢消息?

文章目录 1、如何知道有消息丢失&#xff1f;2、哪些环节可能丢消息&#xff1f;3、如何确保消息不丢失&#xff1f; 引入 MQ 消息中间件最直接的目的&#xff1a;系统解耦以及流量控制&#xff08;削峰填谷&#xff09; 系统解耦&#xff1a; 上下游系统之间的通信相互依赖&a…

代码随想录算法训练营第五十六天 | 动态规划 part 14 | 1143.最长公共子序列、1035.不相交的线、53. 最大子序和(dp)

目录 1143.最长公共子序列思路代码 1035.不相交的线思路代码 53. 最大子序和&#xff08;dp&#xff09;思路代码 1143.最长公共子序列 Leetcode 思路 本题和718. 最长重复子数组 区别在于这里不要求是连续的了&#xff0c;但要有相对顺序&#xff0c;即&#xff1a;“ace” …

数据结构--队列与循环队列的实现

数据结构–队列的实现 1.队列的定义 比如有一个人叫做张三,这天他要去医院看病,看病时就需要先挂号,由于他来的比较晚,所以他的号码就比较大,来的比较早的号码就比较小,需要到就诊窗口从小号到大依次排队,前面的小号就诊结束之后,才会轮到大号来,小号每就诊完毕就销毁,每新来…

22.app.js的全局数据共享

app.js中定义的全局变量适合 不修改且仅在js中使用的变量 目录 1 全局变量 2 修改全局变量 3 app.js中的变量不能直接在wxml中渲染 4 全局方法 1 全局变量 比如我现在想定义一个全局的变量something&#xff0c;直接在APP中写就行了 之后你可以在任何一个页面中&…

嵌入式软件架构中抽象层设计方法

大家好&#xff0c;今天分享一篇嵌入式软件架构设计相关的文章。 软件架构这东西&#xff0c;众说纷纭&#xff0c;各有观点。什么是软件架构&#xff0c;我们能在网上找到无数种定义。 比如&#xff0c;我们可以这样定义&#xff1a;软件架构是软件系统的基本结构&#xff0c…

并查集详解(原理+代码实现+应用)

文章目录 1. 并查集概念2. 并查集原理2.1 合并2.1 找根 3. 并查集实现3.1 结构定义3.2 FindRoot&#xff08;找根&#xff09;3.3 Union&#xff08;合并&#xff09;3.4 IsInSet&#xff08;判断两个值是否在一个集合里&#xff09;3.5 SetCount&#xff08;并查集中集合个数&…

Pikachu靶场——文件上传漏洞(Unsafe upfileupload)

文章目录 1. Unsafe upfileupload1.1 客户端检查&#xff08;client check&#xff09;1.1.1 源代码分析 1.2 服务端检查&#xff08;MIME type&#xff09;1.2.1 源代码分析 1.3 getimagesize()1.3.1 源代码分析 1.4 文件上传漏洞防御 1. Unsafe upfileupload 漏洞描述 文件…

springboot中的@Configuration详解~

作用1&#xff1a;告诉springboot这是一个配置类&#xff0c;等同于之前在spring中的配置文件,而且配置类中可以使用Bean标注在方法上给容器注册组件&#xff0c;该组件默认也是单例 创建pet: package com.springboot.bean;import lombok.AllArgsConstructor; import lombok.…

【进阶C语言】进阶指针--学会所有指针类型

本节内容大致目录&#xff1a; 1.字符指针 2.指针数组&#xff08;数组&#xff09; 3.数组指针 &#xff08;指针&#xff09;--比较重要 4.函数指针--比较重要 5.函数指针数组--用的较少 6.指向函数指针数组的指针--只需要了解就可以 需要掌握每一种类型的符号和用处。…

Google ProtoBuf介绍

一、背景 前段时间了解到有公司用gRPC、Pulsar、Nacos、SkyWalking、OpenTelemetry、Prometheus、Envoy、Grafana、Sonar、PowerJob、Apollo 这些技术&#xff0c;也是Java路线的&#xff0c;很惭愧&#xff0c;这些我几乎都不了解&#xff0c;从13年以来玩Android、玩Python、…

Java 多输入框查询需求实现

&#x1f497;wei_shuo的个人主页 &#x1f4ab;wei_shuo的学习社区 &#x1f310;Hello World &#xff01; 多输入框查询 需求分析 任意一个输入框&#xff0c;输入内容点击搜索都可以精准搜索到对应的内容 代码实现 Controller接口编写 PostMapping("merchant/manage&…

文献阅读:RLAIF: Scaling Reinforcement Learning from Human Feedback with AI Feedback

文献阅读&#xff1a;RLAIF: Scaling Reinforcement Learning from Human Feedback with AI Feedback 1. 文章简介2. 方法介绍 1. 整体方法说明 3. 实验结果 1. RLHF vs RLAIF2. Prompt的影响3. Self-Consistency4. Labeler Size的影响5. 标注数据的影响 4. 总结 & 思考 文…

SpringCloudGateway网关中各个过滤器的作用与介绍

文章目录 RemoveCachedBodyFilterAdaptCachedBodyGlobalFilterNettyWriteResponseFilterForwardPathFilterRouteToRequestUrlFilterWebSocketRoutingFilterNettyRoutingFilterForwardRoutingFilterDispatcherHandler 是什么&#xff1f;⭐如何确定最后的路由路径&#xff1f;下…

一文拿捏Spring之AOP

Spring 1.Spring的理解 1.狭义上 指SpringFramework&#xff0c;特别的控制反转、依赖注入、面向切面、等特性 2.广义上 Spring家族的一系列产品&#xff0c;像SpringMVC、SpringBoot、SpringCloud等 2.aop &#x1f31f;面试题(aop): 简单介绍一下AOP&#xff1f; aop…

【userfaultfd】2021强网杯notebook

程序分析 老规矩&#xff0c;看下启动脚本 开启了 smep、smap、kaslr 保护&#xff0c;当然 kvm64 默认开启 kpti 保护 文件系统初始化脚本 #!/bin/sh /bin/mount -t devtmpfs devtmpfs /dev chown root:tty /dev/console chown root:tty /dev/ptmx chown root:tty /dev/tty…

SAAJ:SOAP with Attachments API for Java

介绍 支持带附件的SOAP消息Java接口&#xff08;SAAJ&#xff1a;SOAP with Attachments API for Java&#xff09;&#xff0c;定义了一套API&#xff0c;使开发者可以产生、消费遵从SOAP 1.1, SOAP 1.2, 和SOAP Attachments Feature的消息。 2019年SAAJ更改为新的名字&…