news 2026/4/16 15:39:36

k8s-应用部署和组件及常用命令(2)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
k8s-应用部署和组件及常用命令(2)

、相关组件介绍:

node是k8s的集群节点,和实际的机器对应

pod是应用容器,不同的应用部署在不同的pod中,k8s协调资源,将pod部署到集群中的node节点上(非master节点)。

同时pod又是挂在namespace下面的,命名空间之间互相隔离。

pause 管理多个应用容器:搭建k8s集群的时候有一个镜像名字就是 registry.k8s.io/pause:3.9

label 大规模管理pod

volume: 挂载应用数据,应用产生的数据(如日志)和应用配置数据(如configMap)

deployment : 应用部署管理:rs副本管理

service/ingress: 应用访问,对外开放tcp、http、https

flannel: 节点间的网络访问的解决方案。我们部署时采用的这个,也有其他的

2、常用操作指令

kubectl -h 查看命令信息:

image

具体命令的使用和参数也可以使用 kubectl 命令 -h 查看

2.1 get 查看

kubectl get -h

查看资源:get

查看node:

kubectl get nodes

查看命名空间:

kubectl get ns

查看pod:

kubectl get pods -A 查看所有命名空间的pod

kubectl get pods -n 命名空间 查看指定命名空间的pod

kubectl get pods -n kube-system 查看kube-system命名空间的pod

2.2、创建pod的方式

1.命令模式 run

kubectl run -h` 查看命令使用

kubectl run NAME --image=image [--env="key=value"] [--port=port] [--dry-run=server|client] [--overrides=inline-json]

[--command] -- [COMMAND] [args...] [options]

我们使用之前自己做的那个nginx镜像来创建一个nginx。

kubectl run my-nginx --image=k8s-harbor.taoyao.com/nijunyang/my-nginx:1.29.1

image

kubectl describe pod my-nginx 查看my-nginx 详细信息

kubectl logs my-nginx 查看my-nginx 日志

kubectl exec -it my-nginx -- bin/bash 进入容器内部进行交互操作 进入容器之后curl localhost 可以看到nginx的页面内容 exit 退出容器内部交互

kubectl get pods 不指定命名空间,默认使用是default

kubectl get pods -o wide 输出一些扩展信息

image

这里有个ip,这个ip就是这个pod在k8s中的ip,去到k8s的其他节点都能访问:curl 10.244.1.2

image

2.yaml资源清单方式

kubectl get pod my-nginx -o yaml 以yaml方式查看资源信息,,这个是一个实际的状态而k8s就是负责资源预期状态到实际状态。

kubectl run my-nginx --image=k8s-harbor.taoyao.com/nijunyang/my-nginx:1.29.1 --dry-run=client -o yaml 获取这个资源创建的预期状态,--dry-run 不会实际执行。

image

kind: Pod:说明这个 YAML 文件定义的是一个 Pod 资源

kubectl run my-nginx --image=k8s-harbor.taoyao.com/nijunyang/my-nginx:1.29.1 --dry-run=client -o yaml > nginx.yaml 把内容写到资源清单文件中去,用这个文件来创建资源

kubectl apply -f nginx.yaml 以资源清单方式创建资源

2.3 deployment 应用部署管理器

deployment 应用部署管理器,让应用向预期状态靠近,比如 RS 副本管理,pod数量少了,就会自动帮你启动到设置数量。

创建 deployment

命令方式:kubectl create deployment

kubectl create deployment NAME --image=image -- [COMMAND] [args...] [options]

kubectl create deployment my-nginx-deploment --image=k8s-harbor.taoyao.com/nijunyang/my-nginx:1.29.1

image

pod和deployment 还有rs 都创建好了

名字也有层级关系:deployment名字-RS名字-pod名字

资源清单方式:

kubectl create deployment my-nginx-deploment --image=k8s-harbor.taoyao.com/nijunyang/my-nginx:1.29.1 --dry-run=client -o yaml > my-nginx-deploment.yaml 把内容写到资源清单文件中去,用这个文件来创建资源

image

replicas 副本数改成2

kubectl apply -f my-nginx-deploment.yaml

直接就启动了两个pod

image

2.4 资源对象扩缩容:

edit:直接在现有的资源上修改属性

scale:直接动态调整数量

kubectl edit deployments.apps my-nginx-deploment 和vim操作一样 i 编辑模式 :wq 退出保存

image

修改为三个,保存之后k8s自动给我们调整为了三个

image

kubectl scale [--resource-version=version] [--current-replicas=count] --replicas=COUNT (-f FILENAME | TYPE NAME)

[options]

kubectl scale deployment my-nginx-deploment --replicas 5 设置为5个

image

基本也就差不多了,其他资源的创建方式也差不多,命令和yaml文件清单,推荐用文件方式。多使用帮助信息看看,再加上问AI,就差不多了

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 10:42:52

50、Linux NFS 网络文件系统全解析

Linux NFS 网络文件系统全解析 1. NFS 常见问题及解决办法 在使用 NFS 时,可能会遇到一些常见问题,下面为你详细介绍并提供解决方法。 - 主机名/IP 配对错误 :服务器对主机名/IP 配对的认知可能不正确,这可能是由于 /etc/hosts 文件或域名系统(DNS)表中的错误导致…

作者头像 李华
网站建设 2026/4/16 10:42:32

Linux编辑器—vim的使用

本期来讲解Linux中常用且高效的编辑器vim的基本使用和指令操作 目录 一、vim的主要三种工作模式 1.命令模式(Command Mode) 2.插⼊模式(Insert mode) 3.底行模式(Last Line Mode) 二、vim的基本操作 三、vim命令模式下的命…

作者头像 李华
网站建设 2026/4/15 15:24:56

STM32F103C8T6 + SI24R1实现2.4G通信

原理图:SPI时序可以看的出来,SCK空闲时低电平,第一个跳变采样,高位先行,8Bit,HAL库可以这样配置宏定义:#define MY_RF_CH 69 #define RX_MODE 0 #define TX_MODE 1#define SI24R1_CSN_LOW HAL_G…

作者头像 李华
网站建设 2026/4/15 18:24:38

Notepad++紧急更新,且是两个版本,究竟修复了什么

开源文本编辑器 Notepad 接连发布了 v8.8.8/v8.8.9 更新,修复了更新组件 WinGUp 在对下载文件签名和证书校验不够严格的问题。 上月,Notepad 爆出了安全漏洞:在安装了 Notepad 的机器上,黑客劫持网络后,利用自动更新机…

作者头像 李华
网站建设 2026/4/16 14:02:18

MySQL 的 MVCC(多版本并发控制)详解

MVCC(Multi-Version Concurrency Control,多版本并发控制)是 MySQL InnoDB 存储引擎实现事务隔离级别的核心机制,其核心目标是在不加锁(或减少加锁)的情况下,实现读写并发,同时保证事…

作者头像 李华
网站建设 2026/4/16 1:03:50

Unione Flow Editor 流程节点属性控件事件机制深度解析

Unione Flow Editor 流程节点属性控件事件机制深度解析 在企业级流程编辑器的落地实践中,流程节点的属性配置是承接业务逻辑的核心载体。不同业务场景对属性控件的交互需求往往复杂多变:审批类型切换时需隐藏冗余属性、特定条件下需动态标记必填项、选择…

作者头像 李华