netbox: 数据中心基础设施数据库

简介

netbox 是 DigitalOcean 开源的一个数据中心基础设施数据库,它可以管理 IP 地址和数据中心的各种设备。

原文是这么描述的:

IP address management (IPAM) and data center infrastructure management (DCIM) tool.

它主要管理如下信息:

  1. IP 地址信息:IP 网段,IP 地址,VRF,VLAN
  2. 机架信息:机架可以属于不同团队和机房
  3. 设备信息:设备的型号及设备的放置点
  4. 设备间的连接信息:网络,串口,以及设备间的电力连接情况
  5. 网络接入信息:网络接入商信息
查看详细

Caddy: 自带 HTTPS 的 HTTP/2 服务器

屏幕快照 2016-08-08 下午9.47.36

市面上已经有很多 web 服务器了,比如 Apache,Nginx,lighttpd,为啥又冒出了一个 Caddy

Serve The Web Like It's 2016。Caddy is an alternative web server that is easy to configure and use.

另外,从作者的 FAQ 里可以知道,Caddy 主打的是易用性,并且天生支持 HTTP/2 协议,还支持零配置的 https,所以目标用户就是懒得配置 Nginx 或者 Apache 的管理员或者程序员了。

为啥能零配置支持 https,可以参考官方的说明:https://caddyserver.com/docs/automatic-https… 查看详细

解决多网卡配置一个子网,ping 不通的问题

问题描述

最近有一个使用场景需要两个网卡接入一个子网中,即 eth0: 192.168.1.100, eth1: 192.168.1.101,在 Centos6.5 上测试发现只有一个 IP 能 ping 通,另外一个 IP 无法 ping 通。

原因是在 Centos 6 的内核是 2.6.32,一个网络参数 rp_filter 的默认值被设置成 1,这意味着所有包会经过严格的检查,如果源 IP 地址非法则丢弃这个包。所以抓包会发现能够正常收到 ICMP 的请求包,但是内核不会响应。

内核的说明文档是这么解释的:… 查看详细

使用 slate 编写完美的 HTTP API 文档

前言

slate 是一个让你使用 markdown 写 HTTP API 文档的工具,还能生成漂亮的静态页面。支持 markdown 意味着可以极大程度的提高编写效率,纯文本意味着可以使用代码管理工具 git 管理,review,自动编译和发布。下面将详细介绍如何使用这个工具。

准备工作

slate 需要 ruby2 运行环境,所以先装 ruby,gtt 使用的是 ubuntu 14.04 发行版,其他发行版可能会有些区别。

$ sudo apt-add-repository ppa:brightbox/ruby-ng
$ sudo apt-get
查看详细

centos 7 部署 gerrit + LDAP + gitweb + MySQL

前言

核心需求是部署一个 Gerrit 做 code review。操作系统是 Centos 7,由于公司目前没有 LDAP 服务,所以只能自建。另外还需要 gitweb 方便在页面上查看代码。数据库使用最熟悉的 MySQL。为什么要强调 centos 7,因为版本不同,安装过程差别就比较大,centos6 和 7 上 ldap 安装就不大一样,和 debian 那更不一样,所以特别点出,以防用错。

全部部署完成后的版本号:

mariadb-server-5.5.47-1.el7_2.x86_64  # mysql
openldap-2.4.40-9.el7_2.x86_64
查看详细

libvirt 的 create 和 define 使用场景

前言

libvirt 中创建虚拟机有两种模式:“易失的“ 和 ”持久化”。“易失的”虚拟机使用 virsh create 命令创建,这种虚拟机下电之后,虚拟机就不见了,libvirt 中的 XML 配置文件也会丢失,所以是易失的。“持久化”的虚拟机使用 virsh define 命令创建,虚拟机下电后,libvirt 仍然保存着虚拟机的配置信息,可以随时重新上电,开启虚拟机。

libvirt 中对 define 是这么说明的,特别注意后半句”如果虚拟机已经运行,那么会在下一次启动时生效“。… 查看详细

rpm 和 dpkg 命令备忘

命令 rpm dpkg
安装包 rpm -i {package.rpm} dpkg -i {package.deb}
更新包 rpm -U {package.rpm} dpkg -i {package.deb}
删除包 rpm -e {package} dpkg -r {package}
列出所有包 rpm -qa dpkg -l
查看包里的文件 rpm -ql {package} dpkg -L {package}
查看已安装的包信息 rpm -qi dpkg -p {package}
查看包文件信息 rpm -qpi {package.rpm} dpkg -I {package.deb}
列出包文件内容 rpm -qpl {package.rpm} dpkg -c {package}
检查所有安装的包[0] rpm -Va
检查包 rpm -V {package}
查看包的所有版本 yum –showduplicates
查看详细

SmartStack – 来自 Airbnb 的服务发现框架

介绍

“服务发现”是在微服务(micro-service)深入人心后引申出的一个需求。在“微服务”的设定中,原来一个巨大的服务裂变成许多小微服务,服务之间通过 HTTP 或者其他协议通信。当小微服务的数量越来越大时,问题就出现了。比如:如何知道一个服务的 IP 地址和端口是啥?如果有多个 IP 地址,哪个 IP 地址是可用的?下线了一个服务怎么办?

于是 “服务发现” 被开发出来,用于解决这类问题。其中… 查看详细

测试 keystone v3 接口

前言

之前 TT 在 keystone v3 新特性中 介绍了 keystone V3 中的一部分新功能,但是没有体验过,这次使用 devstack 来体验一番。

用 devstack 搭环境

使用 Mitaka 版本(2016-04-22) devstack 搭建 OpenStack 开发环境,在这个版本中 devstack 建议的 keystone API 版本还是 2.0。

从 localrc 中默认设置的环境变量中可以看出:

# Authenticating against an OpenStack cloud using Keystone returns a **Token**
# and **Service Catalog**.  The catalog contains the endpoints for all services
# the 
查看详细