1、Linux网络服务课程设计指导书152020年4月19日文档仅供参考,不当之处,请联系改正。 LINUX LINUX系统课程设计指导书 计算机与信息科学系陈显龙 -12-24 一目的本课程是计算机应用(网络)所开设的一门重要实践课程,主要要求学生掌握LINUX系统原理和技术在实践中的应用。本课程设计的目的是使学生在理论学习的基础上,发挥自已的主观能动性,来解决一些实际数据和服务的安全应用问题。在此基础上,真正理解和掌握LINUX的应用,达到课程的教学目的。二题目时间:十八周 地点:T603 、604 每位任选下列项目中任选二题,查阅相关文献、了解相关的系统,要求完成规定的各项任务。1) Ngi
2、nx+PHP+MySQL双机互备、全自动切换方案2) 搭建可承受3万以上并发连接数的LNMP服务3) Linux服务器系统监控框架与MSN、E-mail、手机短信报警的实现4) 使用Linux的rsync命令实现:多服务器镜像同步5) 基于 inotify + rsync 的大量文件的多服务器自动同步6) Ubuntu下使用LINUXproxy+heartbeat搭建WEB负载均衡7) SUSE Linux基于HeartBeat、Mon、Rsync搭建企业服务器的双机配置过程三任务完成形式1 完整的软件系统 最终必须向指导老师提交完整的电子版的配置过程截图、运行效果截图(均需要加上自已的IP地
3、址),配置文件、以及使用说明文件等。课程设计报告(详细要求请参考附录二)课程设计报告总体上主要包括以下几个部分:1)封面2)目录3)课程设计报告正文4)软件安装、使用或者配置说明5)参考文献四总体要求 根据所给的实验指导书的要求,从中选择项目,应用所学的知识,完成题目所规定的各项要求。总体要求如下:1 课程设计报告正文字数不少于5000汉字,概念清楚、叙述正确、内容完整、书写规范。2 课程设计中必须按指导书要求,综合应用所学的LINUX系统解决实际问题,有必要的理论分析,设计要有合理的依据。独立完成课程设计,不得抄袭她人。3 功能正确、有一定实用性,鼓励创新。五工作阶段与考核方法大致上可分成五
4、个阶段: 1资料查阅准备阶段(15%)2分析设计阶段(35%)3设计调试阶段(40%)4课程设计报告书写阶段(10%)5验收阶段 考核方法: 只有程序验收经过后,才能按以下方法核定本次课程设计的总成绩,因未能独立完成设计(特别是抄袭)或概念不清的同学,总成绩将核定为不及格。总成绩由以下几个部分决定:1 考勤、纪律、实验室卫生2 工作量(查阅资料工作量、功能多少、难度、经历的曲折)3 关键技术4 实用性、创新5 课程设计报告(叙述、书写规范、字数)6 动手能力、分析问题解决问题能力7 答辩的情况(答辩时会问关于系统实现和本作品相关的理论知识的问题)8 互助协作方面的贡献及能力六任务具体要求1、N
5、ginx+PHP+MySQL双机互备、全自动切换方案在实际企业应用中,某台“Nginx+PHP+MySQL”接口数据服务器,扮演的角色十分重要,如果服务器硬件或Nginx、MySQL发生故障,而短时间内无法恢复,后果将非常严重。为了避免单点故障,设计此套方案,实现了双机互备、全自动切换,故障转移。自动切换流程(1)、主机默认绑定内、外网虚拟IP,当主机的MySQL、Nginx无法访问或服务器宕机,主机上的failover.sh守护进程会自动摘除自己绑定的内、外网虚拟IP(如果主机上的failover.sh死掉,无法摘除自己绑定的虚拟IP也没关系),备机上的failover.sh守护进程会自动接
6、管备机原来绑定的内、外网虚拟IP,并发送ARPing包给内、外网网关更新MAC,强行接管。(2)、备机绑定虚拟IP后,会发送ARPing包给内、外网网关,通知网关更新虚拟IP的MAC地址为备机的MAC地址,从而保证了切换后能够经过虚拟IP及时访问到备机。(3)、如果主机的MySQL、Nginx启动起来,全部恢复正常访问,主机上的failover.sh守护进程会检测主机上的MySQL数据是否已经完全从备机上同步过来。如果同步延迟时间为0,主机会自动接管内、外网虚拟IP,并发送ARPing包给内、外网网关,而备机也会自动摘除内、外网虚拟IP。(4)、整个切换流程均由failover.sh自动完成,
7、无需人工处理。2)搭建可承受3万以上并发连接数的LNMP服务在高并发连接的情况下, Nginx同时能够作为7层负载均衡服务器来使用。Nginx 0.7.51 + PHP 5.2.8 (FastCGI) 能够承受3万以上的并发连接数, 4GB内存的服务器+Apache(prefork模式)一般只能处理3000个并发连接,因为它们将占用3GB以上的内存,还得为系统预留1GB的内存。在3万并发连接下,访问Nginx 0.7.51 + PHP 5.2.8 (FastCGI) 服务器的PHP程序,依然速度飞快。使得国内使用 Nginx 作为 Web 服务器的网站也越来越多,其中包括新浪博客、新浪播客、网
8、易新闻等门户网站频道,六间房、等视频分享网站,Discuz!官方论坛、水木社区等知名论坛,豆瓣、YUPOO相册、海内SNS、迅雷在线等新兴Web 2.0网站。请实现这个方案和目标。3)Linux服务器系统监控框架与MSN、E-mail、手机短信报警的实现一、系统监控接口程序(interface.php)具有的报警方式、MSN实时报警监控程序每次检测到故障存在、或者故障恢复,都会发送短消息到管理员的MSN。、手机短信报警、工作日早上10点之前,晚上6点之后,以及周六、周日,监控程序检测到故障,会调用手机短信接口,发送短信给管理员的手机。、如果监控程序多次检测到同一台服务器的同一类故障,只会在第一
9、次检测到故障时发送一条“故障报警”短信。服务器故障恢复后,监控程序会再发送一条“故障恢复”短信。注:如果没有手机短信网关接口,能够试试中国移动通信的邮箱,具有免费的邮件到达手机短信通知功能,能够将收到的邮件标题以短信的形式发送到手机上。、电子邮件报警、如果监控程序多次检测到同一台服务器的同一类故障,只会在第一次检测到故障时发送一封“故障报警”邮件。服务器故障恢复后,监控程序会再发送一封“故障恢复”邮件。4)使用Linux的rsync实现:多服务器镜像同步实现功能:当用户在本地客户端某目录内建立、修改、删除目录或文件、修改目录或文件的属性,只要执行相同的shell脚本,rsync就会自动找出有改
10、动或删除的数据,将其传送到服务器上,使服务器端某目录内的数据跟本地客户端某目录内的数据保持一致。5)基于 inotify + rsync 的大量文件的多服务器自动同步使用 Linux 2.6 内核的 inotify 监控 Linux 文件系统事件,被监听目录下如果有文件发生修改,sersync 将经过内核自动捕获到事件,并将该文件利用 rsync 同步到多台远程服务器。sersync 仅仅同步发生增、删、改事件的单个文件或目录,不像rsync镜像同步那样需要比对双方服务器整个目录下数千万的文件,而且支持多线程同步,因此效率非常高。无论编辑经过 Web 还是 FTP 上传图片、视频、附件,还是系
11、统工程师直接去CMS发布服务器上增加、修改、删除文件,干完这些事情后不用做任何处理,sersync 会自动将发生增、删、改事件的文件同步到远程服务器。6)Ubuntu下使用LINUXproxy+heartbeat搭建WEB负载均衡使用ubuntu+LINUXproxy+heartbeat搭建大规模WEB集群环境,实现负载均衡。LINUXproxy提供LINUX、负载均衡 以及基于TCP和HTTP应用的代理, Heartbeat用于实现故障转移,当一台机器DOWN后自动切换到备用机器7)Suse linux基于HeartBeat、Mon、Rsync搭建企业服务器的LINUX系统Suse企业版里提
12、供的LINUX软件是一款专业的高可用集群软件产品,它不但仅是一款双机热备软件,它还为您提供Linux平台上完整的LINUX解决方案。当集群中的某个节点由于软件或硬件原因发生故障时,集群系统能够把资源切换到其它健康的节点上,使整个系统能连续不间断的对外提供服务,从而为机构24x365的关键业务提供了可靠的保障,达到了系统99.999%的LINUX和可靠性。SuSE Enterprise Linux 10.0是内置Linux 2.6.16内核的企业级服务器,较之SuSE Enterprise Linux 9.0,它在性能、可扩展性、易管理性和安全等方面都予以加强,并有众多硬件和应用软件支持。Hea
13、rtBeat是一个LINUX解决方案,其官方网站是 LINUX.org。HeartBeat当前被广泛地应用,是很多商业LINUX软件的重要组成部分。大多数Linux厂商已经把它很好地集成在自己的系统中,例如SuSE Linux、RedLINUXt和Debian Linux等。另外,HeartBeat也能很好地部署在Solaris和FreeBSD系统上。Mon是一个后台服务运行情况的监控和告警软件,能够对大多数标准服务进行监控和告警,其中包括SMTP服务、Telnet服务、FTP服务、NNTP 服务、HTTP服务、POP3服务、Samba服务和NFS服务等,还能够自己编写告警事件和自定义服务。在
14、本系统中,将使用Mon对两台主机的网络连接情况和服务运行情况进行监控,目的是及时告警,而且自动恢复服务。 Rsync是一个用于数据同步的软件,除了数据拷贝外,还有增量备份、同步owner、group和文件权限等重要信息的功能。在本系统中,使用 Rsync来同步主服务器和备用服务器的数据。要求使用SuSE Enterprise Linux 10.0作为系统平台(使用其它Linux平台在安装部署时可能有小差异),在其上采用HeartBeat、Mon和Rsync等开源软件打造了一个高可用系统。LINUX网络服务课程设计题目: 专业: 年级: 小组成员: 指导教师: 陈显龙 老师 时间: 地点: 东莞
15、理工学院城市学院计算机与信息科学系制 12 月课程设计说明书其它格式规定一、纸张和页面要求A4纸打印(手写的用学院标准课程设计说明书用纸);页边距要求如下:左边距为2.5厘米,上、下、右边距各为2厘米;行间距取固定值(设置值为18磅);字符间距为默认值(缩放100%,间距:标准)。二、装订页码顺序(1)封面,(2) 目录(注明页码),(3) 正文,(4) 参考文献。 装订线要求在页面左边。三、章节序号按照正式出版物的惯例,章节序号的级序规定如下:1、1.1、1.1.1、(1)、四、封面采用统一规格,请参考本文档上一页所给出的封面格式。五、目录三号、黑体、居中、目录两字空四格、与目录的正文空一行
16、。六、正文正文的页数不少于10页(不包括封面、目录、参考文献等),正文字数不少于8000。正文的章节目序号按照正式出版物的惯例,章节目序号的层次顺序依次规定如下: 1、 1.1、 1.1.1、 (1) 正文一般分57个部分,参考下面的格式来写:(1)前言。概述所作题目的意义、本人所做的工作、及系统的主要功能;(2)系统分析。分析和描述所设计系统的基本要求与内容;(3)功能设计。描述及绘制出系统的功能结构框图;(4)所遇到的问题及分析解决。(5)系统特色及关键技术。 必要时给出关键部分源代码,并准确指出其在程序中位置(文件名、行号)。(6)测试。从多方面对软件功能和性能的测试,说明功能的实现情况
17、。(7)结论。完成情况、有待改进之处、对未来改进的展望、特殊说明、心得体会等。正文的主要内容必须是对自己所作的设计工作的描述,不得大量抄录对特定软件技术的说明性文字和程序代码。设计方案图和软件运行界面的截图的总数不得超过10个,每个图形的大小不得超过1/3页大小(个别流程图等可适当不受限制)。 正文字体用小四,宋体。各级标题参考附录的毕业设计的范文。所有的图的下方都要编号和命名, 比如 图2-2 系统结构图,其中前一个数字是代表章,后一个代表这一章的所有图中的序号。所有的表的上方都要编号和命名,比如 表2-2 证书结构,数字用法如上。正文的页眉统一采用“桂林电子科技大学课程设计(论文)报告用纸
18、”。注意,要在正文和前面部分之间分节,这样才能保证页眉不出现在封面。文中格式应当统一,首行都要缩进两个汉字位置。七、谢辞如果得到了同学的帮助,需要写出详细的谢辞,必须指出名字、帮助的内容和工作量。这些工作将计入这些同学的平时成绩。鼓励去答疑,老师给予的帮助是本职工作,因此无需专门写谢辞,能够省略这一部分。八、参考文献参考文献要另起一页,一律放在正文后,不得放在各章之后。只列出作者直接阅读过或在正文中被引用过的文献资料,作者只写到第三位,余者写“等”,英文作者超过3人写“et al”。几种主要参考文献著录表的格式为:专(译)著:序号著者.书名(译者)M.出版地:出版者,出版年:起止页码.期 刊:
19、序号著者.篇名J.刊名,年,卷号(期号):起止页码.论 文 集:序号著者.篇名A编者.论文集名C .出版地:出版者,出版者. 出版年:起止页码.学位论文:序号著者.题名D .保存地:保存单位,授予年.专利文献:专利所有者.专利题名P .专利国别:专利号,出版日期.标准文献:序号标准代号 标准顺序号发布年,标准名称S .报 纸:责任者.文献题名N.报纸名,年月日(版次).请同学们参考一下的例子写:参考文献(黑体四号、顶格)1 王传昌.高分子化工的研究对象J.天津大学学报,1997,53(3):17.2 李明.物理学M.北京:科学出版社,1977:5862.3 Gedye R,Smith F,We
20、staway K,et al.Use of Microwave Ovens for Rapid Orbanic Synthesis.Tetrahedron Lett,1986,27:279.4 王健.建筑物防火系统可靠性分析D.天津:天津大学,1997.5 姚光起.一种痒化锆材料的制备方法P.中国专利:,1980-07-03.6 GB3100-3102 00011994,中华人民共和国国家标准S.(以上,序号用中扩号,与文字之间空两格。如果需要两行的,第二行文字要位于序号的后边,与第一行文字对齐。中文的用五号宋体,外文的用五号Times New Roman字体。)九、附录1.安装说明,安装的必须环境,操作系统的版本、所需的软件的名称和版本。2.使用说明。3. 软件开发进程日志,版本和功能更新情况。4必要的支持文献和资料。5.其它。