背景

DaoCloud是国内领先的容器云,我的山寨容器云需要多向他学习。
以前只用过公有云版本,大概把持续集成持续交付那一块弄明白了。最近发现有DaoCloud企业版,简称DEC,看了下截图,感觉很不错,决定也自己搞一个玩。

阅读全文 »

背景

由于流量不够用,又买了个廉价vps,3年只要8刀,64M内存,1G硬盘,250M流量。
由于配置比较差,且机房离大陆远,ping有300多ms,看youtube略卡,只好使用net-speeder

阅读全文 »

要动态更新容器里某些进程的配置,例如nginx。所以需要实时获取配置更新,并同步到容器里的配置文件里,采用的方法是用confd从etcd采集数据,然后更新配置文件的方法。
现有的方案是把confd+nginx放在同一个容器里,虽然能解决问题,但是不够优雅,毕竟一个容器只跑一个进程好。
恰好业务是跑在k8s上,k8s关于pod的文档上说

Containers within a pod share an IP address and port space, and can find each other via localhost. They can also communicate with each other using standard inter-process communications like SystemV semaphores or POSIX shared memory. Containers in different pods have distinct IP addresses and can not communicate by IPC

如果同一个pod里的进程,可以互相看到对方,那么就可以不用修改,直接把现有一个容器拆成两个容器了。

阅读全文 »

背景

quota

k8s的resourcequota的粒度太粗,只能针对namespace级进行quota。
为了实现更细粒度的quota,有必要自制一个admission插件。

ABAC

由于ABAC是在api server启动的时候载入,如果有修改,就必须重启api server才能生效。所以我想做个动态ABAC插件,把权限信息保存到etcd

阅读全文 »

概念

架构图即代码
PlantUML is a open-source tool that allows to quickly write :

  • Sequence diagram,
  • Usecase diagram,
  • Class diagram,
  • Activity diagram, (here is the new syntax),
  • Component diagram,
  • State diagram,
  • Deployment diagram,
  • Object diagram.
  • wireframe graphical interface
阅读全文 »