k8s知识点整体概览

1.k8s文件编写

复制代码
---
kind: 资源名
apiVersion: 版本
metadata:
    名称、命名空间、标签和注解
spec:
    容器

2.生成资源清单模版文件

复制代码
kubectl create <资源类型> <资源名称> [参数] --dry-run=client -o yaml 

参数说明:

参数 说明 示例 必选
<资源类型> 资源类型(如 poddeploymentconfigmap deployment
<资源名称> 资源名称(自定义) my-deployment
[参数] 资源特有参数(如镜像、端口、键值对等) --image=nginx 否(根据资源类型决定)
--dry-run=client 仅生成模板,不提交集群 必选
-o yaml 输出为 YAML 格式 必选

3.查看有哪些资源

复制代码
kubectl create --help

4.查询资源清单怎么编写

复制代码
kubectl explain 资源.一级子项名.二级子项名

5.容器调度

1.基于节点调度

复制代码
spec:
    nodeName: node-0001     # 基于节点名称进行调度

2.基于标签调度

复制代码
基于标签的资源调度,标签可以重复(可标识node节点服务器上的性能,内存等信息)
---
kind: Pod
apiVersion: v1
metadata:
    name: myhttp
    labels:
        app: apache
spec:
    nodeSelector:   #多个标签是逻辑与
        kubernetes.io/hostname: node-002  #node-002节点上的唯一标签
    containers:
        - name: apache
        image: myos:httpd

标签命令

复制代码
# 设置标签
kubectl label <资源类型>/<资源名称> <标签键>=<标签值>

# 给 Pod 添加环境标签
kubectl label pod my-pod env=prod

# 给 Deployment 添加版本标签
kubectl label deployment my-deploy version=1.2.3

# 删除标签
kubectl label 资源类型 资源名称 key值-

6.控制器详解

控制器 适用场景 Pod 管理特点 存储支持 典型用例
Deployment 无状态应用、滚动更新 多副本、动态扩缩容 无(需 PVC) Web 服务、API 网关
DaemonSet 节点级守护进程 每个节点一个 Pod 独立存储(可选) 日志收集、监控 Agent
Job 一次性批处理任务 单次执行,确保成功 支持 PVC 数据迁移、计算任务
CronJob 定时任务 按 Cron 表达式周期性执行 支持 PVC 定时备份、日志清理
StatefulSet 有状态应用 有序启动、稳定网络标识和存储 必须 PVC(隔离数据) 数据库、消息队列
HPA 弹性扩缩容 自动调整副本数 依赖其他控制器 应对流量波动

7.外部服务访问流程

服务名称.名称空间.svc.cluster.local

Ingess资源(配置外部访问的地址,以及转到内部服务地址)------>nginx(请求配置)------>后端

相关推荐
心心喵12 分钟前
[linux] nohup和pm2的区别 进程保活
linux·运维·服务器
YuK.W40 分钟前
Leetcode100: 70.爬楼梯、118.杨辉三角、198.打家劫舍
java·算法·leetcode
这不小天嘛1 小时前
JAVA八股——redis篇
java·开发语言·redis
醉熏的石头1 小时前
Ubuntu 中的编程语言(中)
linux·ubuntu·scala
众人皆醒我独醉2 小时前
Pod 一直 Terminating,死活删不掉?三个凶手,每一个你都意想不到
面试·kubernetes
聚美智数3 小时前
黄历查询-运势查询-国际法定节假日查询-API接口介绍
android·java·数据库
飞翔沫沫情3 小时前
K8s Alloy 采集 Pod 控制台日志
云原生·容器·kubernetes
dddwjzx5 小时前
嵌入式Linux C应用编程入门——信号
linux·嵌入式
Yeats_Liao5 小时前
18:JavaBean简介及其在表单处理与DAO设计模式中的应用-Java Web
java·后端·架构
范什么特西5 小时前
网络代理问题
java·linux·服务器