Midk9t's Blog

使用Tekton搭建云原生CI流水线

前言 相信对当今开发人员来讲,CI(continuous intergration)已经不是一个陌生的名词了。作为把业务程序化的一线人员,对自己的开发过程进行程序化也是很理所应当的事情。在kubernetes、云原生等概念出现之前,比较流行的做法是使用jenkins来搭建CICD的流水线:代码仓库提交自动触发hook,触发jenkins自动编译与测试等原子化的任务,最后自动部署到SIT、UAT以及生产环境。

Ubuntu 22.04.3 LTS 安装Kubernetes 1.28单节点集群记录

前言 好久没写博客了,这三个月以来一直忙着学习k8s的知识,概念和名词是真的多。。。公司使用红帽提供的OpenShift平台,简单来说就是安全性更高,经过一点封装的k8s,然后我就负责在上面写deployment等manifest进行应用部署,而OpenShift本身则是系统团队负责搭建和维护的,不用应用运维团队关心。

MIT 6.824 Lecture 16课堂及论文笔记

前言 入职应用运维一个月,发现早上、中午都能有半小时左右的空闲时间。目前还没忙碌起来,之前说的找下一门课还没想好,那就不如把6.824剩下的课程看完吧,lab 4就还是先不做了,实在太费时间🤣

MIT 6.824 Lab3B笔记

Lab3B总结 3B的主要目标是给我们基于raft的kvserver增加快照支持,而底层raft的快照我们在2D已经实现了,这次lab的任务就是使用我们的raft底层功能作为支撑,让kvserver能够接受来此底层raft的snapshot install,以及能够在整个raft日志开始变得过大时发送自己状态机作为snapshot给底层raft(因为需要raft将其持久化,以便故障恢复后能发回给上层的kvserver),好让它丢弃之前的日志来自我瘦身。

MIT 6.824 Lab3A笔记

Lab3目标 在顺利完成整个lab2后,我们成功实现了一个基于raft的共享日志库,它是一个日志复制框架,可以把日志可靠地复制到不同节点中,从而实现对日志序列的高可用。在之前的lab2中我们讲到,共识算法的主要作用之一是在无需第三方”arbitrator”介入的前提下,实现一组节点对一组数据达成共识,这一特性使得应用raft的日志集群十分适合用来为分布式系统提供配置相关的数据,如当前leader是谁(leader选举),微服务的真实ip(服务注册发现)等,因为它自身就避免了单点故障,不会因网络分区而引入不正确性。