基于Django的设备运维系统设计与实现网络工程专业.docx
《基于Django的设备运维系统设计与实现网络工程专业.docx》由会员分享,可在线阅读,更多相关《基于Django的设备运维系统设计与实现网络工程专业.docx(37页珍藏版)》请在课桌文档上搜索。
1、摘要1Abstract2前言3第1章绪论41.1 选题原因及意义41.2 现状分析41.3 设计的主要内容41.4 本文的组织结构5第2章关键技术概述62.1 Web开发技术62.1.1 基于Python的Django框架62.1.2 BoOtStraP框架72.2 后台交互技术82.2.1 PythOn的语言特点82.2.2 MySQL数据库简介92.3 本章小结9第3章设备运维系统需求分析与系统设计103.1 系统功能模块需求分析103.2 系统的整体设计113.2.1 系统的网络架构113.2.2 系统的总体结构123.3 系统数据建模133.4 系统性能需求分析143.5 本章小结14
2、第4章设备运维系统的实现154.1 搭建基础框架154.2 创建数据库154.3 主要功能模块的实现184.3.1 用户登录验证184.3.2 资产管理模块实现204.3.3 主机管理模块实现244.3.4 监控系统模块实现264.3.5 权限管理模块实现284.4 本章小结30第5章总结与展望315.1 总结315.2 展望31参考文献33致谢错误味定义书签。当今我国科技发展迅速,企业逐步推进IT技术的部署,增强信息化建设,日常事务处理更加依赖于计算机操作,对系统功能要求更加复杂,需要相关的运行维护人员对网络设备进行维护。传统的人工维护的管理方式单一且耗时费力,采用设备运维系统则可以大大提高
3、设备运维的高效便捷,从而降低人力成本。本文主要介绍设计基于Django框架的设备运维系统,以web界面进行批量管理运维,具有资产管理、主机管理、监控系统、用户权限管理等功能模块,实现自动高效化的运维管理方式。关键词:Django;Python;系统运维;网络管理AbstractNowadays,withtherapiddevelopmentofscienceandtechnologyinourcountry,enterprisesaregraduallyadvancingthedeploymentofITtechnology,strengtheninginformationconstructi
4、on,anddailyoperationsaremoredependentoncomputeroperations.Thefunctionalrequirementsofsystemaremorecomplex.Relatedoperationsandmaintenancepersonnelarerequiredtomaintainthenetworkequipment.Thetraditionalmanualmaintenancemanagementmethodissingle,time-consumingandlabor-consuming.Adoptingtheequipmentoper
5、ationandmaintenancesystemcangreatlyimprovetheefficiencyandconvenienceoftheequipmentoperationandmaintenance,therebyreducinglaborcosts.ThisarticlemainlyintroducestheequipmentoperationandmaintenancesystembasedontheDjangoframework.Itusesawebinterfaceforbatchmanagementandoperationandmaintenance.Ithasfunc
6、tionmodulessuchasassetmanagement,hostmanagement,monitoringsystem,anduserrightsmanagementtorealizeanautomaticandefficientoperationandmaintenancemanagementmethod.Keywords:Django;Python;Operation&Maintenance;NetworkManagement;前三随着计算机技术的快速发展,信息化建设的步伐越来越快,为了将人们从繁杂的事务中解脱出来,使事务的处理趋于条理化、高效化,各种类型的管理系统被设计开发出来
7、并且投入使用,这给我们的日常生活带来了极大的便捷,但是为了系统的运行稳定,我们需要运维人员对这些网络设备及服务器进行维护。传统的人工维护都是在设备出现故障问题被反馈之后才进行维护处理,运维人员在系统搭建成功完毕后不会主动去频繁查看系统中各个设备的运行状态。这种情况使得运维人员的工作变得被动且单一。同时,企业的系统基础架构的规模在不断扩大,部署的IT网络设备不断增加,为了确保系统的稳定运行,运维人员需要监控系统中各个设备,这给运维人员带来的繁重的工作量。本文主要研究实现自动化的设备运维系统,可以实现自动添加设备,收集设备配置信息入库,批量管理设备,以及对设备运行健康状态的实时监控,通过Web管理
8、的方式,使得运维人员可以批量管理设备,主动实时的维护设备,并且通过登录用户权限的管理,使得运维人员各司其职,工作互不干扰,从而大大提高工作效率,降低人为操作的失误风险,降低了运维的成本。第1章绪论本章内容介绍了开展这个课题设计的原因并且实现该课题设计的意义,分析了该设计方向的现状,以及概述了这个课题设计的内容。最后,介绍了本篇论文的组织结构。1.1 选题原因及意义选择本篇课题进行设计与实现的原因在于,现如今,应用系统的规模不断扩大,复杂程度逐步加深,IT运维需要尽快以自动化的运维方式取代传统的人工运维方式,设备运维自动化是未来运维管理的必然发展趋势,运维方式自动化可以极大提升对系统维护的可控制
9、性,可以让运维人员清晰的查看到设备的运行状态,为系统的稳定运行提供了保障,实现自动化的设备运维模式,可以极大的降低人为操作失误的风险,并且可以大量减少运维人员重复工作,极大的降低人工成本,保障日常事务处理正常运作,有助于提高工作效率。1. 2现状分析现阶段,我国作为全球发展速度最快的国家,现代化建设迅猛推进,无论是政府组织还是企业、事业单位都在积极推进信息化建设,日常工作中处理事务越来越依赖于IT设备,因而运维人员需要确保系统的稳定,系统中各个设备的状态正常则是系统运行稳定的关键。传统的运维机制模式较为被动,在日常的运行维护过程中,当设备出现问题后,运维人员才会对相关的问题进行处理,使得相关负
10、责的运维人员的工作繁重,同样使得工作效率低下。同时,传统的运维管理模式缺少对运维人员管理权限的定义以及负责相关设备责任的划分,导致在系统出现问题时难以快速准确的找到出现问题的设备,并且没法确保在出现问题时实时找到设备对应的负责运维人员。1.3 设计的主要内容本设计是基于Django框架的设备运维系统,以批量管理设备和充分利用资源为目标,以Web界面进行管理,采用用户登入接口,实现了资产管理、主机管理、监控系统、权限管理的功能模块,从而进行后台和网络设备的信息交互,为运维人员对系统设备进行管理提供极大便利。1.4 本文的组织结构本篇论文共分为五章内容,每章主要内容如下所述:第一章是绪论。绪论部分
11、阐述了设计的原因及意义,对于设计研究方向的现状分析以及设计的内容和本文的组织结构。第二章是关键技术概述。关键技术概述部分列举了该设计开发过程中所使用到的关键技术,并对其进行简要描述,包括Web开发所使用的Django框架和前端开发的BootStraP框架,以及后台设备交互使用的脚本语言PythOn、MySQL数据库的简要介绍。第三章是系统需求分析部分。系统的需求分析主要进行系统功能需求分析,分为资产管理、主机管理、监控系统、权限管理四个主要功能模块,并且对各个功能模块进行了具体的需求分析,最后对系统进行性能需求分析。第四章是设备运维系统的设计和实现部分。这个部分描述了系统的整体架构,介绍了数据
12、库和资产管理、主机管理、监控系统、权限管理四个主要功能模块的详细设计与实现。第五章是结束语部分。概括了本篇论文的主要内容,对本次设计所做的工作进行总结,反思了设计的不足之处及需要改进的部分,并对为未来发展方向展开设想。第2章关键技术概述本章主要阐述了系统所使用的关键技术,并对所采用技术的优势之处进行简要概述。2.1 Web开发技术网站架构采用的是基于Python的Web框架Django,前端实现采用的是来自Twitter的前端框架Bootstrap02.1.1 基于Python的Django框架DjangO框架是采用PythOn语言写成的Web应用框架,它采用MVC的结构,但是Django框架
13、会自动处理由控制器Controller接受的用户输入的部分,网页服务器本身在派发工作的时候就隐含了控制的逻辑,网站框架中TenIPlatC模板文件的套用又是最常被使用的网页显示技巧,所以DjangO采用了MTV的框架模式,主要使用模型Modeh模板TemPlate和视图VieW三个部分搭配所形成的架构,这三个部分分别对应网站的数据储存model,py控制如何处理数据程序逻辑的view,py以及网站的模板文件组template,其中许多控制逻辑也被放在整个Django框架中。在基于DjangO框架的工程中,主要包括InOdelS.py,views,py,UrIS.py和html模板文件共四个py
14、thon文件,一个标准App的模型类文件models,py主要用数据类来定义数据存储的结构,运用这个类,可以通过简单的Python的代码来对数据表中的记录进行增加、检索、更新、删除操作,不用关心实际上使用的SQL语句指令,并且提供访问数据库的APl接口。视图类文件VieW.py用来定义编写业务逻辑代码,主要是定义用来处理网页请求的函数,在函数中,把我们要操作的数据出送到网页服务器,这些在views,py中的函数被urls.Py进行对应和派发处理。访问逻辑控制文件urls.py,主要用来指出views.py中需要调用的视图。Django的程序执行流程如下:1.首先,使用PythOnmanage,
15、pyrunserver命令启动服务器,将会载入同一目录下的settings.py文件。该文件的内容包含了项目中的配置信息,在文件中找到ROOTURLeONF的设置,决定将要使用哪一个模块,一般来说不需要修改这里的设置。2 .当访问URL的时候,Django会根据R00TJRLC0NF的设置加载URLconf03 .然后按照URLconf里的Urlpatterns的顺序,逐个匹配网址和正则表达式中的设置Patte门1。如果找到第一个匹配的设置后,则会调用VieWS.py里相关的视图函数,并把HttPReqUeSt的一个对象实例作为第一个参数4 .最后视图生成的数据调用urls.py中Urlpat
16、terns中的HTML页面,返回一个HttpResponse对象实例。Django框架目的主要在于简便快速的开发数据库驱动的网站,注重组件的可重复性使用,为开发者搭建网站提供了极大便利,这是选用DjangO框架作为Web开发关键技术的缘由。2.1. 2Bootstrap框架BootStraP是目前很受欢迎的来自推特的前端框架,是开源的用于前端开发的工具包,其优点在于能兼容大部分JQuery插件。BOOtStraP基于HTMLCSSJavaScript,它是简单直观的前端开发框架,让Web开发更简单迅速。Bootstrap由动态CSS语言Less写成,提供优雅的HTML和CSS规范,一经推出后便
17、很受欢迎,一直是GitHUb上热门的开源项目。国内一些移动开发者开发的框架也是基于Bootstrap源码进行性能优化发展而来。Bootstrap基于HTML5和CSS3开发,提供一个带有网格系统、链接样式、背景的基本结构。BOOtStraP含有大量丰富的Web组件,这些组件简洁独特,合理利用这些组件可以简单快速的搭建出具有个人风格且功能齐全的网站,界面简洁又实用。由于BootStraP是开源的工具包,开发者可以根据自身的需要对源码进行二次开发,定制样式结构,来满足开发者自身的需求。采用BoOtStraP进行前端开发具有以下几点优势:1 .提供一套响应式的流式栅格系统,移动设备优先,随着屏幕或视
18、口尺寸的增加,系统会自动分为至多12歹人它包含了易于使用的预定义类,还有强大的mixin用于生成更具语义的布局。2 .提供大量丰富可复用的组件,包含更多的功能,合理的使用这些组件,开发者可以快捷简便的搭建出自身需要的功能齐全的网站。3 .使得Web应用具有统一的风格效果,比如,可以使得网页中的链接和按钮等组件风格一致。总而言之,采用BootStraP框架可以让开发者快速简单的开发出功能齐全,界面简洁的网站。2.2. 台交互技术2.3. 2.1Python的语言特点采用脚本语言PythOn实现后台与设备进行信息交互。PythOn语法简洁明了,保证了程序的可读性,使用Python编写的程序短小精悍
19、。Python作为模块化的语言,极易扩展,在各个平台下保持一致。PythOn语言具有一定动态性,面向对象特性,而且其内置的数据结构丰富而强大,简化了程序设计,缩短了代码长度,简明易懂,因为其出色的品质,受到使用者广泛推崇。总结起来,Python主要有以下特点:D可扩展性:PythOn在设计之初考虑到编程语言可扩展性的需求。作为一门解释型语言,文本文件相当于可执行的代码,创建一个Py文件并且写入代码,可以作为新的模块来使用。此外,Python支持C语言扩展,也可以嵌入到C和C+语言开发的项目中,使程序具有脚本语言灵活的特性。2)语法精简:语法涉及的关键字比较少,不需要使用分号,同时废弃了大括号、
20、begin和end等标记,代码块使用空格或制表符来分割,支持使用循环和条件语句进行数据结构的初始化,这些设计使得PythOn程序短小而精悍,并且保证了很高的可读性。3)跨平台:Python通过Python解释器来解释运行,而无论是Windows还是LinUX系统下都有非常完善的Python解释器,并且可以保证Python程序在各个平台下的一致性,具有可移植性,也就是说,程序无论是在Windows系统下运行还是在Linux系统下运行,都具有同样的功能。4)动态性:Python语言具有一定的动态性,与JaVaSCript,Perl等语言相似,变量可以直接赋值,而不需要明确声明,就可以直接使用,动态
21、创建的变量类型与第一次赋值时的值的类型相同。5)面向对象:Python语言具有很强的面向对象特性,相对于面向过程编程而言,极大地降低了实际问题建模的复杂度。一方面,面向对象使程序设计与现实生活逻辑更加接近,另一方面,面向对象程序设计可以抽象出类和对象的属性及行为,将它们组织在一定作用域中,具有封装、继承、多态的特性,简化了问题描述和程序设计。6)具有丰富的数据结构:Python内置丰富而功能强大的数据结构类型,包括列表、字典、元组、集合等类型,使用Python内置的数据结构可以使得程序设计简化,使得代码的长度缩短,方便开发者使用和维护。7)健壮性:PythOrI提供异常处理机制、堆栈跟踪机制和
22、垃圾回收机制。异常处理机制可以捕获程序的异常并且报错,堆栈跟踪机制能够找出程序异常出错的位置,并且找出原因,垃圾回收机制可以及时释放不需要的内存空间,可以有效管理申请的内存区域。所以,运用PythOn进行Web开发时,因为其开源灵活的特性,可以非常高效的运行一个动态的,与信息交互数据库频繁的网站。2.2.2MySQL数据库简介MySQL数据库是一个开源、免费、可移植性强的小型关系型数据库管理系统,大多用于中小型应用系统的开发,有着较为丰富的网络支持,支持WindOWs、LinUX、MacOSSolarisOpenBSD,AIX等多种操作系统平台,是广泛使用关系数据库管理系统之一。它提供用于检查
23、、优化数据库操作的管理工具和多种存储引擎。MySQL使用C和C+编写,使用了多种编译器进行测试,保证了源码的可移植性,它为多重编程语言提供API。MySQL支持多线程,这使得它可以充分利用CPlJ资源。在连接数据库方面,MySQL提供TCP/IP、ODBC和JDBC等多种途径,在Web应用方面,MySQL是最好的关系数据库管理系统应用软件。由于它性能优越,可以搭配Apache组成良好的开发环境。MySQL因为优化的查询算法,有效的提高了查询速度,同时由于开源免费的特性,在开发时被大量的采用。所以,本系统采用MySQL数据库来存储系统数据。2.3本章小结本章是关键技术概述部分,主要阐述了本设计的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Django 设备 维系 设计 实现 网络工程 专业

链接地址:https://www.desk33.com/p-1226434.html