k8s 基础入门

1.namespace

k8s中的namespace和docker中namespace是两码事,可以理解为k8s中的namespace是为了多租户,dockers中的namespace是为了网络、资源等隔离

2.deployment

kubectl create #新建

kubectl aply #新建 更新

升级:

滚动升级,新版pod逐步替代老pod,用户无感知

两种升级方式:

kubectl aply

kubectl set image

#查看升级步骤

kubectl describe deployment pod名字

应用发布失败回滚

kubectl rollout history deployment/web(资源名称) #查看历史版本

kubectl rollout undo deployment/web(资源名称) #回滚上一个版本

kubectl rollout undo deployment/web(资源名称) --to-revision=2 # 回滚指定版本

扩缩容

replicas参数控制pod副本数量

1.修改yaml的replicas值,再apply

2.kubectl scale deployment web --replicas=10

应用下线

kubctl delete deploy/web(资源名称)

kubctl delete svc/wed

应该项目部署最少需要:deployment和service两个资源

deployment负责应用的部署、扩缩容、升级回滚

service负责连接路由,端口映射

3.pod

pod是k8s创建和管理的最小单元

一个pod由一个容器或者多个容器组成

一个Pod可以理解为一个应用实例,提供服务

Pod中容器始终部署在一个Node上

Pod中容器共享网络、存储资源

查看一个pod中有几个容器:

kubectl get pods pod名 -o jsonpath={.spec.containers\*.name}

kubectl get po -n tidb-cluster结果中,READY右侧是pod中容器数,左侧是启动的容器数

多个容器时,主容器遵循一个容器一个应用程序规则

pod.yaml方式创建pod,这种方式实际使用比较少,因为无法管理,无法扩缩容等等,通常通过deployment方式创建

pod.yaml:和deployment中的容器配置字段相同

4.service

端口转发、负载均衡

kubelet get ep

#查看service

kubelet get svc

集群内部指的是集群里的所有node和pod可以访问ClusterIP,TCP/IP第四层的转发

NodePort,可以集群外访问,端口默认生成,30000-32767

ss -antp | grep port号

k8s会请求底层云平台(阿里云,腾讯云、aws)上的负载均衡器(LB),将每个Node(IP+prot)作为后端添加进去,自建的云平台无法适配

5.Ingress

未弥补NodePort不足而生,实现基于域名的负载均衡转发

NodePort存在不足:

1.一个端口只能一个服务使用,端口需要提前规划

2.只支持4层负载均衡

用户访问的是ingress-controller

ingress是基于service创建的一组规则

kubectl get ingress 查看规则

相关推荐
AR_xsy21 小时前
k8s随笔-cordon排水
云原生·容器·kubernetes
要开心吖ZSH1 天前
测试环境 K8s 502 故障复盘:被 ClusterIP 表象误导,最终定位 kube-proxy 规则缺失
云原生·容器·kubernetes·k8s·502 bad gateway·kube-proxy
纵道软件1 天前
使用 Docker 构建自定义 SeaTunnel Web 服务镜像
前端·docker·容器
云烟成雨TD1 天前
Micrometer 系列【59】统一观测:Spring Boot 集成指南
spring boot·云原生·链路追踪
阿里云云原生2 天前
智能体构建与进化——Agent 开源开发者沙龙·广州站精彩回顾 & PPT 下载
云原生·agent
阿里云云原生2 天前
阿里云联合 Datadog,补齐 Go 可观测性最后短板
云原生·go
qq_452396232 天前
第十二篇:《Istio 生产环境最佳实践与排错指南》
云原生·php·istio
AAA@峥2 天前
K8s 流量入口管理|Ingress 核心原理 + ingress-nginx 部署 + 生产实战案例合集
nginx·容器·kubernetes
Henry-SAP2 天前
SAP MRP类型如何影响计划订单生成
人工智能·云原生·sap·erp
GlueNa2SiO32 天前
10-Docker生产环境部署与K8s入门
笔记·学习·docker·容器·kubernetes