开始K8S操作
00 分钟
2024-4-7
2024-5-31
type
status
date
slug
summary
tags
category
icon
password
data

概述

Kubernetes 是一个可移植、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化。 Kubernetes 拥有一个庞大且快速增长的生态,其服务、支持和工具的使用范围相当广泛。

K8S操作命令

Pod操作

创建操作

Pod扩缩容

临时修改镜像应用 [docker commit、push]

命名空间

Service【SVC】

作用:通过label将外部流量引入到Pod里面
通常情况下k8s集群内部可以自由访问svc数据,svc通过label指向Pod的label中
外部用户无法访问,通过配置NodePort进行端口映射,才可以访问svc
notion image
SVC的能力是由组件kube-proxy来实现的,转换成iptables规则

SVC创建

方式一:命令方式 -expose
方式二:yaml清单方式 -apply

应用数据

k8s应用数据类型和步骤解析【网图】
notion image
notion image
notion image
notion image
notion image
示例1:emptyDir
Pod madd-emptydir 中两个容器 nginx-web,change-index
共用一个数据卷 nginx-index,每两秒下change-index容器命令修改数据卷index页面信息,查看nginx-web页面会根据change-index容器的修改而变化
示例2:hostPath
下面几种不再赘述

配置管理

示例一:configMap[通过代理svc取根据configMap 访问不同的容器]
示例二:secret

Ingress

Ingress是授权入站连接到达集群服务的规则集合。 从外部流量调度到nodeport上的service 从service调度到ingress-controller ingress-controller根据ingress[Pod]中的定义(虚拟主机或者后端的url) 根据虚拟主机名直接调度到后端的一组应用pod中
notion image
第一层service,用于接收流量
第二次service,用于【分组】分发流量指定pod
ingress需要专门的控制器环境

部署ingress环境

Ingress 属性解读
annotations 注释的信息,表明是什么ingress环境,
对于k8s1.24+ 采用:spec.ingressClassName: nginx
rules:实现根据path的url关键字和svc的绑定
pathType:匹配方式
访问ingres,基于请求头host来进行数据匹配,如果使用IP地址访问必须携带请求头
 

评论