Fork me on GitHub
Suzf  Blog

[ 致运维 ] 小明走了,他曾在北京残酷地活过

导读:故事的主人公是我的高中同学,现在“小明”这个名字很火,刚好他名字里也有一个“明”字,因此,我们也叫他小明好了。

高考时候,小明选择了一个很牛很牛的专业,叫“采暖、给排水与通风”。但由于皮肤黝黑,他固执地认为自己天生就是个黑客。作为高中班级里唯一一个没有考上本科的学生,读完三年的专科,小明选择了专升本,而且是跨专业,跳槽去学计算机。

毕业后是07年,小明只身闯荡北京。那时候的北京生活压力已经变得很大,第一份工作是亲戚的朋友帮...

Flask_Faq : AttributeError: 'module' object has no attribute 'autoescape'

前些天从 "spider_net" 上找了一篇文章 , 大致就是利用 highcharts + flask + mysql 构建的一个简单的监控系统 ,
经过几番挣扎终于还是给捣持出来了 , 现在总结一下 , 分享给大家 . o_O

部分报错信息:

* Detected change in 'flask_web.py', reloading
* Restarting with reloader
X.X.X.X - - [11/Jun/2015 15:24:14] "GET / HTTP/1.1" 500 -
Traceback (most recent call last):
...
...<...

Python pip 简单使用说明

简单来说 pip 就是 Python 的一个包管理工具, 和 yum / apt-get 有异曲同工之妙 。
好了, 会到正文
~\(≧▽≦)/~

1、安装
# yum install python-pip -y

or

# wget "https://pypi.python.org/packages/source/p/pip/pip-1.5.4.tar.gz#md5=834b2904f92d46aaa333267fb1c922bb" --no-check-certificate
# tar -xzvf pip-1.5.4.tar.gz
# cd pip-1.5.4 && python setup.py install

# 升级
pip install -...
                
            

Puppet 将模块绘制成依赖关系图

依赖使关系迅速变得复杂,并且很容易结束循环依赖,(其中A依赖B,B又依赖A)这将引起
puppet编译错误并停止工作,幸运的是,puppet的图表选项可以很容易生成一个资源之间的依赖
关系图,它可以帮助我们解决这些问题。

准备工作:

1.安装看图文件所需要的graphviz软件包:
# apt-get install graphviz
如何做
1.创建/etc/puppet/modules/admin/manifests/ntp.pp文件,并使用下面的代码包含一个循环依赖:
class admin::ntp {
package { "ntp":
ensure => inst...

Web_Faq: TCP: time wait bucket table overflow

前几日 查看自己的 VPS 主机 返现 有报错信息如下:
kernel: TCP: time wait bucket table overflow
kernel: TCP: time wait bucket table overflow
kernel: TCP: time wait bucket table overflow
(TCP:时间等待桶表)

根据报错提示,需要更改net.ipv4.tcp_max_tw_buckets这个内核参数。这个参数是系统同时保持timewait套接字的最大数量。如果超过这个数字,time-wait套接字将立刻被清除并打印警告信息。这个限制仅仅是为了防止简单的 DoS攻击,你绝对不能过分依靠它或者人为地减小这个值,如果网络实际需要大于缺省值,更应该增加这个值(如果...

[Warning] Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT.

问题描述

发现网站反应比较慢 , 顺便查看了一下mysql的错误日志,发现产生了很多warning的日志:
150527 21:15:28 [Warning] Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. INSERT... ON DUPLICATE KEY UPDATE on a table with more than one UNIQUE KEY is unsafe Statement: INSERT INTO 'xxx'

问题原因

查了下原因,xxx 这个表上有2个唯一键。则使用INSERT ... ON DUPLICATE...

Puppet之安装dashboard 成功版

Puppet Dasshboard是由支持Puppet开发的公司Puppetlabs创建的,是Ruby on Rails程序。可以作为一个ENC(外部节点分类器)以及一个报告工具,并且正在逐渐成为一个包含许多Puppet新功能的集成界面,例如审计和资源管 理功能。 Puppet Dashboard是一个Ruby on Rails程序,用于显示Puppet master和agent的相关信息。它允许你查看从一个或多个Puppet master汇总的图形和报告数据。它同时从一个或者多个Puppet master上收集来自于Puppet agent的资产数据(主机的Fact和其他信息)。最后,它能作为一个ENC来配置Puppet节点,并指定这些节点上的类和参数。

参考文档:

http://kisspuppet.co...

Python pip 切换到阿里源

在使用 `pip` 安装 Python 模块的时候我们经常会遇到线面的错误

`ReadTimeoutError: HTTPSConnectionPool(host='pypi.python.org', port=443): Read timed out.
`

以至于安装模块的时候出现错误,之很让人不爽。

接下来我们将pip的源切换为阿里的源

cd $HOME
mkdir ~/.pip
cat > ~/.pip/pip.conf << EOF
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/

[install]
trusted-host = mirror...