Kubernetes基础

目录

前言:

[一.Kubernetes 操作管理概述](#一.Kubernetes 操作管理概述)

1.管理操作分类

2.陈述式资源管理方法

2.1基本原理

2.2.基础信息查看命令

2.3.基本资源查看命令

2.4.命名空间操作

2.5.创建Deloyment(副本控制器)

2.6.登陆容器与删除Pod

2.7.扩缩容与删除

二.项目生命周期管理

[1.创建阶段(kubectl create)](#1.创建阶段(kubectl create))

[2.发布阶段(kubectl expose)](#2.发布阶段(kubectl expose))

[3.更新阶段(kubectl set)](#3.更新阶段(kubectl set))

[4.回滚阶段(kubectl rollout)](#4.回滚阶段(kubectl rollout))

[5.删除阶段(kubectl delete)](#5.删除阶段(kubectl delete))

三.发布策略

四.声明式资源管理方法

1.基本原理

2.查看与解释配置清单

3.修改资源配置清单并应用

4.删除资源配置清单

总结

前言:

今天我将分享关于k8s的相关基础命令操作、项目生命周期管理、发布策略,以及声明式资源管理方法。

一.Kubernetes****操作管理概述

1.管理操作分类

Kubernetes 的管理操作分为两大类:
陈述式(命令式)管理方法
声明式(配置清单式)管理方法

2.陈述式资源管理方法

2.1基本原理

Kubernetes 集群资源管理的唯一入口是通过调用 apiserver 的接口。
kubectl 是官方 CLI 命令行工具,用于与 apiserver 通信,将用户命令转化为 apiserver 能识别的
请求,实现集群资源管理。
查看 kubectl 命令大全:

对资源的 " 增、删、查 " 操作较方便,但 " 改 " 操作相对复杂

2.2.基础信息查看命令

集群与版本信息:

命令自动补全与版本查看:

2.3.基本资源查看命令

  • n 指定命名空间
  • o 指定输出格式
    -- all - namespaces :显示所有命名空间
    -- show - labels :显示所有标签
  • l app=nginx :筛选指定标签的资源
    例如:

2.4.命名空间操作

2.5.创建Deloyment(副本控制器)

2.6.登陆容器与删除Pod

2.7.扩缩容与删除

二.项目生命周期管理

项目的生命周期包括:
创建 发布 更新 回滚 删除

1.创建阶段(kubectl create

2.发布阶段(kubectl expose


service类型:

端口类型:
● port
port 是 k8s 集群内部访问 service 的端口,即通过 clusterIP: port 可以从 Pod 所在的 Node 上访问到service
● nodePort
nodePort 是外部访问 k8s 集群中 service 的端口,通过 nodeIP: nodePort 可以从外部访问到某个
service
● targetPort
targetPort 是 Pod 的端口,从 port 或 nodePort 来的流量经过 kube-proxy 反向代理负载均衡转发到后端 Pod 的 targetPort 上,最后进入容器
● containerPort
containerPort 是 Pod 内部容器的端口, targetPort 映射到 containerPort
查看网络状态与服务端口

访问日志:

3.更新阶段(kubectl set

4.回滚阶段(kubectl rollout)

5.删除阶段(kubectl delete)

三.发布策略

金丝雀发布( Canary Release
Deployment 控制器支持自定义控制更新过程中的滚动节奏,如 " 暂停 (pause)" 或 " 继续 (resume)" 更新操作。比如等待第一批新的Pod 资源创建完成后立即暂停更新过程,此时,仅存在一部分新版本的应用,主体部分还是旧的版本。然后,再筛选一小部分的用户请求路由到新版本的Pod 应用,继续观察能否稳定地按期望的方式运行。确定没问题之后再继续完成余下的Pod 资源滚动更新,否则立即回滚更新操作。这就是所谓的金丝雀发布。
注意:
这里还有滚动发布,灰度发布,蓝绿发布,以及重建发布,可以自行了解。

四.声明式资源管理方法

1.基本原理

适合于对资源的修改操作
声明式资源管理方法依赖于资源配置清单文件对资源进行管理
资源配置清单文件有两种格式:yaml (人性化,易读), json (易于 api 接口解析)
对资源的管理,是通过事先定义在统一资源配置清单内,再通过陈述式命令应用到 k8s 集群里
语法格式: kubectl create/apply/delete -f xxxx.yaml

2.查看与解释配置清单

3.修改资源配置清单并应用

4.删除资源配置清单

陈述式删除:

声明式删除:

总结:

今天主要是讲解了关于Kubernetes的基础命令、项目生命周期管理、发布策略以及声明式资源管理,需要注意的是,声明式资源管理需要我们对yaml文件具有一定的认识和编写能力,希望对读者们有所帮助!

相关推荐
文言一心16 小时前
基于 Docker + Docker Compose 实现一键部署(单节点部署场景下轻量、易维护、可一键启停)
运维·docker·容器
守护砂之国泰裤辣17 小时前
Windows+docker下简单kafka测试联调
java·运维·spring boot·docker·容器
释怀不想释怀17 小时前
Docker(常见命令)
docker·容器·eureka
Mr_sun.17 小时前
Day01——微服务服务注册与发现
微服务·云原生·架构
hanyi_qwe17 小时前
K8S网络和基本命令 【 K8S (二)】
网络·容器·kubernetes
Zsr102317 小时前
Rancher:一站式Kubernetes管理平台,让容器运维更简单
运维·kubernetes·rancher
叽里咕噜怪18 小时前
Pod的详解与进阶
运维·容器·kubernetes
酒醉的胡铁18 小时前
Docker Desktop 数据迁移完整流程(Windows 10/11 x64)
windows·docker·容器
小北方城市网18 小时前
第 6 课:云原生架构终极落地|K8s 全栈编排与高可用架构设计实战
大数据·人工智能·python·云原生·架构·kubernetes·geo