kubectl基础命令详解

news/2024/4/19 14:35:31/文章来源:https://blog.csdn.net/weixin_43757402/article/details/119343352

管理名称空间资源

查看名称空间

[root@ceshi-130 conf]# kubectl get ns
[root@ceshi-130 conf]# kubectl get namespace
NAME              STATUS   AGE
default           Active   7d17h
kube-node-lease   Active   7d17h
kube-public       Active   7d17h
kube-system       Active   7d17h

查询default空间所有资源

[root@ceshi-130 conf]# kubectl get all -n default
[root@ceshi-130 conf]# kubectl get all  #默认default
pod资源
NAME                 READY   STATUS    RESTARTS   AGE
pod/nginx-ds-c7bnr   1/1     Running   1          18h
pod/nginx-ds-lkznc   1/1     Running   1          18hservice资源
NAME                 TYPE        CLUSTER-IP    EXTERNAL-IP   PORT(S)   AGE
service/kubernetes   ClusterIP   192.168.0.1   <none>        443/TCP   7d17hdaemonset控制器资源
NAME                      DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR   AGE
daemonset.apps/nginx-ds   2         2         2       2            2           <none>          18h

创建名称空间

[root@ceshi-130 conf]# kubectl create ns ceshi
namespace/ceshi created
[root@ceshi-130 conf]# kubectl get ns
NAME              STATUS   AGE
ceshi             Active   44s

删除名称空间

[root@ceshi-130 conf]# kubectl delete ns ceshi
namespace "ceshi" deleted

管理Deployment资源

创建deployment

[root@ceshi-130 conf]# kubectl create deployment nginx-test --image=harbor.od.com/public/nginx:v1.7.9 -n kube-public
[root@ceshi-130 conf]# kubectl get deployment -n kube-public
NAME         READY   UP-TO-DATE   AVAILABLE   AGE
nginx-test   1/1     1            1           17s
[root@ceshi-130 conf]# kubectl get pods -n kube-public
NAME                         READY   STATUS    RESTARTS   AGE
nginx-test-88bc69dd6-cgh8k   1/1     Running   0          41s

查看

[root@ceshi-130 conf]# kubectl get deployment -n kube-public
NAME         READY   UP-TO-DATE   AVAILABLE   AGE
nginx-test   1/1     1            1           9m13s
[root@ceshi-130 conf]# kubectl get deployment -n kube-public -o wide
NAME         READY   UP-TO-DATE   AVAILABLE   AGE   CONTAINERS   IMAGES                              SELECTOR
nginx-test   1/1     1            1           10m   nginx        harbor.od.com/public/nginx:v1.7.9   app=nginx-test

详细查看

[root@ceshi-130 conf]# kubectl describe deployment nginx-test -n kube-public
Name:                   nginx-test #名称
Namespace:              kube-public #名称空间
CreationTimestamp:      Tue, 03 Aug 2021 10:34:12 +0800 #创建时间
Labels:                 app=nginx-test #标签
Annotations:            deployment.kubernetes.io/revision: 1 #注解
Selector:               app=nginx-test #标签选择器
Replicas:               1 desired | 1 updated | 1 total | 1 available | 0 unavailable
状态副本集			    	预期一个	  最新状态  	总共一个	   1个存在		 0个不存在	
StrategyType:           RollingUpdate #更新策略,默认滚动发布(蓝绿发布,灰度发布,滚动发布,金丝雀发布)
MinReadySeconds:        0 
RollingUpdateStrategy:  25% max unavailable, 25% max surge
Pod Template:Labels:  app=nginx-testContainers:nginx:Image:        harbor.od.com/public/nginx:v1.7.9Port:         <none>Host Port:    <none>Environment:  <none>Mounts:       <none>Volumes:        <none>
Conditions:Type           Status  Reason----           ------  ------Available      True    MinimumReplicasAvailableProgressing    True    NewReplicaSetAvailable
OldReplicaSets:  <none>
NewReplicaSet:   nginx-test-88bc69dd6 (1/1 replicas created)
Events:Type    Reason             Age   From                   Message----    ------             ----  ----                   -------Normal  ScalingReplicaSet  12m   deployment-controller  Scaled up replica set nginx-test-88bc69dd6 to 1

pod资源

进入pod资源
[root@ceshi-130 conf]# kubectl exec -it nginx-test-88bc69dd6 bash -n kube-public配置端口
[root@ceshi-130 conf]# kubectl expose deployment nginx-test --port=80 -n kube-public
service/nginx-test exposed
[root@ceshi-130 conf]# kubectl get all -n kube-public
NAME                             READY   STATUS    RESTARTS   AGE
pod/nginx-test-88bc69dd6-cgh8k   1/1     Running   2          5h16m对外提供的唯一出口
NAME                 TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)   AGE
service/nginx-test   ClusterIP   192.168.37.172   <none>        80/TCP    25sNAME                         READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/nginx-test   1/1     1            1           5h16mNAME                                   DESIRED   CURRENT   READY   AGE
replicaset.apps/nginx-test-88bc69dd6   1         1         1       5h16m查看LVS规则,上面的CLUSTER-IP代理172.7.200.1节点
[root@ceshi-131 certs]# ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags-> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.0.1:443 nq-> 10.1.74.22:6443              Masq    1      0          0         -> 10.1.74.23:6443              Masq    1      0          0         
TCP  192.168.37.172:80 nq-> 172.7.200.1:80               Masq    1      0          1 扩容节点 
[root@ceshi-130 conf]# kubectl scale deployment nginx-test --replicas=2 -n kube-public
deployment.extensions/nginx-test scaled[root@ceshi-130 conf]# ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags-> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.0.1:443 nq-> 10.1.74.22:6443              Masq    1      0          0         -> 10.1.74.23:6443              Masq    1      0          0         
TCP  192.168.37.172:80 nq-> 172.7.200.1:80               Masq    1      0          0         -> 172.7.200.3:80               Masq    1      0          0

删除deployment

查看
[root@ceshi-131 certs]# kubectl get deploy
NAME        READY   UP-TO-DATE   AVAILABLE   AGE
nginx-ljx   1/1     1            1           42m
删除
[root@ceshi-131 certs]# kubectl delete deploy nginx-ljx
deployment.extensions "nginx-ljx" deleted[root@ceshi-131 certs]# kubectl get pods
NAME                         READY   STATUS        RESTARTS   AGE
nginx-ds-f82d2               1/1     Running       0          2m43s
nginx-ds-lkznc               1/1     Running       3          24h
nginx-ljx-669cc7d666-hj9qh   0/1     Terminating   0          73s

通过和本机8080 apiserver进行通信,将用户再命令行输入的命令,组织并转换为apiserver识别的信息,实现管理各种资源的一种有限途径


以yaml格式显示pod

 [root@ceshi-130 conf]# kubectl get pods nginx-test-88bc69dd6-4vk58 -o yaml -n kube-public

以yaml格式显示service

[root@ceshi-130 conf]# kubectl get svc nginx-test -o yaml -n kube-public

创建资源配置清单

[root@ceshi-130 ~]# cat nginx-ljx.yaml 
apiVersion: v1
kind: Service
metadata:name: nginx-ljxnamespace: defaultlabels:app: nginx-ljx
spec:ports:- port: 80protocol: TCPtargetPort: 80selector:type: ClusterIP
[root@ceshi-130 ~]# kubectl create -f nginx-ljx.yaml 
service/nginx-ljx created 
查看service
[root@ceshi-130 ~]# kubectl get svc
NAME         TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)   AGE
kubernetes   ClusterIP   192.168.0.1      <none>        443/TCP   8d
nginx-ljx    ClusterIP   192.168.134.19   <none>        80/TCP    35s  离线修改并应用
[root@ceshi-130 ~]# kubectl apply -f nginx-ljx.yaml 在线修改并应用
[root@ceshi-130 ~]# kubectl edit svc nginx-ljx
service/nginx-ljx edited
[root@ceshi-130 ~]# kubectl get svc
NAME         TYPE        CLUSTER-IP        EXTERNAL-IP   PORT(S)   AGE
kubernetes   ClusterIP   192.168.0.1       <none>        443/TCP   8d
nginx-ljx    ClusterIP   192.168.129.159   <none>        888/TCP   3m5s陈述式删除(命令行)
[root@ceshi-130 ~]# kubectl delete svc nginx-ljx
service "nginx-ljx" deleted
声明式删除(yaml/json)
[root@ceshi-130 ~]# kubectl delete -f nginx-ljx.yaml 

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

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

相关文章

【树上倍增】【割点】 【换根法】3067. 在带权树网络中统计可连接服务器对数目

作者推荐 视频算法专题 本文涉及知识点 树上倍增 树 图论 并集查找 换根法 深度优先 割点 LeetCode3067. 在带权树网络中统计可连接服务器对数目 给你一棵无根带权树&#xff0c;树中总共有 n 个节点&#xff0c;分别表示 n 个服务器&#xff0c;服务器从 0 到 n - 1 编号…

剑指offer 二维数组中的查找 C++

目录 前言 一、题目 二、解题思路 1.直接查找 2.二分法 三、输出结果 前言 最近在牛客网刷题&#xff0c;刷到二维数组的查找&#xff0c;在这里记录一下做题过程 一、题目 描述 在一个二维数组中&#xff08;每个一维数组的长度相同&#xff09;&#xff0c;每一行都按照…

Rust入门:Rust如何调用C静态库的函数

关于Rust调用C&#xff0c;因为接口比较复杂&#xff0c;貌似Rust不打算支持。而对于C函数&#xff0c;则相对支持较好。 如果要研究C/Rust相互关系的话&#xff0c;可以参考&#xff1a; https://docs.rs/cxx/latest/cxx/ Rust ❤️ C 这里只对调用C静态库做一个最简短的介…

Linux第71步_将linux中的多个文件编译成一个驱动模块

学习目的&#xff1a;采用旧字符设备测试linux系统点灯&#xff0c;进一步熟悉其设计原理。采用多文件参与编译&#xff0c;深度学习编写Makefile&#xff0c;有利于实现驱动模块化设计。 1、创建MyOldLED目录 输入“cd /home/zgq/linux/Linux_Drivers/回车” 切换到“/home…

鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:PinchGesture)

用于触发捏合手势&#xff0c;触发捏合手势的最少手指为2指&#xff0c;最大为5指&#xff0c;最小识别距离为5vp。 说明&#xff1a; 从API Version 7开始支持。后续版本如有新增内容&#xff0c;则采用上角标单独标记该内容的起始版本。 接口 PinchGesture(value?: { finge…

01_Maven

文章目录 Maven安装MavenMaven的工作流程配置MavenMaven的使用module和project的关系如何用Maven导包 如何用Maven进行项目构建指令介绍clean指令compile指令package指令install指令 Maven的依赖管理如何导包scope作用域依赖传递依赖冲突 使用Maven开发项目Junit如何使用Junit …

灵神笔记(1)----动态规划篇

文章目录 介绍动态规划入门&#xff1a;从记忆化搜索到递推打家劫舍递归记忆化递归递推滚动变量 背包0-1 背包递归写法记忆化递归 目标和记忆化搜索递推两个数组一个数组 完全背包记忆化递归搜索 零钱兑换记忆化递归递推 背包问题变形[至多|恰好|至少] 最长公共子序列记忆化搜索…

在CentOS中安装Docker

安装Docker Docker 分为 CE 和 EE 两大版本。CE 即社区版&#xff08;免费&#xff0c;支持周期 7 个月&#xff09;&#xff0c;EE 即企业版&#xff0c;强调安全&#xff0c;付费使用&#xff0c;支持周期 24 个月。 Docker CE 分为 stable test 和 nightly 三个更新频道。…

el-table 插入单选并进行校验

<template><div><el-form :model"list" ref"ruleForm"><el-table :data"list.tableData" style"width: 100%"><el-table-column prop"time" label"日期" width"180"><…

Linux——线程(2)

在上一篇博客中我介绍了Linux中的线程是什么样的&#xff0c;就如同进程可以通过 fork创建&#xff0c;可以被终止&#xff0c;可以退出一样&#xff0c;线程也可以被我们用户控制&#xff0c;这 篇博客我会介绍线程的控制&#xff0c;并且基于线程的控制所产生的一些问题进行 …

python+django+vue电影票订购系统dyvv4

电影院订票信息管理系统综合网络空间开发设计要求。目的是将电影院订票通过网络平台将传统管理方式转换为在网上操作&#xff0c;方便快捷、安全性高、交易规范做了保障&#xff0c;目标明确。电影院订票信息管理系统可以将功能划分为用户和管理员功能[10]。 语言&#xff1a;…

【学习心得】响应数据加密的原理与逆向思路

一、什么是响应数据加密&#xff1f; 响应数据加密是常见的反爬手段的一种&#xff0c;它是指服务器返回的不是明文数据&#xff0c;而是加密后的数据。这种密文数据可以被JS解密进而渲染在浏览器中让人们看到。 它的原理和过程图如下&#xff1a; 二、响应数据加密的逆向思路 …

【web安全】实战 批量横扫springboot命令执行漏洞

天命&#xff1a;这次目标批量横扫&#xff0c;但是没完全成功&#xff0c;也没完全失败 步骤1&#xff1a;磨刀准备 这次先针对漏洞来寻找目标&#xff0c;所以寻找这种 springboot 的目标 利用CVE漏洞&#xff0c;进行命令执行攻击 先找靶场训练一波&#xff0c;叠加反弹sh…

Uni-ControlNet: All-in-One Control toText-to-Image Diffusion Models——【论文笔记】

本文发表于NeurIPS 2023 项目官网&#xff1a;Uni-ControlNet: All-in-One Control to Text-to-Image Diffusion Models 一、Introduction 近两年来&#xff0c;扩散模型在图像合成任务中表现优异&#xff0c;尤其是文本到图像&#xff08;T2I&#xff09;扩散模型已成为合成高…

pytorch配置环境

1.查看cuda版本 nvidia-smi cuda version:12.3 2.下载torch 然后根据版本去查找对应的 torch下载代码 可查看这里&#xff1a;Previous PyTorch Versions | PyTorch 然后执行 conda install pytorch1.10.0 torchvision0.11.0 torchaudio0.10.0 cudatoolkit11.3 -c pytorch…

蓝桥杯倒计时 38 天

整数二分模板&#xff1a;数的范围 二分的本质不是单调性&#xff0c;而是二分出能满足某种性质使得将整数分成两半。 思考&#xff1a;模板题&#xff0c;模板记熟就能做 #include<iostream> using namespace std; int n,q; const int N 1e510; int a[N]; int main…

ubuntu 20.04 安装 huggingface transformers 环境

1. 安装 cuda 大多数新发布的大语言模型使用了较新的 PyTorch v2.0 版本&#xff0c;Pytorch 官方认为 CUDA 最低版本是 11.8 以及匹配的 GPU 驱动版本。详情见Pytorch官方 如下图&#xff1a; 1.1 下载 cuda cuda 12.1 官方网站&#xff1a; 下载&#xff1a; $wget htt…

Java项目:37 springboot003图书个性化推荐系统的设计与实现

作者主页&#xff1a;源码空间codegym 简介&#xff1a;Java领域优质创作者、Java项目、学习资料、技术互助 文中获取源码 项目介绍 springboot003图书个性化推荐系统的设计与实现 管理员&#xff1a;首页、个人中心、学生管理、图书分类管理、图书信息管理、图书预约管理、退…

01-环境搭建、SpringCloud微服务(注册发现、服务调用、网关)

环境搭建、SpringCloud微服务(注册发现、服务调用、网关) 1)课程对比 2)项目概述 2.1)能让你收获什么 2.2)项目课程大纲 2.3)项目概述 随着智能手机的普及&#xff0c;人们更加习惯于通过手机来看新闻。由于生活节奏的加快&#xff0c;很多人只能利用碎片时间来获取信息&…

spring boot3token拦截器链的设计与实现

⛰️个人主页: 蒾酒 &#x1f525;系列专栏&#xff1a;《spring boot实战》 &#x1f30a;山高路远&#xff0c;行路漫漫&#xff0c;终有归途。 目录 写在前面 流程分析 需要清楚的 实现步骤 1.定义拦截器 2.创建拦截器链配置类 3.配置拦截器链顺序 4.配置拦截…