daily note k8s

2023-12-17 19:38
文章标签 云原生 note k8s daily

本文主要是介绍daily note k8s,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1 pod yaml

1.1 metadata
  • metadata.name required pod名称
  • metadata.namespace required pod所属命名空间,默认default
  • metadata.labels[] 自定义标签列表
  • metadata.annotation[] 自定义注解列表
1.2 spec.containers[]
  • spec.containers[].name required 容器名称

  • spec.containers[].image required 容器镜像名称

  • spec.containers[].command[]
    一个pod对应多个container,容器启动命令列表,不指定是打镜像时的启动命令。

  • spec.containers[].volumesMounts[]
    挂载到容器内部的存储卷配置,定义好的volumes

  • spec.containers[].ports

  • spec.containers[].env

  • spec.containers[].resource

  • spec.containers[].livenessProbe
    方式: exec、httpGet、tcpSocket

1.3 spec.nodeSelector

与node label 配合使用,调度到复合条件node

1.4 spec.restartPolice

默认always

1.5 spec.volumes
  • volume和volumeMounts
    定义(大小…)和使用?
  • spec.volumes[].emptyDir
    与pod生命周期相同的临时目录,值为空对象emptyDir:{}
  • spec.volumes[].configMap
1.6 更新策略
  • deployment:rollingupdate(默认)、recreate 先删后建
    maxUnavailable:比例或最大值,越小更新越平滑
    maxSurge:比例或最大值,越大副本更新速度越快
    n. surge 浪涌、飞涨
    注:标签选择器,尽量不更新,旧pod孤立不受控制
  • daemonset:ondelete(默认) 删除才更新,手动升级 、rollingupdate
  • statefulset:rollingupdate(默认)、ondelete、partitioned 分区升级

2 service account

  • 对象:pod里的进程使用
  • 轻重:创建轻量级,user落库重
  • 范围:user全局性,service account 属于命名空间
  • 目录:挂载在pod中所有容器指定目录/var/run/secrets/kubernetes.io/serviceaccount
  • 作用:确保k8s集群安全,提供pod访问api server身份鉴权
  • 内容:token、ca.crt、namesspace
  • secret 对象:访问api server的secret、下载镜像secret(库一般insecure模式,为空;ranchar加secret对象包含用户名密码)
  • ocp:cluster-api 下载kubeconfig;读写权限,scc;nfs 腾讯云 pvc;router到负载均衡

3 api server授权

授权策略-authorization policy

3.1 ABAC(attribute-based access control)

k8s 1.6前默认授权模式
配置复杂、修改需重启api server

3.2 webhook

自定义授权模式

3.3 node

与应用授权无关,自身安全增强

3.4 RBAC(role-based access control)
3.4.1 k8s 1.6后授权模式,优势:
  • 资源、非资源权限完整覆盖
  • 简单,通过几个api对象即可完成
  • 可在运行时调整,无需重启api server
3.4.2 资源对象
  • role/rolebinding
    范围:命名空间
    role:一组权限的集合
    rolebinding:角色绑定到目标主体,目标主体有user、group、serviceaccount
  • clusterrole/clusterrolebinding
    范围:集群级别

4 pod probe

4.1 定期执行
4.2 层级:与image、ports同级
    livenessProbe:tcpSocket:port: 80initialDelaySeconds: 15periodSeconds: 20
4.3 pod ip 自动获取?
4.4 配置方式

ExectAction:执行命令,返回0健康
TCPSocketAction:容器ip、端口号能建立tcp链接健康
HTTPGetAction:容器ip、端口号、路径调用get,[200,400)健康

4.5 参数

initialDelaySeconds:启动容器首次健康检查时间,单位s
timeoutSeconds:超时时间,单位s

4.6 类型

LivenessProbe:判断pod running状态,决策是否重启,结果是可用
ReadnessProbe:判断pod ready状态,决策是否隔离可用,结果是停用
StartupProbe:有且仅有一次,例如链接远程网络,启动慢

这篇关于daily note k8s的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/505591

相关文章

90、k8s之secret+configMap

一、secret配置管理 配置管理: 加密配置:保存密码,token,其他敏感信息的k8s资源 应用配置:我们需要定制化的给应用进行配置,我们需要把定制好的配置文件同步到pod当中容器 1.1、加密配置: secret: [root@master01 ~]# kubectl get secrets ##查看加密配置[root@master01 ~]# kubectl get se

K8S(Kubernetes)开源的容器编排平台安装步骤详解

K8S(Kubernetes)是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。以下是K8S容器编排平台的安装步骤、使用方式及特点的概述: 安装步骤: 安装Docker:K8S需要基于Docker来运行容器化应用程序。首先要在所有节点上安装Docker引擎。 安装Kubernetes Master:在集群中选择一台主机作为Master节点,安装K8S的控制平面组件,如AP

【Kubernetes】K8s 的安全框架和用户认证

K8s 的安全框架和用户认证 1.Kubernetes 的安全框架1.1 认证:Authentication1.2 鉴权:Authorization1.3 准入控制:Admission Control 2.Kubernetes 的用户认证2.1 Kubernetes 的用户认证方式2.2 配置 Kubernetes 集群使用密码认证 Kubernetes 作为一个分布式的虚拟

828华为云征文|华为云Flexus X实例docker部署rancher并构建k8s集群

828华为云征文|华为云Flexus X实例docker部署rancher并构建k8s集群 华为云最近正在举办828 B2B企业节,Flexus X实例的促销力度非常大,特别适合那些对算力性能有高要求的小伙伴。如果你有自建MySQL、Redis、Nginx等服务的需求,一定不要错过这个机会。赶紧去看看吧! 什么是华为云Flexus X实例 华为云Flexus X实例云服务是新一代开箱即用、体

(南京观海微电子)——GH7006 Application Note

Features ⚫ Single chip solution for a WXGA α-Si type LCD display ⚫ Integrate 1200 channel source driver and timing controller ⚫ Display Resolution: ◼ 800 RGB x 480 ◼ 640 RGB x 480 ⚫ Display int

云原生之高性能web服务器学习(持续更新中)

高性能web服务器 1 Web服务器的基础介绍1.1 Web服务介绍1.1.1 Apache介绍1.1.2 Nginx-高性能的 Web 服务端 2 Nginx架构与安装2.1 Nginx概述2.1.1 Nginx 功能介绍2.1.2 基础特性2.1.3 Web 服务相关的功能 2.2 Nginx 架构和进程2.2.1 架构2.2.2 Ngnix进程结构 2.3 Nginx 模块介绍2.4

用Cri-O,Sealos CLI,Kubeadm方式部署K8s高可用集群

3.6 Cri-O方式部署K8s集群 注意:基于Kubernetes基础环境 3.6.1 所有节点安装配置cri-o [root@k8s-all ~]# VERSION=1.28[root@k8s-all ~]# curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable.repo https://download.opensu

chapter06 面向对象基础 知识点Note

文章目录 前言类的设计 属性和行为对象的内存解析 (堆 栈 方法区)类的成员之一 变量(属性) field类的成员之二 方法 method对象数组方法重载 overload可变个数的形参 语法糖方法的值传递机制递归关键字package importMVC设计模式import导入面向对象特征之一 封装类的成员之三 构造器JavaBeanUML类图 前言 ` 面向对象封装 面向

培训第九周(部署k8s基础环境)

一、前期系统环境准备 1、关闭防火墙与selinux  [root@k8s-master ~]# systemctl stop firewalld[root@k8s-master ~]# systemctl disable firewalldRemoved symlink /etc/systemd/system/multi-user.target.wants/firewalld.servi

k8s 存储(PV、PVC、SC、本地存储、NFS)

存储持久化相关三个概念: PersistentVolume (PV) 是对具体存储资源的描述,比如NFS、Ceph、GlusterFS等,通过PV可以访问到具体的存储资源;PersistentVolumeClaim (PVC) Pod想要使用具体的存储资源需要对接到PVC,PVC里会定义好Pod希望使用存储的属性,通过PVC再去申请合适的存储资源(PV),匹配到合适的资源后PVC和PV会进行绑定