羊坊店不眠夜(续)
作者:田逸([email]sery@163.com[/email])
 
有了上次的教训,这次我把我所有的操作系统都拿上了,所以心里比较踏实。我们从3环往羊坊店赶,胡子把车开到航天桥旁的一个九头鸟吃晚饭,人倒是很多,可服务质量确实太差,半天没人理,好不容易来了一个菜,等这个菜吃完,剩下的菜似乎遥遥无期,肚子那个饿呀!到最后弄得没胃口吃了个半饱。
很快就到羊坊店了,可是胡子居然忘记拿出入证了,联通的人不让进去,于是到处打电话找人,终于算是进去了。等到机柜边准备装系统的时候,却发现光盘包没带进来,可能是在外面等待进机房那会丢在外面了,赶快跑出去,乖乖!还在联通接待大厅的沙发上,悬着的心放了下来。现在,我就等胡子备份完数据,就可以开始安装系统。把光盘放进光驱,我晕—光驱托盘按不进去,锁不了托盘。关电源再开机,还是锁不了,这下麻烦了。怎么办呢?把机器从机柜里先搬出来吧!把机盖打开,看了一下这个机器的结构,胡子说拿他笔记本上的光驱代替(是可插拔的那种);但是没有成功,因为这个坏了的光驱居然没有连接线,不知道先前是谁把它弄掉了。不过幸运的是,主板上还预留了一个IDE接口,我们只要找一个IDE光驱即可克服这个困难。向机房的人借,没有;那就在运行着的服务器上下一个吧,大不了停机几分钟。说干就干,又把一个笨重的服务器拉下机架,费了好大的劲才把螺丝拧掉,终于得到一个可用的光驱。
接下来安装linux系统,这次用的是centos 5.大概10分钟就安装完毕,设置好网络参数,再关闭系统不必要的服务(命令:ntsysv),关闭 SElinux (修改文件/etc/sysconfig/ selinux,使SELINUX=disabled),然后重起系统看看系统的运行状态,一切皆正常,把它再放到机柜里去吧。
插上网线,插上电源,开机。在远端用笔记本ping这个刚装好的服务器的ip地址,通了,很好。用securecrt来连接这个服务器,也很顺利地连接成功了。先修改一些内核参数,我预先写了一个脚本(见下图),把它复制到服务器,直接运行这个脚本,然后用命令
#!/bin/bash
#kernel optimize ,create by 2007-7-29
 
#enable broadcast echo protection
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
 
#disble source routed packets
for f in /proc/sys/net/ipv4/conf/*/accept_source_rout; do
    echo 0 > $f
done
 
#enable tcp syn cookie protection
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
 
#disable icmp redirect acceptance
for f in /proc/sys/net/ipv4/conf/*/accept_redirects; do
    echo 0 > $f
done
 
#don't send redirect messages
for f in /proc/sys/net/ipv4/conf/*/send_redirects; do
    echo 0 > $f
done
 
#drop spoofed packets
for f in /proc/sys/net/ipv4/conf/*/rp_filter; do
    echo 1 > $f
done
 
#log packets with impossible addresses
for f in /proc/sys/net/ipv4/conf/*/log_martians; do
    echo 1 > $f
done
Sysctl –a | grep tcp_syncookies 看内核参数的值是否真的改变了。我们装这个系统的目的是用
     
它来做LVS-DR的控制器,接着我就来干这个事情。预先已经做好了脚本,把它上传到服务器,安装包ipvs后,运行该脚本即可。我把脚本放在下面供大家参考,至于具体的情况将另外行文阐述。
#!/bin/bash
# description: start LVS of Directorserver
VIP=61.135.155.100
RIP1=61.135.155.101
RIP2=61.135.155.102
 
./etc/rc.d/init.d/functions
 
case "$1" in
start)
echo " start LVS of DirectorServer"
# set the Virtual IP Address and sysctl parameter
/sbin/ifconfig eth0:0 $VIP broadcast $VIP netmask 255.255.255.255 up
echo "1" >/proc/sys/net/ipv4/ip_forward
#Clear IPVS table
/sbin/ipvsadm -C
 
#set LVS
/sbin/ipvsadm -A -t $VIP:80 -s rr
/sbin/ipvsadm -a -t $VIP:80 -r $RIP1:80 -g
/sbin/ipvsadm -a -t $VIP:80 -r $RIP2:80 -g
 
#Run LVS
/sbin/ipvsadm
;;
stop)
echo "close LVS Directorserver"
echo "0" >/proc/sys/net/ipv4/ip_forward
/sbin/ipvsadm -C
/sbin/ifconfig eth0:0 down
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac
 
在这里不妨运行命令 ipvsadm –l 检查一下 LVS-DR的状态。状态正常的话,开始下一步:设置LVS-DR客户端。
 
Linux的客户机很好办的,也是用一个预先准备的一个脚本,上传到目标服务器(真实服务器)后,直接运行就可以了。有一个特殊的地方是ip地址的子网掩码是255.255.255.255,对linux来说没什么问题,但对windows就不那么容易了。这个工作留给胡子体验,他先在网上邻居属性修改本地连接的tcp/ip属性,输子网掩码为255.255.255.255,他当然不会成功,然后我告诉他进注册表改,并告诉他修要更改的位置。我自己做实验的时候,很容易在测试机把注册表改好了,但胡子的注册表键值是16进制,这4个255把他折腾够呛,怎么搞都不是 255.255.255.255。最后想出一招:用我的笔记本把注册表打开,再把键值以16进制显示,然后挨个敲进去,才解决了这个麻烦。
 
最后该做总体测试了,从外面访问LVS-DR控制器,看是否能正常把请求转发到真正的服务器,加了4个服务器(2个web,2个windows的MMS),测试正常。还有一步,加防火墙规则,测试通过,等我们把这些做完,凌晨2点了,比上次早一个小时,又一个不眠之夜。
#!/bin/bash
#LVS-DR 客户端脚本
#description : start realserver
VIP=172.16.62.106
./etc/rc.d/init.d/functions
case "$1" in
start)
echo " start LVS of REALServer"
/sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
;;
stop)
/sbin/ifconfig lo:0 down
echo "close LVS Directorserver"
echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac
chomd 755 /etc/init.d/lvsrs
service lvsrs start

本文转自sery51CTO博客,原文链接: http://blog.51cto.com/sery/37496,如需转载请自行联系原作者

羊坊店不眠夜(续集)相关推荐

  1. 又有大佬加入! 「3点钟区块链」之大年初五:不眠夜共襄区块链应用落地 ! (附96小时实录)

    又有大佬加入! 「3点钟区块链」之大年初五:不眠夜共襄区块链应用落地 ! (附96小时实录) 本文作者:AI金融评论 2018-02-21 12:13 导语:他们就区块链底层技术发展路径.国际金融监管 ...

  2. 2006年6月26日之足球不眠夜---意大利+黄健翔VS澳大利亚

    这两天一直想写点什么的,我的blog毕竟太空白.昨天凌晨看完了世界杯的一场16进8的比赛,是我最喜欢的意大利队,对亚洲的澳大利亚.这场比赛,我是期待了好几天,澳大利亚的主教练是荷兰神奇教练希丁克,人们 ...

  3. VR跨界一触即发,探秘87870“魔都之夜”VR派对

    当世界还在惊呼VR虚拟现实时代的来临,一场史无前例的"VR+夜店"跨界大趴已经不期而至. 当世界还在惊呼VR虚拟现实时代的来临,一场史无前例的"VR+夜店"跨界 ...

  4. 用一个创业故事串起操作系统原理(一)

    来自:刘超的通俗云计算 第一回:小马创业选园区,开放标准是第一 小马最终还是决定走出大公司,自己去创业了. 他之所以这样决定,有两个原因,一方面,大企业多年的工作经验让他练就了从前端到后端,从Web到 ...

  5. 深入解析和反思携程宕机事件

    携程网宕机事件还在持续,截止28号晚上8点,携程首页还是指向一个静态页面,所有动态网页都访问不了.关于事故根源,网上众说纷纭.作为互联网运维老兵,尝试分析原因,谈谈我的看法. \\ 宕机原因分析 \\ ...

  6. 【连载】Scala程序设计:Java虚拟机多核编程实战——简介

    可以在JVM上编程的语言有很多.通过这本书,我希望让你相信花时间学习Scala是值得的. Scala语言为并发.表达性和可扩展性而设计.这门语言及其程序库可以让你专注于问题领域,而无需深陷于诸如线程和 ...

  7. 中国首篇Science机器人子刊!北航软体机器人实验室四年成果登上封面长篇

    来源:北航新闻网.机器人大讲堂 概要:通过这三项关键技术,我们成功实现了机器人样机能够像真正的䲟鱼一样牢牢吸附在物体表面,并且通过内部鳍片的主动抬起运动显著增大摩擦力. 重磅 惊喜,北京时间9月21日 ...

  8. 一起谈.NET技术,也玩MVC3.0 Razor自定义视图引擎来修改默认的Views目录结构

    刚刚爱上MVC3.0,几个不眠夜的学习越来越有趣.今天随手尝试自定义Mvc3.0的视图引擎,虽然已成功,但是还发现有点小疑问.随手贴出来希望大家指教指教. MVC的视图文件目录被固定/Views目录内 ...

  9. 先考学历还是先提升能力?

    特别说明:本文针对错过了读书时代并且已经就业的学历不高的朋友,如高中.中专学历!    其实,大多数有学历(专科以上)的人,不知道那些没学历的同学,在找工作(多为大公司或门户网站)上受的歧视,当1个, ...

  10. 25岁社招进阿里,从电商到有赞新零售,他仅1年就打开了马云一直想做的新领域!

    最近关于「新零售」的声音此起彼伏:阿里巨资收购高鑫零售,腾讯确认入股永辉超市-- 自2016年10月马云第一次提出了「新零售」概念之后,各巨头跑马圈地,线下成为了必争之地,新零售的蓝海才刚刚打开. 而 ...

最新文章

  1. Spring MVC+Stomp+Security+H2 Jetty
  2. 编译linux内核的错误,linux内核编译错误
  3. 解决windows图片查看器背景色变成米黄色
  4. jQuery选择器全集详解
  5. 如何用babel将ES6转换
  6. AQS理解之二,自己设计一个锁
  7. 个人家用nas_期待已久终于来了!绿联推出NAS私有云,填补爆发式存储需求
  8. Python使用修饰器强制函数只接收关键参数
  9. 整个线上营销_而言,最重要的是什么?
  10. win11beta渠道升级的如何改为正式版 Windows11beta版升级正式版的步骤方法
  11. Gstreamer衬垫(pad)支持的媒体类型(三)
  12. Aliplayer的各种坑
  13. .CR2格式文件怎么快速批量转换成JPG等格式
  14. 开源网站GitHub把自己给开源了
  15. 阿里中间件seata源码剖析七:saga模式实现
  16. 简述MES系统的9大核心功能模块
  17. After Effects CS4 \CS5\CS6\CC2015\CC2017\CC2018\CC2019安装包及教程
  18. 如何升级win10.
  19. 巴西柔术第一课:骑乘式上位技术
  20. Linux下装Matlab2014

热门文章

  1. 让FineUI数据绑定支持dynamic对象
  2. Coding theano under remote ubuntu server from local Mac (在本地mac机器上,写、跑、调试、看-远程ubuntu上的theano代码)...
  3. 实验题目用正交多项式做小二乘曲线拟合
  4. 【LeetCode】162-寻找峰值
  5. CF1096F Inversion Expectation
  6. 利用Bootstrap Paginator插件和KnockoutJS完成分页功能
  7. Sql Server 性能优化之包含列
  8. 关于XP和win7 的IIS发布问题
  9. IIS7的Gzip压缩模式和IIS6的Gzip压缩模式性能对比 【转】
  10. 49个Python学习资源:从初学者到高级玩家都有了