整洁的免费采集软件(开源软件的前世今生(图)的挑战与挑战)

优采云 发布时间: 2022-02-12 23:11

  整洁的免费采集软件(开源软件的前世今生(图)的挑战与挑战)

  开源软件革命

  

  “开源无处不在,这是不可避免的……反对开源的政策是不切实际的,会让你处于竞争劣势。” - 加特纳。

  1998年2月,“开源”一词首次用于软件领域,经过二十年的发展,开源已经成熟。2008年,阿里成为甲骨文最大用户之一,数据库规模位居亚洲第一。然而,同年,他提出了“IOE”的构想。2013年5月,支付宝与最后一台IBM小型机一起下线。随着互联网的兴起,开源的趋势已经势不可挡,但机遇也伴随着挑战。开源软件的选择、引进、技术规范等,给传统金融行业带来了前所未有的挑战,也给运维带来了巨大压力。

  开源软件的挑战

  1、开源软件的前世今生

  2014年之前,我们银行的大部分应用都是基于Java平台的,这些应用大部分都部署在WebLogic Server上运行。我们的运维工具和主要运维方式也是基于这款商用产品,系统性能和稳定性也经过了长期的考验。

  刚开始时,我们对开源软件有点害羞。开源软件一直是我行应用软件的一部分。运维团队不会对开源软件进行独立运维。项目团队将安装和配置它。与稳定成熟的商业软件相比,开源软件在软件成熟度和配套服务方面存在一些先天缺陷。

  2、开源趋势不可阻挡

  随着互联网金融的飞速发展,新业务上线的速度越来越快,开源的身影也在越来越多的行业系统中出现。甚至到了野蛮生长的地步,运维部门的压力也越来越大。当我们开始整理这些开源软件的时候,发现开源软件产品很多,甚至不同的产品功能相同,同一个产品的不同版本,同一个版本的不同分支,安装配置不统一< @一、配置参数五花八门,管理难度大,运维方式单一,缺乏相关监控诊断工具,给日常运维工作带来了很大挑战。

  3、 开源软件的选择与改进

  开源软件项目的范围涵盖了从业余玩家到专业开发和版本测试的不同阶段。从centos到Ubuntu,从MySQL到PostgreSQL,从Tomcat到resin,众多产品如何选择?如何管理?

  开源软件是好的,但是如果直接把开源软件放到生产环境中,就会发现很多问题。软件严谨性不够,问题可追溯性不强,文档过于简单粗暴,监控手段有限,一系列问题也给运维团队带来了很多新的挑战。

  开源软件的安全性也是首要问题,也是运维的重中之重。如果社区不够成熟,用户数量少,势必会影响漏洞修复的效率。我们应该选择什么样的社区?快速修复和升级怎么样?也是运维团队现在要思考的问题。

  开源软件介绍示例

  关注开源软件的技术成熟度和开源软件的长远发展。对软件的引入和管理有安全性和合规性要求,使开源软件能够以更规范的方式使用。

  1、 开源产品精选

  自2015年起,我行正式推出Tomcat开源软件。在评选之初,我们制定了开源软件的使用模式及其生命周期研究、试用、主要推广、限制使用和有限替换五个阶段。同一领域的技术产品不超过2个,主要推广和试用的技术产品不超过3个。这样,我们限制了产品的范围,保证了生产环境中主流版本的统一性,降低了同类产品带来的运维复杂度,保证了产品引入的严谨性。

  Tomcat的顶层架构

  2、开源产品完成

  开源产品的完善也是不可或缺的一环。刚开始研究Tomcat的时候,我们发现Tomcat具有先天优势,性能稳定,技术先进,部署速度快,结构复杂但非常模块化。虽然是成熟的开源软件,但软件成熟度与WebLogic、WebSphere等成熟的商业中间件产品相比还有一定差距。如何优化它?如何改进它?我们对这5个方面进行了大刀阔斧的改变。

  连接器和容器

  统一:

  考虑到提高后期运维的统一性和完整性,尽可能屏蔽软件差异,针对多系统多节点的可操作性和追求执行结果的幂等性,我们对tomcat目录做了统一规划. 为后续的统一运维工作奠定了基础。

  b) 软体应分开:

  作为一个web容器,Tomcat本身并没有像商业中间件(如W​​ebLogic、WebSphere)那样将基础软件和应用数据文件分开,所以当后续由于一些安全原因或者软件bug需要升级时,需要重新部署应用增加了另一个努力。在对tomcat目录进行统一规划的基础上,我们将Tomcat的基础软件部分和应用程序分开,将Tomcat分为基础软件部分和应用程序部分。

  c) 应管理权力下放:

  Web 容器是与应用程序最紧密集成的部分。应用管理员和中间件管理员可能需要对Tomcat进行相关操作,需要不同的权限。对于日常维护和启停操作,我们使用不同的操作系统用户,既实现了权限分离,又实现了一些重叠部分,实现了应用管理和中间件管理的去中心化,不进行重复授权。

  d) 双重监控:

  在对Tomcat的监控中,我们既从应用的角度考虑,也从自身运行的角度考虑。从应用的角度,我们连接了我们银行的鹰眼(APM)系统,从应用的角度监控应用的性能。从Tomcat资源的角度,通过JMX采集统一访问Zabbix监控系统其资源使用信息,并设置相关告警的告警阈值。

  e) 自动构建:

  重复的工作需要自动化。安装Tomcat的时候,我们根据自己的需要进行配置,需要封装Tomcat的原创脚本。在这里,我们使用Python编写自动化脚本进行自动化构建,以保证各个环境的统一。

  3、安全性和可靠性

  Tomcat 是 Apache 软件基金会 Jakarta 项目中的核心项目,也是一个治理社区。网站 访问流量和下载次数的统计应该能够表明其用户群足够大,bug修复及时,版本持续活跃,安全补丁机制健全,有是一个专门的安全漏洞报告渠道。统一的生产环境,软件与应用分离,不同权限管理,只需要自动化工具即可完成快速升级,提高系统安全可靠性。

  开源软件的重要性

  开源软件为我们的运维团队带来了更多的可能。通过新的开源技术,我们基础环境的交付速度大大提高,新业务的上线速度大大加快,支撑业务的能力越来越强。开源对软件开发有着深远的影响。它帮助我们共享工作,重用他人开发的软件库,使我们能够专注于自己的创新,并促进技术的快速发展。开源时代来临,我们如何拥抱开源?如何使用开源软件?如何保证系统的稳定性和安全性?我们也在开源的道路上不断探索和前行。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线