kubernetes 初学命令

news2025/2/28 0:59:30

基础命令

kubectl

运维命令常用:

#查看pod创建过程以及相关日志

kubectl describe pod pod-command -n dev

#查看某个pod,以yaml格式展示结果

kubectl get pod nginx -o yaml

#查看pod 详情 以及对应的集群IP地址
kubectl get pods  -o wide

1. kubetcl get  

#查看node节点状态
kubectl get nodes

#查看pods节点状态
kubectl get pods

2.kubectl run 

#kubectl run 命令在 pod 中创建并运行特定的镜像

kubectl run nginx --image=nginx --port 80
 

3.kubectl describe

#看到pod 的详情

kubectl describe pod nginx

4. kubectl delete 

 #kubectl delete 删除pod

kubectl delete pod nginx

 5.kubectl create/apply

kubectl create/apply 命令基于给定的配置文件。该配置文件具有以下特点:
1. 配置文件描述了应用程序最终将达到的 Whatstate
2. 配置文件提供创建资源的模板,可以重复部署。
3. 部署可以像代码一样进行管理。
4. 适用于正式的、跨环境的、大规模的部署。
5. 需要熟悉配置文件的语法才能使用此方法。

vim nginx-deployment.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx
  labels:
    app: nginx
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx
        ports:
        - containerPort: 80

#创建pods

kubectl create -f nginx-deployment.yaml

#删除pods

kubectl delete -f nginx-deployment.yaml

[root@k8s-master ~]# kubectl apply -f nginx-deployment.yaml
deployment.apps/nginx created
[root@k8s-master ~]# kubectl get pods
NAME                    READY   STATUS    RESTARTS   AGE
nginx-d46f5678b-tljff   1/1     Running   0          20s
[root@k8s-master ~]# kubectl delete -f nginx-deployment.yaml
deployment.apps "nginx" deleted

 create apply 之间的区别。

在 kubectl create 命令中,我们指定了一个特定行为,也就是 create ,因此它

是一种更具命令式的方法。

在 kubectl apply 命令中,我们指定系统的目标状态,而不指定一个特定的行为

6.kubectl get pod nginx -o yaml


 #查看某个pod,以yaml格式展示结果

7.kubectl get cs 

#查看健康状态

kubectl get cs

8.kubectl get namespace

 也可指定查看某个命名空间

9.kubectl get namespace default


10.kubectl get all --namespace=kube-system

#用于在 kube-system 命名空间中获取所有资源的详细信息。

 kubectl create namespace ns1
 kubectl delete  namespace ns1

10.kubectl get pods  -o wide

#查看pod 详情 以及对应的集群IP地址

11.kubectl explain pod

#kubectl explain 资源类型 查看某种资源可以配置的一级属性

# kubectl explain 资源类型.属性 查看属性的子属性

kubectl explain pod

kubectl explain pod.spec.containers

namespace

#创建一个namespace 

kubectl create namespace namepase-test
#查看namespace   

kubectl get namespace

#查看namespace  ns

kubectl get ns

#删除namespace

kubectl delete namespace namepase-test

pod

#创建pod

kubectl run nginx --image=nginx:1.17.1 --port=80
#访问pod

kubectl get pod -o wide
 url http://10.244.1.14


Label 

 kubectl run nginx --image=nginx:1.17.1 --port=80

#给pod打标签

kubectl label pod nginx version=1.0
#查看pod的标签

kubectl get pods --show-labels

#更新pod的标签

kubectl label pod nginx version=2.0 --overwrite

#筛选pod的标签

kubectl get pod -l version=2.0 --show-labels

#删除pod标签
kubectl label pod nginx version-

version- 表示删除标签 version 

deployment

#创建namespace 

kubectl delete ns dev
#删除namespace

kubectl create ns dev
#创建deployment  名称叫nginx 
 kubectl create deployment nginx --image=nginx:1.17.1  -n dev
#查看deploymet -n指的是在dev 的名称空间下看
 kubectl get deployment -n dev
#删除deployment
 kubectl delete deploy nginx -n dev
#查看dev 下的deployment和pod,pod随着deployment 删除
 kubectl get deployment,pod -n dev

  • deployment nginx:指定要调整的资源类型(deployment)和资源名称(nginx)。

  • --replicas=4:指定目标副本数,这里是 4

  • 修改其deployment的副本数实现删除

 kubectl scale deployment nginx --replicas=4

 kubectl scale --replicas=0 deployment nginx
 

 server

 kubectl scale deployment nginx --replicas=3

kubectl get pod -o wide
 kubectl delete pod nginx-59975f44cf-8vsg4

 kubectl get pod -o wide
 

 demo1  集群内部访问type=ClusterIP

#暴露端口 type=ClusterIP   这个IP只能集群内部访问 如果需要外部 type=NodePort

 kubectl expose deployment nginx --name=svc-nginx1 --type=ClusterIP --port=80 --target-port=80
#获取service 信息
kubectl get service
#获取service信息 svc 简写
kubectl get svc
#访问集群IP 
curl 10.107.19.254

 demo集群外部访问type=NodePort 

#集群外部访问

 kubectl expose deployment nginx --name=svc-nginx2 --type=NodePort --port=80 --target-port=80

#查看service  注意post 中的32432对应的就是master的端口

kubectl get service
#删除service

kubectl delete  service svc-nginx1



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

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

相关文章

AI 编码 2.0 分析、思考与探索实践:从 Cursor Composer 到 AutoDev Sketch

在周末的公司【AI4SE 效能革命与实践:软件研发的未来已来】直播里,我分享了《AI编码工具 2.0 从 Cursor 到 AutoDev Composer》主题演讲,分享了 AI 编码工具 2.0 的核心、我们的思考、以及我们的 AI 编码工具 2.0 探索实践。 在这篇文章中&am…

图扑 HT for Web 总线式拓扑图的可视化实现

在图形用户界面(GUI)设计中,自定义连线技术不仅提升了用户体验,还为复杂数据可视化开辟了新的可能性。该功能点允许用户灵活地在界面元素之间创建视觉连接,使流程图、思维导图和网络拓扑图等信息呈现更加直观和动态。 …

domain 网络安全 网络安全域

🍅 点击文末小卡片 ,免费获取网络安全全套资料,资料在手,涨薪更快 文章目录 1、域的概述 1.1、工作组与域1.2、域的特点1.3、域的组成1.4、域的部署概述1.5、活动目录1.6、组策略GPO 2、域的部署实验 2.1、建立局域网&#xf…

IDEA 2024.1 最新永久可用(亲测有效)

今年idea发布了2024.1版本,这个版本带来了一系列令人兴奋的新功能和改进。最引人注目的是集成了更先进的 AI 助手,它现在能够提供更复杂的代码辅助功能,如代码自动补全、智能代码审查等,极大地提升了开发效率。此外,用…

deepseek-r1-centos-本地服务器配置方法

参考: 纯小白 Centos 部署DeepSeek指南_centos部署deepseek-CSDN博客 https://blog.csdn.net/xingxin550/article/details/145574080 手把手教大家如何在Centos7系统中安装Deepseek,一文搞定_centos部署deepseek-CSDN博客 https://blog.csdn.net/soso67…

mapbox添加自定义图片绑定点击事件,弹窗为自定义组件

一、首先构建根据后端返回的数据构建geojson格式的数据,点位的geojson数据格式: {"type": "FeatureCollection","features": [{"type": "Feature","geometry": {"type": "…

车载DoIP诊断框架 --- 连接 DoIP ECU/车辆的故障排除

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 简单,单纯,喜欢独处,独来独往,不易合同频过着接地气的生活,除了生存温饱问题之外,没有什么过多的欲望,表面看起来很高冷,内心热情,如果你身…

嵌入式开发:傅里叶变换(4):在 STM32上面实现FFT(基于STM32L071KZT6 HAL库+DSP库)

目录 步骤 1:准备工作 步骤 2:创建 Keil 项目,并配置工程 步骤 3:在MDK工程上添加 CMSIS-DSP 库 步骤 5:编写代码 步骤 6:配置时钟和优化 步骤 7:调试与验证 步骤 8:优化和调…

vscode/cursor+godot C#中使用socketIO

在 Visual Studio Code(VS Code)中安装 NuGet 包(例如SocketIOClient),你可以通过以下几种方法: 方法 1:使用dotnet cli 打开终端:在 VS Code 中按下Ctrl 或者通过菜单View -> Terminal打开终端。 导…

应用的负载均衡

概述 负载均衡(Load Balancing) 调度后方的多台机器,以统一的接口对外提供服务,承担此职责的技术组件被称为“负载均衡”。 负载均衡器将传入的请求分发到应用服务器和数据库等计算资源。负载均衡是计算机网络中一种用于优化资源利…

区块链仿真工具SimBlock使用

1. Environment requirements SimBlock 可以在 Windows、MacOS、Ubuntu Linux 或任何支持 Java 的 Unix 平台上运行。 它需要以下版本的 JDK 和 Gradle。 请注意,SimBlock 的仓库中包含 Gradle Wrapper,因此您也可以自动安装 Gradle(我们稍…

面试八股文--数据库基础知识总结(2) MySQL

本文介绍关于MySQL的相关面试知识 一、关系型数据库 1、定义 关系型数据库(Relational Database)是一种基于关系模型的数据库管理系统(DBMS),它将数据存储在表格(表)中,并通过表格…

江协科技/江科大-51单片机入门教程——P[1-3] 单片机及开发板介绍

前言:本节主要的任务是了解一下 51 单片机和所用的普中51开发板。 目录 一、单片机介绍 二、单片机的应用领域 三、STC89C52单片机 四、命名规则 五、单片机内部拆解 六、单片机内部结构图 七、单片机管脚图 八、单片机最小系统 九、开发板介绍 十、开发…

【Uniapp-Vue3】导入uni-id用户体系

在uniapp官网的uniCloud中下载uni-id用户体系 或者直接进入加载,下载地址:uni-id-pages - DCloud 插件市场 进入以后下载插件,打开HbuilderX 选中项目,点击确定 点击跳过 点击合并 右键uniCloud文件夹下的database文件夹&#x…

如何免费使用稳定的deepseek

0、背景: 在AI辅助工作中,除了使用cursor做编程外,使用deepseek R1进行问题分析、数据分析、代码分析效果非常好。现在我经常会去拿行业信息、遇到的问题等去咨询R1,也给了自己不少启示。但是由于官网稳定性很差,很多…

基于 ‌MySQL 数据库‌对三级视图(用户视图、DBA视图、内部视图)的详细解释

基于 ‌MySQL 数据库‌对三级视图(用户视图、DBA视图、内部视图)的详细解释,结合理论与实际操作说明: 一、三级视图核心概念 数据库的三级视图是 ANSI/SPARC 体系结构的核心思想,MySQL 的实现逻辑如下: …

easyexcel和poi同时存在版本问题,使用easyexcel导出excel设置日期格式

这两天在使用easyexcel导出excel的时候日期格式全都是字符串导致导出的excel列无法筛选 后来调整了一下终于弄好了,看一下最终效果 这里涉及到easyexcel和poi版本冲突的问题,一直没搞定,最后狠下心来把所有的都升级到了最新版,然…

取topN不同算法的实现的性能差别

背景 最近在实现一个需求,需要对大量数据中排序出前N,最暴力的方法肯定是直接全量排序。这里很明显是可以不用全量排序的,取前N,我们自然而然可以想到一个算法——堆排序。 一开始自己先写好了一版,后来想起&#xff…

【实战 ES】实战 Elasticsearch:快速上手与深度实践-1.1.2典型应用场景:日志分析、实时搜索、推荐系统

👉 点击关注不迷路 👉 点击关注不迷路 👉 点击关注不迷路 文章大纲 为什么选择Elasticsearch?——典型应用场景深度解析1. 引言2. 日志分析:海量数据的实时洞察2.1 行业痛点2.2 ES解决方案关键技术实现: 2.…

Spring Cloud Alibaba学习 3- Sentinel入门使用

Spring Cloud Alibaba学习 3- Sentinel入门使用 中文文档参考:Sentinel中文文档 一. SpringCloud整合Sentinel 1.1 下载Sentinel-Dashboard Sentinel下载地址:Sentinel-Dashboard 到下载目录,cmd输入 java -jar sentinel-dashboard-1.8…