胡伟煌

个人博客

12 Factor

以下主要介绍PaaS平台设计架构中使用到的方法论,统称为12-Factor(要素) 简介 软件通常会作为一种服务来交付,即软件即服务(SaaS)。12-Factor原则为构建SaaS应用提供了以下的方法论: 使用标准化流程自动配置,减少开发者的学习成本。 和操作系统解耦,使其可以在各个系统间提供最大的移植性。 适合部署在现代的云计算平台上,从而在服务器和系统管理方面节省资源。 将开发环......

k8s知识体系

1. k8s知识体系 以下整理了k8s涉及的相关知识体系。 思维导图:k8s体系 2. k8s重点开源项目 大类 小类 项目及链接 简介 🧭 核心调度与资源管理 核心调度器 kube-scheduler 默认调度器,支持亲和性、优先级等策略 批处理调度 Volcano 支持 AI 训练、大数据任务 Gang 调度、队列管理 混部调度 Koordinator 支持......

资源配额

Pod限额(LimitRange) ResourceQuota对象是限制某个namespace下所有Pod(容器)的资源限额 LimitRange对象是限制某个namespace单个Pod(容器)的资源限额 LimitRange对象用来定义某个命名空间下某种资源对象的使用限额,其中资源对象包括:Pod、Container、PersistentVolumeClaim。 1. 为namesp......

资源服务质量

Resource Quality of Service 1. 资源QoS简介 request值表示容器保证可被分配到资源。limit表示容器可允许使用的最大资源。Pod级别的request和limit是其所有容器的request和limit之和。 2. Requests and Limits Pod可以指定request和limit资源。其中0 <= request <=Node......

安全迁移节点

1. 迁移Pod 1.1. 设置节点是否可调度 确定需要迁移和被迁移的节点,将不允许被迁移的节点设置为不可调度。 12345678# 查看节点kubectl get nodes# 设置节点为不可调度kubectl cordon <NodeName># 设置节点为可调度kubectl uncordon <NodeName> 1.2. 执行kubectl drain命令 ......

指定节点调度与隔离

1. NodeSelector 1.1. 概念 如果需要限制Pod到指定的Node上运行,则可以给Node打标签并给Pod配置NodeSelector。 1.2. 使用方式 1.2.1. 给Node打标签 12345678910111213# get node的namekubectl get nodes# 设置Labelkubectl label nodes <node-name>......

Supervisor的使用

1. Supervisor简介 Supervisord 是用 Python 实现的一款的进程管理工具,supervisord 要求管理的程序是非 daemon 程序,supervisord 会帮你把它转成 daemon 程序,因此如果用 supervisord 来管理进程,进程需要以非daemon的方式启动。 例如:管理nginx 的话,必须在 nginx 的配置文件里添加一行设置 daem......

ansible的使用

1. 安装 以centos为例。 1yum install -y ansible 2. 配置 默认配置目录在/etc/ansible/,主要有以下两个配置: ansible.cfg:ansible的配置文件 hosts:配置ansible所连接的机器IP信息 2.1. ansible.cfg 2.2. hosts 1234567891011121314151617181920212223......

confd的使用

confd的源码参考:https://github.com/kelseyhightower/confd 1. confd的部署 以下Linux系统为例。 下载confd的二进制文件,下载地址为:https://github.com/kelseyhightower/confd/releases。例如: 123456789# Download the binarywget https://g......

ceph-fuse的使用

1. 安装ceph-fuse 1yum install -y ceph-fuse 如果安装失败,先执行以下命令,再执行上述安装命令 1234yum -y install epel-releaserpm -Uhv http://download.ceph.com/rpm-jewel/el7/noarch/ceph-release-1-1.el7.noarch.rpm 2. 配置客户端访问的ke......