批任务处理工具shell基本认识shell 是一个用于和 linux 内核交互的工具,通常用来编写各种自动化脚本。 shell 有两种模式,交互式 和 脚本式,我们主要谈论脚本式。 shell 很强大,我认为强大来源于三方面: 脚本语言,开发方便 环境适应性非常非常广 能够粘合各类工具 shell 也有一些问题,我认为主要在这两方面: 编程范式和现代高级语言有较大差异 (几乎是纯命令式编程,且语言风格与其 2022-11-23 linux shell batch ansible 批任务 批处理
常规的charts编写方式背景在使用了 k8s 作为基础设施之后,就需要关心 如何管理部署,最原始的清单管理方式在 多环境 下就开始失效了,这个时候可以用 customize , 相当于有一个 base 的清单,不同环境的各自修改自己的,在部署前进行合并覆盖。 但如果你的应用更加复杂,拥有好几个服务,这时用清单管理就不太方便了,而用 helm charts 就是一个不错的方式。 helm chartshelm 的使用可以参 2022-11-22 devops helm k8s charts template
简单搞一波混沌测试背景最近在做提升私有部署稳定性的事,做了服务性能压测、磁盘压测等工作,但依然不太敢相信服务的稳定性,主要是因为私有部署时,服务除了问题要进行 debug 实在是太难了,所以不论为稳定性付出多少努力都是有道理的。 要提升服务的稳定性,需要从两个维度下手: 服务本身的质量 基础设施的稳定性 前者,一般通过 手工测试、单元测试、接口测试、e2e测试、压测 四种方式保证,其中,手工测试是最常用的;单元 2022-11-21 chaos 混沌测试 质量保证
sharecard是什么?背景偶尔有一些社群里会每天分享一些带有金句的图片,有些是正能量的,有些是情感抒发的等等。 类似于这样: 从实现上来看,很多都是由 设计 / 运营 同学制作一个 ps / sketch 模板,然后每天修改其中的文字和图片。 我也想每天早上看到这种能激活人,让人元气满满的图片,甚至希望能发给家人们,让他们也元气满满。但我懒,不想每天占用注意力去制作图片,于是想弄一个自动生成分享卡片的工具…… 简单展 2022-11-16 sharecard obsidian
简单的集群日志采集方案背景当一个程序运行时,为了掌握程序的运行情况,我们需要对程序进行日志采集。无论是传统的机器部署,还是基于 k8s 的服务部署,日志采集的整体逻辑是一样的: ① 日志落盘 ② 日志采集 ③ 日志处理 ④ 日志存储 ⑤ 日志展示 ⑥ 日志归档 本文,我们一起搭建一套简单的日志采集体系。 日志流程日志落盘 传统部署 传统服务运行时,可以通过将日志写到一个目录下的文件中。 TODO: 跑通一个日志库的 2022-11-12 operation 云原生 k8s log 日志 elk efk
redis实验环境搭建背景redis 作为一个非常非常常用的缓存中间件,几乎应用于市面上 90% 以上的互联网公司。我们在学习 redis 时,需要环境来做实验,因此,记录搭建一下 redis 的环境,用作 handbook。 项目本地的 redis 搭建直接参考 redis-instances 即可,以下是项目的简介: 说明当我想要在本地用 redis cluster 做测试时,自然而然想到起个 docker ,但在 2022-11-11 redis redis-cluster 实验 环境
nfs、localpath作为k8s-storage-class背景k8s 作为一个容器调度和管理平台,在无状态的应用调度上有着非常强大的能力。如果我们希望有状态服务也能在 k8s 中运行,那么,在存储上,就需要使用 storage class。 localpath当我们使用 k3s 时,默认会提供 localpath 的 storage class。 如果要在 k8s 上安装,可以这么操作 拉取资源清单 1wget https://raw.githubus 2022-11-11 云原生 k8s k3s nfs 存储 storage
给sshw增加scp能力背景运维侧的工作中,非常频繁地使用 terminal,经常需要往服务器上拷贝文件,或者把服务器上文件拿到本地。 以往是直接使用 ssh user@xx.xx.xx.xx 的方式登录机器终端,但记住 ip 是不容易的,因此使用了 ssh con 2022-11-07 terminal devops scp ssh sshw
性能工程的储备知识压测需要很多的储备知识,例如: 基础设施层 硬件(cpu、disk、mem) 网络(tcp/ip、丢包、抓包、routes) 操作系统 容器、容器调度平台(docker、containerd、k8s、helm、kubectl) 云平台 (熟悉阿里云控制台) 基础服务层 关系数据库 表结构设计 索引原理及命中分析 explain及执行计划优化 死锁日志排查 (将来)数据库分表设计及方案 nos 2022-11-06 性能 压测 工具
关于压测本身的梳理整体分类目前来看,压测可以分为这四类: 业务无关的中间件压测 业务有关的中间件压测 基于 http 的业务压测 其他类型的业务压测 业务无关的中间件压测为什么要做?一个业务系统中,会使用到很多中间件,例如 kafka、mongodb、mysql、redis、etcd 等等,往往这些中间件都承载着非常重要的职责,有些是作为 数据存储/管理,有些作为 消息传递,有些作为 状态维护,因此,这些中间件 2022-11-06 性能 压测