王希刚 发布于 10月17, 2017

浅谈Linux服务管理器Systemd

近年来,Linux系统的init进程经历了两次重大演进,传统的sysvinit已逐渐淡出了历史的舞台,新秀Upstart和Systemd陆续走上了舞台,鉴于现在越来越多的Linux发行版均采纳了systemd,并且对于软件开发人员和系统管理员经常用到,就抽时间学习了下systemd的基本原理及使用。仅仅了解systemd的一个表面和大家分享下:)

阅读全文 »

康凯 发布于 10月13, 2017

Stream Replication in PostgreSQL

0x00 POSTSTART

PostgreSQL 是一个开源的关系型数据库服务器,有着极其丰富的数据类型的支持,并且支持对数据类型进行扩展。本文介绍PostgreSQL的基本用法和流复制(stream replication)功能。

阅读全文 »

籍鑫璞 发布于 10月13, 2017

kubernetes资源概览接口的研究

背景

借鉴以前openstack调度的经验,单纯根据基础资源(如cpu、memory等使用量)来计算机房资源的剩余情况会有偏差,有时候剩余资源满足flavor并不一定能在node成功创建虚拟机,因为openstack的调度算法并不是单纯根据资源来筛选那么简单。对于kubernetes来说,pod好比虚拟机,因为scheduler有很多算法来筛选出最合适的node,所以我们并不能单纯通过计算cpu、memory来判断某个pod是否能创建成功。

现有的k8s并没有一个类似的模块,因此,我们需要基于现有k8s的机制实现一个满足我们需求的、更灵活的子系统–-资源统计接口,能够在增加应用副本的时候,提前告诉用户该扩容的过程是否能够完成,如果可以完成再最终创建。

阅读全文 »

高广鹏 发布于 09月04, 2017

Makefiles for Golang

make是一个功能强大的build工具,但学习成本也比较高。幸运的是Go的工具链已经帮我们做了很多事情,大大降低了编写Makefile的难度,这对于我来说是个好消息。

阅读全文 »

王希刚 发布于 08月28, 2017

etcd入门篇-集群搭建及基本使用

etcd介绍

etcd用于共享配置和服务发现的分布式,一致性的kv存储系统,当前的最新版本是3.2.6

虽然在etcd之前还有许多提供共享配置和服务发现的系统,如zookpeer,consul。但是在一致性协议的理解,安全,并发控制,可扩展性及大规模集群使用上etcd相比占很大优势。

阅读全文 »

籍鑫璞 发布于 08月26, 2017

Tensorflow on Kubernetes

Tensorflow现状

Tensorflow作为深度学习领域逐渐成熟的项目,以其支持多种开发语言,支持多种异构平台,提供强大的算法模型,被越来越多的开发者使用。但在使用的过程中,尤其是GPU集群的时候,我们或多或少将面临以下问题:

阅读全文 »

许四两 发布于 08月21, 2017

如何优雅的升级内核

大家都知道linux最核心的组件就是kernel:“内核”,有的时候修改内核代码来满足一些功能,有时候需要使用比较新的版本的一些特性,这时候就需要升级内核。
本文和大家聊聊如何优雅的升级内核。

阅读全文 »