摘要:
在敏捷开发的时代, 快速的编码, code review, 测试, 部署, 是提升程序员效率的关键。 同时在基础工具完备的如今, 我们甚至无需过多的操作就可以轻松实现上述步骤, 本文就以gitlab为例, 分享一下golang项目结合gitlab如何实现自动化CI。 在gitlab中执行CI, 需要 阅读全文
摘要:
以下大部分来自于k8s document, 笔者只是总结归纳, 解释不足的地方请参阅相关文档 Intention Non sustainable way to customize Kubernetes Fork & Sending PRs to upstream without extensibil 阅读全文
摘要:
对于kubernetes中不存在的资源类型,我们可以通过自定义资源的方式进行扩展,首先创建customresourcedefinition对象定义资源及其schema,然后就可以创建自定义的资源了,但是此时定义的资源是不具备生命周期的,无法在创建或销毁的过程中自动执行一些操作,例如replicaSe 阅读全文
摘要:
dashboard架构主要由一个API handler 和 五个manager构成: API handler用来处理来自客户的http请求,不同的path路由到不同的的handler处理,使用的是go restful库, 五个manager是ClienManager, AuthManager, Se 阅读全文
摘要:
前言 ingress是一种可以暴露k8s集群内部service的方式,用户编辑配置文件定义一个ingress资源即可实现外部网络访问内网service。 ingress controller是来管理所有的Ingress的对象,ingress controller内部其实是一个nginx的容器,当in 阅读全文
摘要:
本博客是学习慕课网课程 "用iptables搭建一套强大的安全防护盾" 整理而成 iptables相当于在ip层挂载一个hook point对用户进行控制 组成: 四张表+ 五条链(hook point) + 规则 四张表: filter表, nat表, mangele表, raw表 默认操作的是f 阅读全文
摘要:
本文将会介绍如何使用docker打包一个golang编写的应用程序,最终的产物就是一个Dockerfile文件,可别小瞧这短短几行代码,涉及的知识点可不少,接下来我们就仔细剖析一下吧。 1.基础镜像选择 第一行是指定一个基础镜像,在此基础上创建我们的镜像,此处使用的是golang:alpine版本, 阅读全文
摘要:
序言 Prometheus是一个开源的监控系统,拥有许多Advanced Feature,他会定期用HTTP协议来pull所监控系统状态进行数据收集,在加上timestamp等数据组织成time series data,用metric name和label来标识不同的time series,用户可以 阅读全文
摘要:
多路复用的适用场合 • 当客户处理多个描述符时(例如同时处理交互式输入和网络套接口) • 如果一个TCP服务器既要处理监听套接口,又要处理已连接套接口 • 如果一个服务器即要处理TCP,又要处理UDP • 如果一个服务器要处理多个服务或多个协议 select/poll/epoll差别 支持的最大描述 阅读全文
摘要:
分布式系统中主要的问题就是如何保持节点状态的一致性,不论发生任何failure,只要集群中大部分的节点可以正常工作,则这些节点具有相同的状态,保持一致,在client看来相当于一台机器。 一致性问题本质就是replicated state machines,即所有结点都从同一个state出发,都经过 阅读全文