java多线程基础,java多线程编程实战指南 pdf
序
本文只整理了之前写的一个小样本,由于我是私人,后端代码写的很烂,前端页面不干净,没有伯格兰等安全措施,没有运输经验,所以错误很多。请照顾我。
一、方案介绍
程序分为cmdb_server和cmdb_client两部分,是以运维为核心开发的简单框架。Cmdb_client主要负责资产信息的收集,收集后清理数据,并通过将数据发送到cmdb_server和cmdb_server前端。向用户显示的POST方法。
cmdb_server的主要功能如下。目前部分功能仅支持centos 7。
1.用户注册和认证。"
2.收集到的资产信息可以通过主页展示给用户,资产信息可以以Excel的形式导出。
3.机房信息维护。
4.业务条线信息维护。
5.记录主机资产信息的变更记录。
6.执行用户任务(批处理运行命令、脚本、分发文件。本地提取客户端文件)
7.实时监控主机硬件资源。
8.社交网络。
9.文档服务器管理。
Cmdb_client主要通过代理或SSH收集windows7和centos7以上的资产信息。
目前该程序主要是针对centos 7开发的。
二。节目目录介绍
复制代码
[root @ localhost CMDB]# tree-L1 CMDB _服务器/
cmdb_server/
Asset_API#负责从cmdb_client发送和接收资产信息,并将资产信息写入数据库。
资产存储库#数据库
Cmdb_server #程序主目录
保存data_dir#日志和下载文件的目录
数据库. sqlite3
manage.py
插件库:处理SSH连接,发送报警邮件,日志,主机生存扫描,分页和Excel处理。
pycache
requirements.txt
用于实现用户功能的Show_page #目录
模板
测试. py
[ root @ localhost CMDB服务器] # tree-L1 show _ page /
show_page/
Client_manage #用于显示资产信息。
Docker_manage#docker服务器管理
主机_监视器#主机监视
http://www。Sina.com/.巴拉圭
登录_注册#用户登录验证
init
用户任务#执行用户任务。
Web #功能应用程序
(web_ssh # webssh
复制代码
三。程序开发平台
操作系统:centos 7
软件版本:Python 3.6 Django 1 . 11 . 20 Maria DB 5 . 5 . 64
使用的主要技术:python,django,SSH,websocket,ajax,以及必要的传输命令。
四。程序实施过程
SSH模式:
使用代理模式:
ssh模式和代理模式的比较:
易于管理:在SSH模式下,只需要将cmdb_client程序放在一台主机上就可以获得所有主机的资产信息,而在代理模式下,必须将cmdb_client程序放在所有主机上。
易维护:如果cmdb_client的内容发生变化,只需要在SSH模式下修改cmdb_client主机上的程序,而修改后的cmdb_client程序需要在代理模式下重新发送到各个主机。
运行效率:SSH模式必须通过SSH连接到每台主机,受网络、服务器处理SSH远程连接等因素影响,效率不高。代理模式比SSH模式更有效,因为它在本地检索数据,然后使用请求将数据直接发送到cmdb_server。POST,并且没有远程登录验证过程。
安全性:SSH模式必须登录到目标主机。这个过程可能导致软件包抢占登录证书,或者窃取黑客程序的登录验证等敏感信息,造成安全隐患。它比SSH模式更安全,因为代理模式程序没有敏感数据(如登录验证)。
项目实施的思路:
cmdb_client的SSH模式:
cmdb_client的代理模式:
cmdb _服务器:
动词(verb的缩写)功能演示
1.登录认证
2.获取资产信息。
2.1其他资产信息操作
3.机房信息和业务线
4、主机变更记录
5.执行用户任务。
5.1执行批量安装命令
5.2批量运行shell脚本
5.3统一文件分发
5.4文件提取
6.主机监控
7、webssh
8.资料管理
8.1批量安装文档库
8.2统一镜像源
8.3镜像搜索和批量下载
8.4批量创建容器
8.5码头服务、集装箱和镜像相关操作
使用8.6文档文件创建python基础教程并创建镜像。
总结:
我没有实际运输经验,需要检查程序的稳定性。目前主要是针对centos 7开发的,有些功能在其他平台上可能无法正常工作。