动态 版块 发帖 消息 我的
Loading...
HuPei.net
商•龙虎纹青铜尊及其虎食人纹局部,战国•玉螭虎食人佩!
子版块
hupei
17
人的脆弱和坚强都超乎自己的想象。有时,我们可能脆弱得因一句话而泪流满面;有时,也发现我们咬着牙走了很长的路。
 2    0  12天前
hupei
31
上床、关灯、玩手机。这三个动作,可以说是当代“社畜”最基本的睡前仪式了。然而,当手机屏幕上一条条信息闪烁眼前时,某些疾病也许会悄悄来临……西班牙研究:长期暴露于夜间蓝光,结直肠癌患病风险增加!手机、电脑、LED灯,都能发出蓝光。过去有研究显示,夜间暴露于人造光(尤其是蓝光)中,可引起昼夜节律紊乱,增加乳腺癌、前列腺癌的患病风险。最近,西班牙一项发表在《Epidemiology》(流行病学)的研究分析了蓝光暴露量与结直肠癌之间的关系,发现二者同样显著相关!研究者通过MCC-西班牙项目获得了巴塞罗那和马德里约2000名成年人的数据,其中结直肠癌患者660人,其他的人随机在当地中挑选。研究者利用国际空间站(ISS)空拍图像,确定了两个城市夜间户外人造光源水平。结果发现,蓝光暴露量与结直肠癌呈正相关关系。暴露在蓝光中时间最长的人,患结直肠癌的风险比较少暴露者高60%。造成这种结果的,考虑与“褪黑素”有关。褪黑素影响人的昼夜节律,晚上暴露在人造光下(特别是蓝光下),人脑松果体中的褪黑素分泌量会减少,从而会破坏昼夜节律,诱发癌症。早在2007年,国际癌症研究机构(IARC)已考虑将“昼夜节律紊乱的轮班工作”归为致癌原。人们“谈蓝光色变”,蓝光真的那么恐怖?近几年来,“蓝光”在国内外医学界成为了一个热门课题:有研究蓝光致癌的、有研究蓝光影响睡眠的,甚至还有研究认为蓝光会诱发肥胖……各种对蓝光的“弹劾”现象,让人们“谈蓝光色变”。蓝光,真的那么可怕吗?实际上,蓝光并非什么“大祸害”。自然界中有着很多不同颜色的光谱,蓝光是其中之一。无论是自然界,还是电脑、手机电子等产品,都有着蓝光的踪迹。蓝光的波长在400-500纳米之间,由于波长越短,能量越高,穿透力越强,因此蓝光是可见光中能量最强的。蓝光对人体的危害性是客观存在的,如诱发黄斑病变、扰乱人体生理节奏、增加疾病风险等。然而,“抛开剂量谈毒性都是耍流氓”!蓝光对人的伤害与照射强度、照射时间有关,如果一个人整天没事盯着强烈灯光看,长期如此,眼睛“不瞎”才怪!另外,蓝光并非全都是有害的,真正有害的是处于400-440纳米之间的短波蓝光,而450-500纳米之间的蓝光具有一定的调整生物节律作用,影响着人的情绪、睡眠、记忆力等。因此,对于蓝光,我们要有正确地认识和评估,不要过分夸大其危害!如何正确避免蓝光危害?当然啦,虽说不可过分夸大蓝光的危害性,但如果长期处于有害蓝光下,还是要注意做好防范措施的,比如:第一,蓝光防护。市面上很多防蓝光眼镜都能起到阻隔蓝光的作用,我们最好在正规渠道购买。但需要强调的是,蓝光眼镜虽能挡住蓝光,但这不代表戴上后就可以自由自在地在电子产品的世界中“遨游”,因为蓝光眼镜起不到预防近视、缓解疲劳的作用!另外,过分阻挡蓝光也不可取,否则易造成色偏、加剧视疲劳,同样不利于健康。第二,正确使用照明灯。应该使用通过国家质检的LED灯,使用时应避免眼睛直接面对LED光源,同时要注意压低灯罩,以达到遮挡光源的目的。第三,养成良好的用眼习惯。控制好玩手机、玩电脑的时间,盯屏幕1小时后要远眺下风景。建议平时多参加户外活动,避免在黑暗中使用数码产品。关于“蓝光的危害”在医学界尚存争议,但蓝光这一领域的医学研究在未来定会更加深入全面。目前我们小老百姓能做的,就是要提前规避风险减,减少夜间暴露于蓝光的时间,减少对电子产品的依赖,合理作息。本文转载自搜狐网
 1    0  18天前
hupei
37
人与人之所以拉开距离,就在于行动力。不行动,梦想就只是好高骛远的妄想;不执行,目标就只是海市蜃楼的幻境。想做一件事,就马上开始。只要开始,就会有收获。
 0    0  22天前
hupei
37
起床不是为了应付今天的时间,而是为了今天要比昨天活得更精彩!昨天再好,走不回去;昨天再差,已经过去。追逐阳光的人,心中的每一天都是充满阳光的今天。
 0    0  22天前
hupei
91
内容:使用cronolog可以格式化日志文件的格式,比如按时间分割,易于管理和分析。cronolog的安装配置非常简单,简要说明如下:1.下载软件http://cronolog.org/download/cronolog-1.6.2.tar.gz2.解压缩tar xzvf cronolog-1.6.2.tar.gz3.进入相应的目录./configure --prefix=/usr/local/cronologmakemake install4.修改apache配置文件CustomLog "|/usr/local/cronolog/sbin/cronolog /opt/apache/logs/access_log.%Y%m%d" combinedTransferLog "|/usr/local/cronolog/sbin/cronolog /web/logs/%Y/%m/%d/access.log"ErrorLog    "|/usr/local/cronolog/sbin/cronolog /web/logs/%Y/%m/%d/errors.log"重起apache,这样就能在apache日志文件目录中按天来分隔日志了如果apache中有多个VirtualHost,也可以为每个VirtualHost分别输出一个日志的,方法与上面相同。官方网址:http://cronolog.org
 4    0  550天前
hupei
98
# cd /usr/local/apache2/conf# tar zxvf ssl.ca-0.1.tar.gz# cd ssl.ca-0.1生成根证书:# ./new-root-ca.sh                         (生成根证书)No Root CA key round. Generating oneGenerating RSA private key, 1024 bit long modulus...........................++++++....++++++e is 65537 (0x10001)Enter pass phrase for ca.key:              (输入一个密码)Verifying - Enter pass phrase for ca.key:  (再输入一次密码)......Self-sign the root CA...                   (签署根证书)Enter pass phrase for ca.key:              (输入刚刚设置的密码)................                                   (下面开始签署)Country Name (2 letter code) [MY]:CNState or Province Name (full name) [Perak]:HaiNanLocality Name (eg, city) [Sitiawan]:HaiKouOrganization Name (eg, company) [My Directory Sdn Bhd]:Wiscom System Co.,LtdOrganizational Unit Name (eg, section) [Certification Services Division]:ACSTARCommon Name (eg, MD Root CA) []:WISCOM CAEmail Address []:acmail@wiscom.com.cn这样就生成了ca.key和ca.crt两个文件,下面还要为我们的服务器生成一个证书:生成server证书:# ./new-server-cert.sh server              (这个证书的名字是server)............Country Name (2 letter code) [MY]:CNState or Province Name (full name) [Perak]:HaiNanLocality Name (eg, city) [Sitiawan]:HaiKouOrganization Name (eg, company) [My Directory Sdn Bhd]:Wiscom System Co.,LtdOrganizational Unit Name (eg, section) [Secure Web Server]:ACSTARCommon Name (eg, www.domain.com) []:acmail.wiscom.com.cnEmail Address []:acmail@wiscom.com.cn这样就生成了server.csr和server.key这两个文件。签署server证书:# ./sign-server-cert.sh serverCA signing: server.csr -> server.crt:Using configuration from ca.configEnter pass phrase for ./ca.key:             (输入上面设置的根证书密码)Check that the request matches the signatureSignature okThe Subject's Distinguished Name is as followscountryName           :PRINTABLE:'CN'stateOrProvinceName   :PRINTABLE:'JiangSu'localityName          :PRINTABLE:'NanJing'organizationName      :PRINTABLE:'Wiscom System Co.,Ltd'organizationalUnitName:PRINTABLE:'ACSTAR'commonName            :PRINTABLE:'acmail.wiscom.com.cn'emailAddress          :IA5STRING:'acmail@wiscom.com.cn'Certificate is to be certified until Jul 16 12:55:34 2005 GMT (365 days)Sign the certificate? [y/n]:y1 out of 1 certificate requests certified, commit? [y/n]yWrite out database with 1 new entriesData Base UpdatedCA verifying: server.crt <-> CA certserver.crt: OK(如果这里出现错误,最好重新来过,删除ssl.ca-0.1这个目录,从解压缩处重新开始。)下面要按照ssl.conf里面的设置,将证书放在适当的位置。# chmod 400 server.key # cd .. # mkdir ssl.key # mv ssl.ca-0.1/server.key ssl.key # mkdir ssl.crt # mv ssl.ca-0.1/server.crt ssl.crt然后就可以启动啦!# cd /usr/local/apache2 # ./bin/apachectl startssl
 1    0  550天前
hupei
95
平台说明:192.168.200.102=>master192.168.200.101=>slaveMysql版本:Mysql 5.0.15操作系统:Fc3 内核:2.6.9(1)配置主服务器#vi /etc/my.cnf[mysqld]log-bin=hnolwebserver-bin //日志文件的名称,这里可以制定日志到别的目录 如果没有设置则默认主机名的一个日志名称server-id = 1 //数据库的id这个应该默认是1就不用改动binlog-do-db=tianya //需同步的数据库,多数据库用binlog-do-db=tianya1。character-set-server=gb2312 //设置支持gb2312的字符集。#/usr/local/mysql/bin/mysql -u root -p#建tianya数据库。#mysql>GRANT REPLICATION SLAVE ON *.* TO 'backup'@'192.168.200.101' IDENTIFIED BY '123456'; #添加一个主机为192.168.200.101的backup帐号,具有全局REPLICATION SLAVE权限。在phpMyAdmin中导出tianya数据库的SQL数据为tianya.sql。#mysql>show master status\G;*************************** 1. row ***************************File: hnolwebserver-bin.000010Position: 649Binlog_Do_DB: tianyaBinlog_Ignore_DB: 1 row in set (0.01 sec)记下File与Position在设置从服务中需要用到。(2)配置从服务器修改/etc/my.cnf,如是多实例Msyql,则修改my_multi.cnf中的任一个实例定义中。[mysqld]master-host=192.168.200.102 #主服务端主机master-user=backup #主服务端开设的帐号master-password=123456 #主服务端开设的密码master-port=3306 #主服务端Mysql端口server-id=2 #设置数据库id默认主服务器是1可以随便设置但是如果有多台从服务器则不能重复。master-connect-retry=60 #如果从服务器发现主服务器断掉,重新连接的时间差replicate-do-db=tianya #同步的数据库character-set-server=gb2312 #设置中文字符集。将tianya.sql导入到从服务器中。与主服务器数据库一致.#/usr/local/mysql/bin/mysql -u root -p设置主服务器的各种参数:#mysql>slave stop; #停止slave的服务#mysql>CHANGE MASTER TO#mysql>MASTER_HOST='192.168.200.102',#主服务器的IP地址#mysql>MASTER_USER='backup', #同步数据库的用户#mysql>MASTER_PASSWORD='123456', #同步数据库的密码#mysql>MASTER_LOG_FILE='hnolwebserver-bin.000016', #主服务器二进制日志的文件名(前面要求记住的参数)#mysql>MASTER_LOG_POS=2567; #日志文件的开始位置(前面要求记住的参数)#mysql>slave start; #启动同步数据库的线程从主服务器添加数据测试。
 1    0  550天前
hupei
103
一、用户登陆进入系统后的系统环境变量: $HOME 使用者自己的目录 $PATH 执行命令时所搜寻的目录 $TZ 时区 $MAILCHECK 每隔多少秒检查是否有新的信件 $PS1 在命令列时的提示号 $PS2 当命令尚未打完时,Shell 要求再输入时的提示号 $MANPATH man 指令的搜寻路径 二、特殊变量: $0 这个程序的执行名字 $n 这个程序的第n个参数值,n=1..9 $* 这个程序的所有参数 $# 这个程序的参数个数 $$ 这个程序的PID $! 执行上一个指令的PID $? 执行上一个指令的返回值三、shell中的变元: * 任意字符串 ? 一个任意字符 [abc] a, b, c三者中之一 [a-n] 从a到n的任一字符 四、几个特殊字符表示 \b 退回 \c 打印一行时没有换行符 这个我们经常会用到 \f 换页 \r 回车 \t 制表 \v 垂直制表 \\ 反斜线本身 五、判断文件的属性 格式:-操作符 filename -e 文件存在返回1, 否则返回0 -r 文件可读返回1,否则返回0 -w 文件可写返回1,否则返回0 -x 文件可执行返回1,否则返回0 -o 文件属于用户本人返回1, 否则返回0 -z 文件长度为0返回1, 否则返回0. -f 文件为普通文件返回1, 否则返回0 -d 文件为目录文件时返回1, 否则返回0 六、测试字符串 字符串1 = 字符串2 当两个字串相等时为真 字符串1 != 字符串2 当两个字串不等时为真 -n 字符串      当字符串的长度大于0时为真 -z 字符串      当字符串的长度为0时为真 字符串       当串字符串为非空时为真 七、测试两个整数关系 数字1 -eq 数字2     两数相等为真 数字1 -ne 数字2     两数不等为真 数字1 -gt 数字2     数字1大于数字2为真 数字1 -ge 数字2     数字1大于等于数字2为真 数字1 -lt 数字2     数字1小于数字2为真 数字1 -le 数字2     数字1小于等于数字2为真 八、逻辑测试 -a         与 -o        或 !        非 今天介绍shell特殊字符的引用 =============================== shell中的特殊字符有 1、$ 美元符 2、\ 反斜杠 3、` 反引号 4、" 双引号 5、< ,>;,*,?,[,] 下面我一一举列说明 一、$符号 1、echo $? 显示的是上一条指令退出状态 2、echo "$?" 效果同上 3、echo '$?' 显示的是$? 4、echo \$? 显示的是$? 5、echo "\$?" 显示的是$?   大家可能已经看出 $符号在双引号中具有特殊意义 双引号对$符号不起作用 而单引号可以将特殊字符的的特殊意义屏蔽掉,使其能显示为字符本身,反斜 杠也可以将特殊字符的特殊含义屏蔽掉,使特殊字符失去特殊含义。 二、\ 反斜杠   反斜杠的作用是将特殊符号字符的特殊含义屏蔽掉,使其还是原字符 A=1234 echo \$A 显示为$A 如果不加\将显示为1234 echo \` 显示为` echo \" 显示为双引号 echo \\ 显示为\ 三、` 反引号   反引号的功能是命令替换,将反引号中的字符串做为命令来执行,我们在用shell编程时经常用的到 将系统命令的执行结果赋给一个变量 A=`date` echo $A 显示的不是date而是当时的时间串 比如有一文件A的内容如下  ABCDEFG 1234456 abcdefg B=`cat A|grep 234` # 检索文件A中含有字符串234的行 echo $B 将显示为1234456 echo "$B" 将显示为什么? echo "\$B" 将显示为什么?读者自己试试 四、" 双引号   在系统中有些特殊字符,为避免引用这些特殊字符 往往用双引号或单引号将这些特殊字符引起来,使其不具有特殊含义。   但有一部分特殊字符在引号中还是具有特殊含义,用双引号引起来是不起作用的。本文中所列的前四个特殊字符在双引号中还是特殊字符。为了使其不具有特殊含义一是用单引号引进来二是用\反斜线使其失去作用。   比如我们想原样输出这些特殊字符 echo """ echo "$" echo "\" echo "`"    以上不是你所期望的结果,因为双引号对它们不起作用,你只能这样才能输出这些特殊字符的原形 echo '"' echo '$' echo '\' echo '`' 或 echo "\"" echo "\$" echo "\\" echo "\`" 将分别显示为 " $ \ ` 五、其它特殊字符   大家注意到 除了前四个特殊字符外 我将其它的特殊字符都放在一块,这是因为前四个特殊字符在双引号中还是具有特殊含义,所以单独拿出来讲,除此以外的特殊字符如果你要输出这些特殊字符的原形,你就可以用双引号或单引号引起来使其失去特殊含义。 < ,>;,*,?,[,]对shell有特殊含义 但你可以用双引号引起来输入这些原形   讲了这么多大家是不是已经注意到所有的特殊字符在单引号中失去特殊含义,如果你要输出特殊字符原形但又记不清那些特殊字符在双引号中不能输出原形,建议你干脆用单引号引起来。今天介绍条件测试语句 一、if 条件语句  格式: if 条件表达式 then #当条件为真时执行以下语句 命令列表 else #为假时执行以下语句 命令列表 fi if 语句也可以嵌套使用 if 条件表达式1 then if 条件表达式2 then 命令列表 else if 条件表达式3 then 命令列表 else 命令列表 fi fi else 命令列表 fi 你可以进行多层嵌套 一个if语句一定要跟一个fi 表示该层条件结束  否则会造成语法错误 结合前面讲的 举例如下: 这里先讲一个条件语句中用到的命令test 表示测试test后面的条件是否为真 if test -f "$1" then lpr $1 else if test -d "$1" then cd $1 lpr $1 else echo "$1不是文件或目录" fifi以上的例子还可以改成如下所示 if test -f "$1" then lpr $1 elif test -d "$1" #elif 同else if then (cd $1;lpr $1) else echo "$1不是文件或目录" fi 以上的例子不知您是否看懂是什么意思吗? 假如我们现在将这个例子保存为prfile chmod +x prfile 执行刚才的程序 ./prfile aaa 这个例子是检查你的输入的参数是否是一个文件 如果是就打印 如果是一个目录 先转目录再打印 如果即不是文件也不是目录给出提示 二、多重条件测试语句case 格式: case 字串 in 模式) 命令列表;; 模式) 命令列表;; .... esac 多重条件语句是以case 开始以esac结束 中间可以有多个条件列表 功能是测试字串和和里面的模式有没有匹配的,有就执行里面的命令列表 模式也可以是*号 表示任意字串,每个模式里面的最后要心;;双引号结束,否则会发生语法错误。 现举例如下: case $1 in *.c) cc $1 ;; *.txt) lpr $1 ;; *) echo "未知的类型" esac 假如将以上内容保存在文件abc中 chmod +x abc 执行 ./abc a.c   将会对文件a.c进行编译 执行 ./abc readme.txt 将会把文件通过打印机 假如我将以上内容改一下,你是否会知道它的执行结果? case $1 in *) cc $1 ;; *.txt) lpr $1 ;; *.c) echo "未知的类型" esac 今天介绍循环语句 一. while 循环 while 命令格式 while 条件表 do 命令表 done 执行过程 shell首先执行条件表,如果条件表的最后一条语句的退出状态为零,则执行盾环体内的命令 表,执行完后,再检查条件表,如果退出状态为零将继续执行,如此循环往复直到条件表的 最后一条语句的退出状态非零. 退出状态为零就是条件为真True. 举例说明 假如shell文件的内容如下: Sum=0 i=0 while true #true是系统的关键词 表示真 do i=`expr $i + 1` Sum=`expr $Sum + $i` if [ $i = "100" ] then break; fi done echo $i $Sum 最后这个程序显示的是 100 5050 这个程序的运算就是将1到100加起来 下面将这个程序再改动一下 Sum=0 i=0 while [ $i != "100" ] do i=`expr $i + 1` Sum=`expr $Sum + $i` done echo $i $Sum 改动后的程序运算结果和上面是一样 但程序比上面的要简练 在这个循环中还可以以until做为测试条件 它正好与while测试的条件相反,也就是当条件为假时将继续执行循环体内的语句,否则就退出循环体,下面还用这个例子. Sum=0 i=0 until [ $i = "100" ] do i=`expr $i + 1` Sum=`expr $Sum + $i` done echo $i $Sum 当i不等于100时循环 就是当条件为假时循环,否则就退出,而第一个例子是当i不等于100 时循环,也就是测试条件为真时循环. 二.for 循环 命令格式: for 变量 in 名字列表 do 命令列表 done 这里的名字列表是一个由空格分隔的字符串列表,shell在执行for循环时每次依次从名字表 中取出一个字符串赋给循环变量作为变量的值. 在写for语句时,也可以省略in 名字列表部分,这表示用当前的位置参数来代替这时的名 字列表. 下面举个例子 比如在你的电脑中有两个目录,一个是aa,一个是bb在这两个目录中有5个相同的文件,但其 中一个目录中的一个或多个文件刚刚修改过,现在我忘记刚才改的是那几个文件 了,那么我靠梢员冉弦幌抡饬礁瞿柯嫉奈募椭懒?程序如下: for File in a1 a2 a3 a4 a5 do diff aa/$File bb/$File done 下面再举一个不带名字列表的例子 for File do echo $Filw done 文件内容保存在a.sh中 并可执行 我们在执行这个shell程序时命令行如下: a.sh a1 a2 a3 a4 a5 执行结果如下: a1 a2 a3 a4 a5 大家从这个例子中可以看到命令行的参数被逐一读入一次 三.循环控制语句 break 命令不执行当前循环体内break下面的语句从当前循环退出. continue 命令是程序在本循体内忽略下面的语句,从循环头开始执行. 一,命令组合:圆括号和花括号 shell中有两种方法将命令组合在一起:圆括号和花括号.圆括号使shell创建一个子shell 来读取并执行括起来的名命令.左括号和右括号不论出现在命令行中的什么位置,shell都会 认为它们具有特殊的组合意义的.只有用双引号将它们括起来引用,才表示圆括号或花括号 的原义.例如: echo a(b) 将出现语法上的错误,要想输出a(b)字符串 只能括起来 echo "a(b)" 或echo a"("b"" 这样才能被shell正确解释. 利用组合命令有什么作用呢? 一,用圆括号组合命令 圆括号的组合命令可以创建子进程运行组合程序,建立子进程的功能是很有用的,因为 子shell在组合命令中的种种操作都不会影响到当前shell的各变量的值. 例如: 子进程在执行组合命令时改变了工作目录,并在新的工作目录下执行一系例命令,执行 完后它可以不必返回原工作目录,因为子进程工作目录的改变不会影响到当前工作目录. 创建子进程后将当前的环境也同样传给子shell,当前shell中用export输出到环境中的 各变量在子shell中同样有效. 花括号也可以将命令组合在一起.左 右花括号只有作为一条命令的第一个字出现时, shell才它们含有特殊含义. 与圆括号不同的是花括号并不创建子shell,只是由当前的shell来读取并执行括起来的 命令.有时用户希望使用一组命令的顺序输出作为另一组命令的输入,此时用花括号是很方 便的. 不论是用圆括号不是花括号,退出状态都是等于最后一条括起来的命令的退出状态. 二,可以在当前shell中执行的命令 用户在使用shell时一定要了解那些是可以在当前shell中执行的命令 那些不可以 可以在当前shell中执行的命令有: break case cd continue echo eval exec exit export for if read readonly return set shift test times trap umask until wait while : {}
 0    0  550天前
hupei
131
一、内容简介        本书在中国运维领域将有“划时代”的重要意义:一方面,这是国内第一本从纵、深和实践角度探讨Python在运维领域应用的著作;一方面本书的作者是中国运维领域的“偶像级”人物,本书是他在天涯社区和腾讯近10年工作经验的结晶。因为作者实战经验丰富,所以能高屋建瓴、直指痛处,围绕Python自动化运维这个主题,不仅详细介绍了系统基础信息、服务监控、数据报表、系统安全等基础模块,而且深入讲解了自动化操作、系统管理、配置管理、集群管理及大数据应用等高级功能。最重要的是,完整重现了4个来自实际生产环境的不同功能运维平台的综合案例,展示了完整的平台架构及开发流程。        全书一共16章:基础篇(1-4章)详细介绍了系统基础信息、业务服务监控、定制业务质量报表、系统安全等基础和常用模块;高级篇(5-12章)深入讲解了批量运维管理器pexpect、paramiko、Fabric,集中化管理平台Ansible、Saltstack,统一网络控制器Func等高级功能,涵盖自动化操作、系统管理、配置管理、集群管理及大数据应用等主题;案例篇(13-16章)详细介绍了4个来自不同平台的运维案例,如何从零开始打造一个B/S自动化运维平台、如何打造Linux系统安全审计功能、如何构建分布式质量监控平台、如何构建桌面版C/S自动化运维平台,这4个案例均来自实际生产环境。二、目录前  言第一部分 基础篇第1章 系统基础信息模块详解 21.1 系统性能信息模块psutil 21.1.1 获取系统性能信息 31.1.2 系统进程管理方法 61.2 实用的IP地址处理模块IPy 71.2.1 IP地址、网段的基本处理 81.2.2 多网络计算方法详解 91.3 DNS处理模块dnspython 111.3.1 模块域名解析方法详解 111.3.2 常见解析类型示例说明 121.3.3 实践:DNS域名轮循业务监控 14第2章 业务服务监控详解 172.1 文件内容差异对比方法 172.1.1 示例1:两个字符串的差异对比 172.1.2 生成美观的对比HTML格式文档 192.1.3 示例2:对比Nginx配置文件差异 192.2 文件与目录差异对比方法 212.2.1 模块常用方法说明 212.2.2 实践:校验源与备份目录差异 252.3 发送电子邮件模块smtplib 272.3.1 smtplib模块的常用类与方法 272.3.2 定制个性化的邮件格式方法 282.3.3 定制常用邮件格式示例详解 292.4 探测Web服务质量方法 342.4.1 模块常用方法说明 352.4.2 实践:实现探测Web服务质量 36第3章 定制业务质量报表详解 393.1 数据报表之Excel操作模块 393.1.1 模块常用方法说明 413.1.2 实践:定制自动化业务流量报表周报 483.2 Python与rrdtool的结合模块 503.2.1 rrdtool模块常用方法说明 513.2.2 实践:实现网卡流量图表绘制 533.3 生成动态路由轨迹图 563.3.1 模块常用方法说明 563.3.2 实践:实现TCP探测目标服务路由轨迹 57第4章 Python与系统安全 604.1 构建集中式的病毒扫描机制 604.1.1 模块常用方法说明 614.1.2 实践:实现集中式的病毒扫描 614.2 实现高效的端口扫描器 644.2.1 模块常用方法说明 644.2.2 实践:实现高效的端口扫描 66第二部分 高级篇第5章 系统批量运维管理器pexpect详解 705.1 pexpect的安装 705.2 pexpect的核心组件 715.2.1 spawn类 715.2.2 run函数 745.2.3 pxssh类 755.3 pexpect应用示例 765.3.1 实现一个自动化FTP操作 765.3.2 远程文件自动打包并下载 77第6章 系统批量运维管理器paramiko详解 796.1 paramiko的安装 796.2 paramiko的核心组件 816.2.1 SSHClient类 816.2.2 SFTPClient类 826.3 paramiko应用示例 856.3.1 实现密钥方式登录远程主机 856.3.2 实现堡垒机模式下的远程命令执行 856.3.3 实现堡垒机模式下的远程文件上传 88第7章 系统批量运维管理器Fabric详解 917.1 Fabric的安装 917.2 fab的常用参数 927.3 fabfile的编写 937.3.1 全局属性设定 937.3.2 常用API 947.3.3 示例1:查看本地与远程主机信息 957.3.4 示例2:动态获取远程目录列表 967.3.5 示例3:网关模式文件上传与执行 977.4 Fabric应用示例 987.4.1 示例1:文件打包、上传与校验 987.4.2 示例2:部署LNMP业务服务环境 997.4.3 示例3:生产环境代码包发布管理 101第8章 从“零”开发一个轻量级WebServer 1048.1 Yorserver介绍 1048.1.1 功能特点 1048.1.2 配置文件 1058.2 功能实现方法 1068.2.1 HTTP缓存功能 1078.2.2 HTTP压缩功能 1118.2.3 HTTP SSL功能 1118.2.4 目录列表功能 1148.2.5 动态CGI功能 114第9章 集中化管理平台Ansible详解 1189.1 YAML语言 1199.1.1 块序列描述 1209.1.2 块映射描述 1209.2 Ansible的安装 1219.2.1 业务环境说明 1219.2.2 安装EPEL 1229.2.3 安装Ansible 1229.2.4 Ansible配置及测试 1229.2.5 配置Linux主机SSH无密码访问 1239.3 定义主机与组规则 1249.3.1 定义主机与组 1249.3.2 定义主机变量 1259.3.3 定义组变量 1259.3.4 分离主机与组特定数据 1269.4 匹配目标 1279.5 Ansible常用模块及API 1279.6 playbook介绍 1329.6.1 定义主机与用户 1329.6.2 任务列表 1339.6.3 执行playbook 1349.7 playbook角色与包含声明 1359.7.1 包含文件,鼓励复用 1359.7.2 角色 1369.8 获取远程主机系统信息:Facts 1419.9 变量 1429.9.1 Jinja2过滤器 1439.9.2 本地Facts 1439.9.3 注册变量 1449.10 条件语句 1459.11 循环 1469.12 示例讲解 147第10章 集中化管理平台Saltstack详解 15510.1 Saltstack的安装 15610.1.1 业务环境说明 15610.1.2 安装EPEL 15610.1.3 安装Saltstack 15610.1.4 Saltstack防火墙配置 15710.1.5 更新Saltstack配置及安装校验 15710.2 利用Saltstack远程执行命令 15810.3 Saltstack常用模块及API 16110.4 grains组件 16610.4.1 grains常用操作命令 16710.4.2 定义grains数据 16710.5 pillar组件 17010.5.1 pillar的定义 17110.5.2 pillar的使用 17310.6 state介绍 17410.6.1 state的定义 17410.6.2 state的使用 17510.7 示例:基于Saltstack实现的配置集中化管理 17710.7.1 环境说明 17710.7.2 主控端配置说明 17710.7.3 配置pillar 17910.7.4 配置state 18010.7.5 校验结果 183第11章 统一网络控制器Func详解 18511.1 Func的安装 18611.1.1 业务环境说明 18611.1.2 安装Func 18611.2 Func常用模块及API 18911.2.1 选择目标主机 19011.2.2 常用模块详解 19011.3 自定义Func模块 19411.4 非Python API接口支持 19811.5 Func的Facts支持 199第12章 Python大数据应用详解 20212.1 环境说明 20212.2 Hadoop部署 20312.3 使用Python编写MapReduce 20712.3.1 用原生Python编写MapReduce详解 20812.3.2 用Mrjob框架编写MapReduce详解 21212.4 实战分析 21612.4.1 示例场景 21612.4.2 网站访问流量统计 21712.4.3 网站HTTP状态码统计 21912.4.4 网站分钟级请求数统计 22012.4.5 网站访问来源IP统计 22112.4.6 网站文件访问统计 222第三部分 案例篇第13章 从零开始打造B/S自动化运维平台 22613.1 平台功能介绍 22613.2 系统构架设计 22713.3 数据库结构设计 22813.3.1 数据库分析 22813.3.2 数据字典 22813.3.3 数据库模型 22913.4 系统环境部署 23013.4.1 系统环境说明 23013.4.2 系统平台搭建 23013.4.3 开发环境优化 23313.5 系统功能模块设计 23513.5.1 前端数据加载模块 23513.5.2 数据传输模块设计 23713.5.3 平台功能模块扩展 240第14章 打造Linux系统安全审计功能 24514.1 平台功能介绍 24514.2 系统构架设计 24614.3 数据库结构设计 24714.3.1 数据库分析 24714.3.2 数据字典 24714.4 系统环境部署 24814.4.1 系统环境说明 24814.4.2 上报主机配置 24814.5 服务器端功能设计 25214.5.1 Django配置 25214.5.2 功能实现方法 253第15章 构建分布式质量监控平台 25615.1 平台功能介绍 25615.2 系统构架设计 25715.3 数据库结构设计 25815.3.1 数据库分析 25815.3.2 数据字典 25815.3.3 数据库模型 25915.4 系统环境部署 26015.4.1 系统环境说明 26015.4.2 数据采集角色 26015.4.3 rrdtool作业 26115.5 服务器端功能设计 26315.5.1 Django配置 26315.5.2 业务增加功能 26415.5.3 业务报表功能 266第16章 构建桌面版C/S自动化运维平台 26916.1 平台功能介绍 26916.2 系统构架设计 27016.3 数据库结构设计 27116.3.1 数据库分析 27116.3.2 数据字典 27216.3.3 数据库模型 27216.4 系统环境部署 27316.4.1 系统环境说明 27316.4.2 系统环境搭建 27316.5 系统功能模块设计 27416.5.1 用户登录模块 27416.5.2 系统配置功能 27516.5.3 服务器分类模块 27716.5.4 系统升级功能 28016.5.5 客户端模块编写 28416.5.6 执行功能模块 28716.5.7 平台程序发布 289三、前言 为什么要写这本书   随着信息时代的迅速发展,尤其是互联网日益融入大众生活,作为这一切背后的IT服务支撑,运维角色的作用越来越大,传统的人工运维方式已经无法满足业务的发展需求,需要从流程化、标准化、自动化去构建运维体系,其中流程化与标准化是自动化的前提条件,自动化的最终目的是提高工作效率、释放人力资源、节约运营成本、提升业务服务质量等。我们该如何达成这个目标呢?运维自动化工具的建设是最重要的途径,具体包括监控、部署变更、安全保障、故障处理、运营数据报表等。本书介绍如何使用Python语言来实现这些功能点,以及Python在我们的自动化运维之路上发挥作用,解决了哪些运维问题等。   为什么是Python?Python是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年年底发明,具有简单易学、开发效率高、运行速度快、跨平台等特点,尤其是具有大量第三方模块的支持,其中不乏优秀的运维相关组件,例如Saltstack、Ansible、Func、Fabric等。大部分运维人员为非专业开发人士,对他们而言,选择一门上手快、技术门槛低的开发语言非常重要。由于Python具有脚本语言的特点,学习资源多,社区非常活跃,且在Linux平台默认已安装等优势。Python已经是当今运维领域最流行程的开发语言之一。   2003年毕业后,我的第一份工作是当PHP程序员,人力紧张时还要兼顾美工的工作。时常回想,其实也只有在小公司才能修炼出“十八般武艺”。在“非典”肆虐的岁月,大部分公司都闭门不招聘,一个毕业生能有这样的机会锻炼也显得尤为珍贵。工作中一次偶然的机会看到导师诗成兄在黑漆漆的界面中输入不同指令,第一感觉非常震撼,很酷,联想到《黑客帝国》电影中的画面,与之前接触到的Windows系统完全不一样,后来才晓得是Redhat 9(红帽9)。此后很长的一段时间里,整个人完全沉醉在Linux的世界里,处于一种痴迷的状态,那时我还是一个程序员。   到了2005年10月,看到隔壁公司招聘一名Linux系统工程师,抱着试一试的心态去面试,结果出乎意料,我被录用了,这样我就找到了第二个东家—天涯社区。人生的第一个转折点在此酝酿,由于赶上了公司快速发展的阶段,接触到了很多开源技术,包括LVS、Squid、Haproxy、MongoDB、MySQL、Cfengine等,并且不断在生产环境中应用所学的技术,取得了非常不错的效果,重点业务的高可用持续保持在99.99%。期间新的问题也陆续出现,包括如何更好整合各类开源组件,发挥其最大效能,以及如何高效运营。不可否认,具有开发背景的运维人员有着先天优势,可以在不同角色之间进行思考,扩大视野。期间我参与了推动大量标准化、规范化的建设,以此为前提,开发了“SDR1.0-Linux主机集中管理”、“天涯LVS管理系统”、“天涯服务器管理系统(C/S与B/S版)”、“服务器机柜模拟图平台”、“Varnish缓存推送平台V1.0”等平台,这些平台在很大程度上改变了运维人员手工作坊式的工作模式。在释放人力的同时,我看到国内其他公司的同仁也在做同样的事情,突然间有一个想法,就是开源。此时已经是2009年,这个想法也得到系统部经理小军认可,同年12月陆续在code.google.com平台托管,让业界更深入了解天涯社区的技术架构。凭着这些作品及分享的技术文章,我的博客“运维进行时”(http://blog.liuts.com/)荣获了“2010年度十大杰出IT博客”的殊荣。我还先后参与了51CTO、IT168、CU等门户网站以架构、运维为主题的专访,在运维圈得到越来越多同仁的认同。   再谈谈如何与Python结缘。接触Python是从《简明Python教程》开始,由于我有Perl与PHP的基础,学习Python没有太大压力。事实上,Python的简洁、容易上手以及大量第三方模块等特点,深深吸引了我,让我第二次沉醉于知识的海洋。我很快深入学习了Func、Django框架、SQLAlchemy、BeautifulSoup、Pys60、wxPython、Pygame、wmi等经典模块,同时将所学知识应用到运维体系中,解决在工作中碰到的问题。例如,开发的“多节点应用延时监控平台”解决了多运营商网络环境下的业务服务质量监控问题;开发的“Varnish&Squid缓存推送平台”解决了快速刷新缓存对象的问题。再例如,删除敏感帖子的时效性要求非常高,需要在后台触发删除后立即生效,与缓存推送平台对接后很好地解决了这一问题;天涯服务器管理系统(C/S、B/S、移动版)实现自助、智能、多维度接入,提高了运维效率,减少了人工误操作,释放了人力资源,同时标准化与流程化得到技术保障与实施落地。   天涯社区是我个人职业生涯的培育期,让我重新审视自我,明确了未来的规划与定位。2011年9月是我职业生涯的成长期的开始,加盟了腾讯,负责静态图片、大游戏下载业务CDN的运维工作,接触到庞大的用户群、海量的资源(设备、带宽、存储)、世界级的平台、人性化的工作氛围以及大量优秀的同事。所有的这些都深深地吸引着我,也让我的视野与工作能力得到前所未有的提升。分工细化产生运维工作模式的差异,从“单兵作战”转向“集团军作战”。我继续保持着对新技术的狂热,思考如何使用Python在运维工作中发挥作用。工作期间研究了大量高级组件,包括Paramiko、Fabric、Saltstack、Ansible、Func等,这些组件有了更高级的封装,强大且灵活,贴近各类业务场景。我个人也基于Python开发了集群自动化操作工具—yorauto,在公司各大事业群广泛使用,同时入选公司精品推荐组件。我的部分个人发明专利使用Python作为技术实现。目前我也关注大数据发展趋势,研究Python在大数据领域所扮演的角色。   回到主题“为什么要写这本书”,这一点可以从51CTO对我的专访中找到答案。当时的场景是这样的:   51CTO:您对开源是如何理解的?天涯社区在过去两年间陆续开源了包含LVS管理系统、Varnish缓存推送平台、高性能数据引擎memlink等好几个项目,业内人士对此都十分关注,您认为这给整个产业带来了哪些好处?身为天涯社区的一位运维人员,您认为在这个过程中自己的价值在哪里?   刘天斯:开源就是分享,让更多人受益的同时自己也在提高。经常看到很多朋友都在做监控平台、运维工具。事实上功能惊人相似,大家都在做重复的工作,为什么不能由一个人开源出来,大家一起来使用、完善呢。这样对整个行业来讲,这块的投入成本都会降低,对个体来讲也是资源的整合。如果形成良性循环,行业的生态环境将会有很大程度的改善。本人热衷于开源技术,同样也愿意为开源贡献自己一分微薄之力,希望更多的人能支持开源、参考开源。   这就是我的初衷,也是答案。写书的意义在于将10年的工作沉淀、经验、思路方法做个梳理与总结,同时与大家分享。最终目的是为每个渴望学习、进步、提升的运营人员提供指导。   读者对象   系统架构师、运维人员   运营开发人员   Python程序员   系统管理员或企业网管   大专院校的计算机专业学生   如何阅读本书   本书分为三大部分。   第一部分为基础篇(第1~4章),介绍Python在运维领域中的常用基础模块,覆盖了系统基础信息、服务监控、数据报表、系统安全等内容。 .  第二部分为高级篇(第5~12章),着重讲解Python在系统运维生命周期中的高级应用功能,包括相关自动化操作、系统管理、配置管理、集群管理及大数据应用等内容。   第三部分为案例篇(第13~16章),通过讲解4个不同功能运维平台案例,让读者了解平台的完整架构及开发流程。   说明:   书中的代码以“【路径】”方式引用,测试路径为“/home/test/模块”、“/data/www/项目”。   书中涉及的所有示例及源码的Github地址为https://github.com/yorkoliu/pyauto,以章节名称作为目录层次结构,模块及项目代码分别存放在对应的章节目录中。   其中第三部分以接近实战的案例来讲解,相比于前两部分更独立。如果你是一名经验丰富Linux管理员且具有Python基础,可以直接切入高级篇。但如果你是一名初学者,请一定从基础篇开始学习。本书不涉及Python基础知识,推荐新手在线学习手册:《简明Python教程》 与《深入Python: Dive Into Python中文版》。   勘误和支持   由于笔者的水平有限,且编写时间仓促,书中难免会出现一些错误或者不准确的地方,恳请读者批评指正。为此,特意创建一个在线支持与应急方案问答站点:http://qa.liuts.com。你可以将书中的错误发布到“错误反馈”分类中,同时如果你遇到任何问题或有任何建议,也可以在问答站点中发表,我将尽量在线上提供最满意的解答。我也会将及时更新相应的功能更新。如果你有更多的宝贵意见,欢迎发送邮件至邮箱liutiansi@gmail.com,期待能够得到你们的真挚反馈。   致谢   首先要感谢Guido大神,是他创立了Python语言,同时也要感谢提供Python优秀第三方模块的所有作者,开源的精神与力量在他们身上体现得淋漓尽致。   感谢钟总、王工、诗成兄,是他们给予我第一份工作,也为个人此后的成长提供了非常多的指导。感谢天涯社区的邢总(968)、王总(建科)、小军,是他们提供了这么优秀的平台,让我有机会可以尽情施展才能,体现个人价值。感谢腾讯的Willim(崔晓春)、Tomxiao(肖志立)、Thundersun(孙雷)、Stanleysun(孙龙君)、Trackynong(农益辉)、Chanceli(李飞宏)、Blue(许明)导师,以及接入运维组(TEG)、数据管理组(IEG)所有兄弟姐妹在工作中给予的帮助、指导与支持,让我可以在新的环境继续突破自我,实现自我价值。感谢洪春兄(抚琴煮酒)的引荐,在他的努力下才促成了这本书的合作与出版。   感谢机械工业出版社的编辑杨福川和姜影,在这一年多的时间中始终支持我的写作,他们的鼓励和帮助引导我能顺利完成全部书稿。   感谢已经过世的爷爷,是他深深影响着我的人生观与价值观,他的教导我会永远铭记在心。感谢我的爸爸、妈妈,感谢他们将我培养成人,在成长的过程中不断鼓励、激励我继续前进。感谢姐姐、弟弟,他们是我成长过程中最好的挚友与伙伴。   最后感谢我的爱人杜海英,没有你就没有我们幸福的小家和可爱的宝宝。感谢她支持我做的所有决定,没有她背后默默的支持与鼓励,也没有我今天的成就,更也不会有这本书。我想说:谢谢你!有你真好。   谨以此书献给我最亲爱的家人与我自己,以及众多热爱开源技术的朋友们!   刘天斯(Yorkoliu) 四、简介本书在中国运维领域将有“划时代”的重要意义:一方面,这是国内第一本从纵、深和实践角度探讨Python在运维领域应用的著作;另一方面本书的作者是中国运维领域的“偶像级”人物,本书是他在天涯社区和腾讯近10年工作经验的结晶.因为作者实战经验丰富,所以能高屋建瓴、直指痛处,围绕Python自动化运维这个主题,不仅详细介绍了系统基础信息、服务监控、数据报表、系统安全等基础模块,而且深入讲解了自动化操作、系统管理、配置管理、集群管理及大数据应用等高级功能.最重要的是,完整重现了4个来自实际生产环境的不同功能运维平台的综合案例,展示了完整的平台架构及开发流程。全书一共16章:基础篇(第1~4章)详细介绍了系统基础信息、业务服务监控、定制业务质量报表、系统安全等基础和常用模块;高级篇(第5—12章)深入讲解了批量运维管理器pexpect、paramiko、Fabric,集中化管理平台Ansible、Saltstack,统一网络控制器Func等高级功能,涵盖自动化操作、系统管理、配置管理、集群管理及大数据应用等主题;案例篇(第13—16章)详细介绍了4个来自不同平台的运维案例,如何从零开始打造—个B/S自动化运维平台、如何打造Linux系统安全审计功能、如何构建分布式质量监控平台、如何构建桌面版C/S自动化运维平台,这个案例均来自实际生产环境。 五、作者介绍刘天斯 中国运维领域的偶像级人物,从事系统运维工作近10年,现就职于腾讯,担任高级系统工程师,负责腾讯CDN的运维工作;曾就职于天涯社区,担任架构师兼高级系统工程师。热衷开源技术的研究,包括系统架构、运维开发、负载均衡、缓存技术、数据库、分布式存储及云计算等领域,擅长大规模集群的运维工作。崇尚“技术让工作变得更简单”的理念,开发并维护着”天涯LVS管理系统”、“天涯服务器管理系统”、”在线图片处理平台”、”Varnish缓存推送平台”等7个开源项目.对Python如何在运维中发挥作用进行了深入研究,而且在腾讯内部开展了大量实践,基于Python开发了集群自动化操作工具yorauto,在腾讯各大事业群广泛使用,同时入选公司精品推荐组件。 曾多次荣获新浪技术、51CTO和ITUB等社区评选的”博客专家”称号。个人运维着博客“运维进行时”(http://biog.liuts.com/index.php),从2007年至今,笔耕不辍,坚持分享自己在运维领域的经验和智慧.拥有发明专利4项。 六、推荐理由国运维领域偶像级专家、腾讯高级系统工程师在天涯社区和腾讯近10年运维实践的经验和智慧结晶不仅详尽介绍了服务监控、数据报表、系统安全等基础模块,深入讲解了自动化操作、系统管理、配置管理、集群管理及大数据应用等高级功能。七、媒体评价  市面上介绍互动的、面向对象的Python编程语言的书有很多,其强大而又灵活的特性,使其成为很多企图通过工具来实现工作(半)自动化的运营同学的首选。更难得的是,本书作者以其在腾讯游戏运营的工作经验,辅以大量实际的案例来讲述了他是如何使用Python来解决诸如监控、安全、订制报表和大数据应用等问题,以及构建一个自动化运维的平台来提升运维工作效率,值得一看。   ——腾讯互动娱乐运营部副总经理崔晓春   《Python自动化运维:技术与最佳实践》是结合刘天斯先生超过十年,在互联网行业“天涯在线”及“腾讯”等的工作经验,实际贴近工作应用场景所撰写的书籍,没有浮夸的文藻修饰,只有实际的落地执行和动手操做,可以作为大家在工作中的工具书。   全书以系统信息的了解、采集、监控,以及信息良好地输出为开头,以提升个人工作效率的基础运维工具为承接,再深入介绍集中化管理海量机器、系统的方案,并且搭配实际的例子进行介绍,相信能够覆盖读者的大部分应用场景需求,也能够给予读者相关领域的入门指引。   刘天斯先生的精神也是很值得推广和赞赏的,在繁忙的工作之余,能够思考、总结,并且能够以文字的方式与更多的人分享和传承,是除了书籍本身之外,我学习到的重要收获。   腾讯互动娱乐运营部数据中心总监孙龙君   在移动互联和大数据时代,无论是出于对效率的追逐,还是应对海量规模运维,自动化运维都是企业的必然选择。Python因为具有简单、灵活、功能强大和适合脚本处理等优点,在运维领域被广泛使用,让很多运维工程师从烦琐的日常工作中解放出来。   天斯是运维领域的资深专家,在互联网行业工作多年,不仅具备解决各种运维难题的强大能力,拥有多项专利,还开发过多个运维利器,非常受欢迎。本书是国内第一本讲述Python如何应用在自动化运维领域的著作,是基于天斯对Python自动化运维的深入研究,以及在海量互联网实战经验中总结提炼而来,具有高度可读性和实战价值。   ——腾讯架构平台部运维服务中心总监孙雷   刘天斯和我相识于腾讯,期间我正在负责腾讯云平台相关工作。腾讯有一个优良的新员工培养体系,那就是导师制度。有幸作为天斯的导师,让我接触并逐渐深入了解天斯。所以当天斯找到我为本书写推荐语时,我欣然应允,因为共事期间天斯给我留下了深刻的印象。时至今日,在中国的互联网企业里,我认为天斯都是最优秀的架构师之一。   天斯来腾讯工作之前,在中国著名的天涯社区负责整个社区的运维工作,经历了天涯社区从Windows平台到开源架构的大改造,因此对B/S相关产品的技术架构和细节非常熟悉;而天斯又是一个在技术输出领域非常活跃的人,自己维护的技术博客荣获2010年度十大杰出IT博客,在中国互联网技术领域小有名气。   记得来腾讯不到两个星期,天斯就向我提交了一份关于腾讯业务自动化运维的技术文档,从业务的部署到监控再到容灾等,都理解得较为深刻。这份输出文档让我眼前一亮,当时第一感觉是这个典型的在生活中不善言辞的IT男,一定对云计算中的自动运维管理有独到的思维和沉淀。   Python语言作为获得2010年度编程大奖的语言,具备诸多优点:简单、开源、速度快、可移植性强、可扩展性强、面对对象、具备丰富的库等;更可贵的是,作为“胶水语言”,可以把Python嵌入C/C++程序等,从而向程序用户提供脚本功能。   本书从互联网业务自动运维的场景出发,以Python语言为基础,总结了大量的实战案例,这些都是作者在十余年的大型互联网运维工作中的宝贵经验,相信会给读者带来不少的启发。   更难能可贵的是,作者能从通俗易懂的角度出发,由浅入深地剖析Python自动运维管理之道。因此,目前Python水平处于各种层次的读者均能有效地阅读和吸收,各取所需。   最后,感谢天斯能给中国互联网从业者带来这么好的分享,感谢我们的老东家——中国互联网的黄埔军校——腾讯培养了一批又一批的杰出架构师。   开卷有益,我想应该就是指的此类书籍吧。   ——微赢宝创始人许明   “Operation”,运维在互联网时代一直有着举足轻重的地位,而近两年运维本身这个群体也变得强大起来,最为显著的特征就是运维人员所出的书越来越多,而都以“专”、“精”为卖点。这也是作为一名运维人员值得骄傲的地方。   伴随着“云时代”、“物联网”的到来,无论数据,还是服务器规模都达到了空前的庞大,企业对运维工作人员的要求也由之前的运维维护转为“DevOps”,即研发型运维;在这个充满挑战的时代,任何一个岗位都需要保持持续学习的状态,而运维更不例外。 八、封面【当当】 http://product.dangdang.com/23593858.html【京东】 http://item.jd.com/11571426.html【亚马逊】 http://www.amazon.cn/%E5%9B%BE%E4%B9%A6/dp/B00P5VKZWW【天猫】 http://detail.tmall.com/item.htm?spm=a1z10.3.w4011-7555161747.28.SgDdii&id=42141530490&rn=3a7da8b28eea552fb6ebb6ed43ab024d&abbucket=18【China-pub】 http://product.china-pub.com/3804188
 0    0  550天前
hupei
92
香港服务器基本上已经成为中国第二服务器租用托管服务地,那国内服务器提供商这么多,为什么要香港服务器租用呢?兆恒伟业与大家一起来寻找这二者间的区别在哪里。一、不管是海外空间还是国内空间,它们的本质都是一样的,产品其实都是一样的,由于世界网络的分布情况不同,各国家的网络环境不同,导致国家与国家之间的互相访问经常会出现:访问速度慢、网页打不开等问题,为了要解决类似的问题,针对不同的客户群体,就需要选择不同的空间。二、香港服务器与我们国内服务器相比,在使用上会有什么不同呢?(1)、使用香港服务器不需要备案。国内服务器备案的过程相信不用多说,大家都有体会。而网站如果在期限内没有备案成功,那么就面临被关闭的威胁,香港是民主法治社会,香港服务器不存在备案问题,所以你可以放心使用,不必为备案费心。(2)、国内服务器有电信和网通之分,如果选择的服务器是电信,那网通用户访问速度受到限制。如果是网通,那么电信用户又会受到限制。香港空间不受访问者选择的网络服务商速度限制,也就是不论用户是电信还是网通,打开速度都一样的快,这样就可以为你的站留住大批潜在用户。(3)、香港的网络直达世界网络线路,在海外地区打开的速度非常快。在全球范围内访问的速度都会有所提高,虽然在我们国内访问不如国内服务器快,必竟客户才是上帝!客户使用方便者是最重要的。(4)、香港空间可以选择是否独立IP。其主要的原因是香港的IP资源丰富,而大陆的IP资源稀缺,不可能提供独立IP的空间,使用独立IP的好处就是可以让你免受其它空间的影响。三、什么样的网站适合使用香港空间?(1)做外贸业务的网站(2)备案不能通过的网站(3)个人网站(4)不想备案的网站(5)不想存在国内电信网通互联不互通的情况这就是为什么香港服务器受到国内的热爱的原因。香港服务器cn2+pccw双线路质量保证,免备案。香港服务器如何维护?大家都知道服务器稳定运行对于网站或程序运行至关重要,那怎么才能保障服务器稳定的运行呢。一、了解服务器知己知彼才能百战不殆,如果对自己维护的服务器都不了解,何以能正确解决服务器宕机、补丁安装,漏洞修复等问题。1.服务器操作系统类型,版本,补丁版本;2.服务器硬盘使用率;3.服务器运行业务的情况;4.服务器网络配置情况等。二、定期检查1.服务器电源状态检查;2.服务器风扇状态检查;3.服务器硬盘健康状态检查;4.服务器系统日志检查。三、定期备份1.备份服务器操作系统;2.备份数据库四、软件安装1.安装FTP、HTTP等基础软件;2.系统参数调整环境变量和路径;3.网络参数配置调整。五、故障处理设备只要运转,就难免发生故障,你应该在第一时间定位故障、从而尽快解决故障、减少故障影响时间。香港服务器操作系统有哪些,特点是什么?香港服务器就跟我们平时使用的电脑一样,只不过香港服务器对性能跟安全性能非常高,所以它要想正常使用还是得装操作系统。那香港服务器操作系统有哪些呢?特点优势又有哪些?      要想弄清楚前面两个问题,首先得先搞清楚香港服务器操作系统是什么东西?它是指安装在服务器上的操作系统,及好比如Web服务器、应用服务器和数据库服务器等。是企业网站IT系统的基础架构平台,香港服务器操作系统要承担额外的管理、配置、稳定、安全等功能,处于每个网络中的心脏部位。      它主要分为四大种类:NETWARE系统、LINUX系统、WINDOWS系统以及UNIX系统。  它们的特点分别是:      1.NETWARE系统:它对网络硬件要求不是很高,有着比较好的批处理功能和安全跟稳定的系统性能,适合对网络硬件要求不高的企业及事业单位。如,学校教学等。      2.LINUX系统:新型的网络操作系统,安全性比Windows系统高,它的源代码是开放的,所以它可以得到很多应用程序,但是现在它主要运用于一些中高档的服务器总。      3.WINDOWS系统:这应该是我们比较熟悉的操作系统了,不仅可以在个人电脑中安装,也可以在香港服务器中安装,它对服务器的硬件要求比较高,稳定性没Linux操作系统的高,所以一般这类操作系统是安装在中低档服务器。      4.UNIX系统:这类型系统主要是支持大型的文件系统服务跟数据服务等的应用。这类型操作系统的功能比较强大,而且它的操作系统很稳定安全性能也很好,但是它是以很多命令进行操作,对不熟悉的用户来说,比较难掌控,所以不适合小型的局域网,只适合哪些大型的企业、网站以及事业局域网。
 0    0  550天前
Powered by 虎佩中国
© 2012-2020 HuPei.net
您的IP:18.207.106.142,2020-09-24 03:58:02,Processed in 0.02507 second(s).
Powered by HuPei.net
免责声明:本站内容均来自网络,如有侵权请联系站长删除,一切后果概不负责!