如何使用 Terraform Provider 提供 Iac 级别的应用
· ☕ 4 分钟
1. Terraform Vs Kubernetes 基础架构即代码(Iac) 基于不可变的基础架构,使用编排工具将基础架构文本化,允许像管理代码一样管理基础设施。 2018 年,我在从事 SaaS 开发,使用 Kubernetes 平台进行部署,这一年 Terraform 很火。2019 年,我开始从事 Kubernetes 的二次开发,才听说 Terraform 。现在网上 Terraform 相关的文档增

现在是云原生最好的时代
· ☕ 4 分钟
1. 钱少事多受人欺 运维部门是成本部门。有个词叫,成本优化。CXO 看到机器的负载这么低,就会想着裁撤机器,能少花就少花点,运维也就来活儿了。优化成本是运维的职责之一。 运维是研发的服务团队。不能够创造营收,就意味着没有话语权,运维在公司的地位可想

Jenkins X 不是 Jenkins ,而是一个技术栈
· ☕ 5 分钟
1. Jenkins X 简介 Jenkins 依靠庞大的插件生态,占据了目前大部分的企业级 CICD 引擎的份额。但在云原生时代,Jenkins 也暴露出很多的问题,单点服务、磁盘存储、内存占用等。 Jenkins X 围绕 Kubernetes,提供了一种更适合云原生时代的 DevOps 方式。Jenkins X 不是 Jenkins

Etcd、Etcdctl 应用实践
· ☕ 3 分钟
1. Etcd 基本介绍 Etcd 是一个分布式 Key/Value 的存储系统,通过分布式锁、leader 选举、写屏障(write barriers) 实现了分布式协作,提供高可用、持久化数据存储和检索服务。 工作原理 每个 Etcd 节点都存储了一份完整的数据,任意时刻至多存在一个主节点。主节点处理所有来自客户

Kubernetes 动态创建 Jenkins Agent 压力测试
· ☕ 7 分钟
前面的文档中,我们利用 Kubernetes 提供的弹性,在 Kubernetes 上动态创建 Jenkins Slave 。本篇文档主要是对 Jenkins 进行大规模构建的压力测试。 1. 集群配置 1.1 Kubernetes 版本 这里使用的是 v1.16.7 1 2 3 4 kubectl version Client Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.7", GitCommit:"be3d344ed06bff7a4fc60656200a93c74f31f9a4", GitTreeState:"clean", BuildDate:"2020-02-11T19:34:02Z", GoVersion:"go1.13.6", Compiler:"gc", Platform:"linux/amd64"} Server Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.7", GitCommit:"be3d344ed06bff7a4fc60656200a93c74f31f9a4", GitTreeState:"clean", BuildDate:"2020-02-11T19:24:46Z", GoVersion:"go1.13.6", Compiler:"gc", Platform:"linux/amd64"} 1.2 节点数量 集群节点总数, 16 个 1 2 3 kubectl get node |grep "Ready" | wc -l 16