Xinkun Blog

科学引导思想 技术改变生活

kubernetes入门之kube-proxy实现原理

kube-proxy of kubernetes.

kube-proxy service是一组pod的服务抽象,相当于一组pod的LB,负责将请求分发给对应的pod。service会为这个LB提供一个IP,一般称为cluster IP。 kube-proxy的作用主要是负责service的实现,具体来说,就是实现了内部从pod到service和外部的从node port向service的访问。 举个例子,现在有podA,podB,podC...

docker的网络-Container network interface(CNI)与Container network model(CNM)

Container network interface(CNI) and Container network model(CNM)

Overview 目前围绕着docker的网络,目前有两种比较主流的声音,docker主导的Container network model(CNM)和社区主导的Container network interface(CNI)。本文就针对两者模型进行分别介绍。 Container Networking Interface 概述 Container Networking Interfac...

kubernetes入门之skydns

Skydns of kubernetes.

部署kubernetes dns服务 kubernetes可以为pod提供dns内部域名解析服务。其主要作用是为pod提供可以直接通过service的名字解析为对应service的ip的功能。 部署kubernetes dns服务主要需要两部分。 kubelet 在kubelet中增加启动项,修改 $ vi /etc/kubernetes/kubelet KUBELET_ARGS=...

浅析flannel与docker结合的机制和原理

Analysis of flannel

flannel flannel可以为容器提供网络服务。 其模型为全部的容器使用一个network,然后在每个host上从network中划分一个子网subnet。 为host上的容器创建网络时,从subnet中划分一个ip给容器。 其采用目前比较流行的no server的方式,即不存在所谓的控制节点,而是每个host上的flanneld从一个etcd中获取相关数据,然后声明自己的子网网段...

kubernetes入门之快速部署

Deploy kubernetes.

角色说明 这里主要有三个角色,分别部署不同的服务。 角色 服务 etcd etcd master kube-apiserver/kube-scheduler/kube-controller node ku...

python并发获取snmp信息及性能测试

Get snmp info with python

python & snmp 用python获取snmp信息有多个现成的库可以使用,其中比较常用的是netsnmp和pysnmp两个库。网上有较多的关于两个库的例子。 本文重点在于如何并发的获取snmp的数据,即同时获取多台机器的snmp信息。 netsnmp 先说netsnmp。python的netsnmp,其实是来自于net-snmp包。 python通过一个c文件调用net...

Facebook开源的基于SQL的操作系统检测和监控框架:osquery daemon详解

Analysis of osquery daemon

osqueryd osqueryd(osquery daemon)是可以定期执行SQL查询和记录系统状态改变的驻守程序。 osqueryd能够根据配置手机归档查询结果,并产生日志。 同时也可以使用系统事件的API来记录文件、文件夹的变化,硬件事件,网络事件等等。 osqueryd启动默认读取/var/osquery/osqueryd.conf配置文件。 当然也可以使用osqueryd -...

Facebook开源的基于SQL的操作系统检测和监控框架:osquery Table源码分析

Analysis of Osquery Table

写在前面 上一篇介绍了osquery的一些用法,即如何使用SQL语句查询系统信息。本文就来介绍下这个table是如何定义的,及table中的数据是如何取得的。 本文以uptime和process两张表为例。本文介绍的osquery版本是1.7.6。 uptime uptime主要用来获取系统的启动时间: osquery> select * from uptime; +-----...

Facebook开源的基于SQL的操作系统检测和监控框架:osquery

An introduction of osquery

osquery简介 osquery是一款由facebook开源的,面向OSX和Linux的操作系统检测框架。 osquery顾名思义,就是query os,允许通过使用SQL的方式来获取操作系统的数据。 通过osquery,SQL表可以提供诸如正在运行的进程,已加载的内核模块,已打开的网络连接,硬件事件等等信息。 下载与安装 osquery的安装很简单,在这里可以找到对应的下载。本文使...

snmpwalk高延时问题分析

Snmpwalk Problem Analysis

问题出现 有两台物理机,一台是192.168.1.15,另一台是192.168.1.43。二者的netsnmp版本相同。 使用snmpwalk去访问两台机器,获取tcp重传数(tcpRetransSegs)时,192.168.1.43回复时间非常长。多达140s+,但是相同配置的192.168.1.15只需要30ms。 -bash-4.1# time snmpwalk -v 2C -...