平稳交付 20+ 医院,卓健科技基于 OpenCloudOS 的落地实践
导语:随着数字化转型于各个行业领域当中持续地深入推进,充当底层支撑的操作系统正发挥着愈发关键且重要的作用。卓健科技把 OpenCloudOS 当作首要的交付系统,达成了项目交付速度的提升、安全可靠性的增强、运维成本的降低。本文将会阐述卓健科技运用 OpenCloudOS 的背景情况,深入探究其背后的缘由以及详细的实践流程。
一、卓健科技在项目交付中面临的挑战
杭州卓健信息科技股份有限公司(以下简称「卓健科技」)成立于 2011 年,专注于数字医疗服务,以智慧服务、智慧医教、数字健康和数字科创产品为核心,覆盖中南大学湘雅医院、浙大一院、江苏省人民医院、北京协和医学院在内的 500 多家三级医院,130 多个医联体和区域协作平台,业务涵盖 3000 多家医院。

针对各个产品业务体系,卓健搭建了技术与业务中台,涵盖统一支付平台、统一接口平台、许可管控平台、短信平台、统一消息中心、风控平台以及隐私政策平台。持续不断增长的业务需求以及技术平台,给卓健科技的服务器带来了一连串的要求与挑战,其中包括:
1、CentOS 停服。卓健科技原本的业务主要部署于 CentOS 之上,伴随着 CentOS 各版本陆续停止更新以及维护工作,不断有新的安全漏洞暴露出来,医疗业务系统的安全难以得到有效的保障。
2、国家的信创要求。在《2023 中国智慧医院研究报告》中要求,医院各业务系统的替换顺序由边缘逐步至核心,逐步实现「应替尽替,真替真用」,然而部分医院的预算相对有限,因而选择开源的服务器操作系统。
3、多系统平台的适配。在卓健科技内部存在着数量众多的安全基线加固以及检测脚本、服务部署脚本、K8S 部署脚本等等,在未实现统一之前,需要针对众多的系统平台展开适配工作。
二、 为何选择 OpenCloudOS 作为首选交付系统?
在面临一系列技术挑战的情况下,卓健科技选择了 OpenCloudOS 作为其首要进行交付的操作系统,这主要归结于以下五个方面的原因:
1、全链路的自主研发完全符合信创的相关要求。OpenCloudOS 是国内首个从 L1 一直到 L3 实现了全链路自主研发的服务器操作系统,历经了海量业务的充分验证,能够切实满足企业稳定级别方面的要求。
2、稳定的发行版本以及生命周期。OpenCloudOS 所发行的各个版本均提供了较为长久的技术维护周期,能够持续不断地对业务使用予以有力支撑。
3、具备丰富多样的生态认证。OpenCloudOS 针对 1300 余款国产的软硬件以及 5895 款开源软件实施了生态兼容认证,达成了对主流芯片、数据库以及整机的全面覆盖。
4、完全兼容 CentOS。OpenCloudOS 8 发行版的内核是基于社区 LTS 5.4 进行独立演进的,其用户态与 CentOS 相兼容,迁移所需的成本较低,上手的速度也很快。
5、拥有完善的文档体系。在遇到技术问题的时候,存在详尽的安装调优文档以及 QA 文档,同时社区也提供了极为丰富的技术支持,帮助问题得到解决。
目前,卓健科技基于 OpenCloudOS 为底座,在中南大学湘雅医院、重庆中医药学院等 20 多家医院完成交付,整体运行安全、平稳。

三、卓健科技基于 OpenCloudOS 的落地实践与收益
在卓健科技典型的项目交付流程中,包括服务器资源准备、系统部署、K8S 平台部署、应用部署、安全加固、测试验证和交付上线等一系列环节。
为了满足项目交付的安全稳定、快速部署、弹性伸缩,结合 OpenCloudOS 操作系统的优势特性,卓健科技进行了一系列创新实践,主要涉及基于 OpenCloudOS 的安全加固规范和基于 OpenCloudOS 的 K8S 交付平台。其中安全加固规范包括:
1、操作系统加固:包括密码长度、密码过期时间、日志审计、SSH 版本等方面,并通过三级等保评审。
2、配置加固:对敏感配置、数据库链路加密、业务账号分权、数据库白名单等进行加固,以防止配置漏洞被利用。
3、数据库,中间件、K8S 加固:对数据库、中间件和 K8S 进行加固,包括访问控制、安全审计、SSL 加密、白名单等。
4、应用加固:对应用进行加固,包括安全编码规范、安全依赖项管理、权限与访问控制、权限最小化、输入验证、持续安全测试与审计等。
同时,卓健科技还构建了基于 OpenCloudOS 的 K8S 交付平台,包括基础设施层、操作系统层、K8S 层和公共服务层等。通过该平台实现快速部署、弹性伸缩和高可用等功能。

最终,卓健科技的创新实践结合 OpenCloudOS 的特性优势,为项目交付带来了速度提升、安全增强、以及成本降低的收益:
1、 OpenCloudOS 支持多种硬件平台和云基础设施,帮助卓健屏蔽基础设施的差异性,减少部署及测试的工作量,提升项目交付部署速度。
2、 得益于 OpenCloudOS 社区对安全漏洞规范处理和补丁及时更新,提升交付系统的安全性和可靠性。
3、 卓健自有的项目部署、加固、修复等脚本,只需测试与 OpenCloudOS 兼容性即可,降低运维成本。
四、小结
卓健科技选择 OpenCloudOS 作为首选交付系统,解决了项目交付中遇到的一系列挑战,基于 OpenCloudOS 的创新实践,提高了交付效率与安全稳定性,降低了运维成本。
未来,卓健科技将推动与 OpenCloudOS 9 的适配兼容,进行服务集成,封装基础服务,实现基于 OpenCloudOS 9 版本进行项目交付,利用卓健科技在医院多年的交付经验,分享在系统安全加固和检查脚本方面的经验,为操作系统生态做出贡献。
相关文章:
平稳交付 20+ 医院,卓健科技基于 OpenCloudOS 的落地实践
导语:随着数字化转型于各个行业领域当中持续地深入推进,充当底层支撑的操作系统正发挥着愈发关键且重要的作用。卓健科技把 OpenCloudOS 当作首要的交付系统,达成了项目交付速度的提升、安全可靠性的增强、运维成本的降低。本文将会阐述卓健科…...
Python下载库
注:本文一律使用windows讲解。 一、使用cmd下载 先用快捷键win R打开"运行"窗口,如下图。 在输入框中输入cmd并按回车Enter或点确定键,随后会出现这个画面: 输入pip install 你想下载的库名,并按回车&…...
SAP HCM OPT函数作用
导读 INTRODUCTION OPT函数:SAP HCM工资核算是很多函数的汇总集,原有有兴趣问过SAP的人为什么SCHEMA需要这样设计,SAP的人说是用汇编的逻辑设计的,当时是尽可能用机器语言加速速度读取,每个函数都有对应的业务逻辑代码…...
Tensorflow音频分类
tensorflow https://www.tensorflow.org/lite/examples/audio_classification/overview?hlzh-cn 官方有移动端demo 前端不会 就只能找找有没有java支持 注意版本 注意JDK版本 package com.example.demo17.controller;import org.tensorflow.*; import org.tensorflow.ndarra…...
mqtt-emqx:keepAlive机制测试
mqtt keepAlive原理详见【https://www.emqx.com/zh/blog/mqtt-keep-alive】 # 下面开始写测试代码 【pom.xml】 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>2…...
C++基础7:STL六大组件
目录 一、标准容器 1、顺序容器 vector 编辑 deque list 容器适配器 stack queue prority_queue: 关联容器 有序关联容器set、mutiset、map、mutimap 增删查O(log n) 无序关联容 unordered_set、unordered_mutiset、unordered_map、unordered_mutimap 增删…...
特别名词Test Paper1
特别名词Test Paper1 ability 能力abstract 摘要accountant 会计accuracy 准确度acid 酸action 行动activity 活动actor 男演员adult 成人adventure 冒险advertisements 广告,宣传advertising 广告advice 建议age 年龄agency 代理机构,中介agreement 同…...
每日题库:Huawe数通HCIA——全部【813道】
1.关于ARP报文的说法错误的是?单选 A.ARP报文不能被转发到其他广播域 B.ARP应答报文是单播方发送的 C.任何链路层协议都需要ARP协议辅助获取数据链路层标识 DARP请求报文是广播发送的 答案:C 解析: STP协议不需要ARP辅助 2.园区网络搭建时,使用以下哪种协议可以避免出现二层…...
#04 Stable Diffusion与其他AI图像生成技术的比较
文章目录 前言1. Stable Diffusion2. DALL-E3. GAN(生成对抗网络)4. VQ-VAE比较总结 前言 随着人工智能技术的飞速发展,AI图像生成技术已成为创意产业和科研领域的热点。Stable Diffusion作为其中的佼佼者,其性能和应用广受关注。…...
不确定性+电动汽车!含高比例新能源和多类型电动汽车的配电网能量管理程序代码!
前言 能源供应的可持续性和清洁性是当今世界共同关注的议题,配电网与可再生能源发电相结合,通过多能互补和梯级利用,在不同时空取长补短,提高能源利用率,减少温室气体排放,是解决能源短缺和环境问题的有效…...
准确-K8s系列文章-修改containerd 默认数据目录
修改 Kubernetes 集群中 containerd 默认数据目录为 /data/containerd 前言 本文档适用于 Kubernetes 1.24 及以上版本的集群,介绍如何将 containerd 默认的数据目录从 /var/lib/containerd 修改为 /data/containerd。 步骤 1. 停止 containerd 服务(…...
深入探索Linux命令:`aulastlog`
深入探索Linux命令:aulastlog 在Linux系统中,安全管理一直是管理员和用户关注的焦点。aulastlog是一个非常有用的工具,用于显示用户最近登录的日志。它通过分析/var/log/lastlog文件来提供这些信息,这个文件记录了系统上所有用户…...
Debezium日常分享系列之:Debezium 2.6.2.Final发布
Debezium日常分享系列之:Debezium 2.6.2.Final发布 一、新功能和改进1.Oracle 数据库查询过滤超过 1000 个表 二、修复和稳定性改进1.PostgreSQL 偏移刷新竞争条件2.Avro 兼容性 一、新功能和改进 1.Oracle 数据库查询过滤超过 1000 个表 Debezium Oracle 连接器允…...
PHP质量工具系列之phpmd
PHPMD PHP Mess Detector 它是PHP Depend的一个衍生项目,用于测量的原始指标。 PHPMD所做的是,扫描项目中可能出现的问题如: 可能的bug次优码过于复杂的表达式未使用的参数、方法、属性 PHPMD是一个成熟的项目,它提供了一组不同的…...
【java】速度搭建一个springboot项目
使用软件:IDEA,mysql 使用框架:springboot mybatis-plus druid 坑点 使用IDEA搭建一个springboot项目的时候,需要考虑一下IDEA版本支持的JDK版本以及maven版本。否则再构建项目,引入pom的时候就会报错。 需要检查…...
SystemVerilog测试框架示例
这里是一个完整的SystemVerilog测试框架示例,包括随机化测试和详细注释。 顶层模块 (Top Module) module top;// 信号声明logic clk;logic rst_n;// 接口实例化dut_if dut_if_inst(.clk(clk), .rst_n(rst_n));// DUT实例化 (假设DUT模块名为dut)dut u_dut(.clk(du…...
每天一个数据分析题(三百五十六)-图表决策树
图表决策树中将图表分成四类,分别是? A. 比较类 B. 序列类 C. 构成类 D. 描述类 数据分析认证考试介绍:点击进入 题目来源于CDA模拟题库 点击此处获取答案...
Prism 入门06,发布订阅(入门完结)
本章节介绍使用 Prism 框架的消息聚合器 IEventAggregator ,实现如何进行消息发布,订阅,取消订阅的功能 继续使用上一章节使用的 Prism WPF 空模板项目 BlankApp1 1.首先,在使用 Prism 框架当中,进行事件消息的发布和订阅之前,需要定义发布事件的事件消息模型。如下所示:…...
2. pytorch环境安装
概述 本文提供基于Anaconda环境Windows11操作系统的Pytorch深度学习环境的配置。深度学习环境分为GPU和CPU两大部分。使用GPU进行环境配置,需要保证电脑配有独立显卡,并且显卡驱动安装正常,详情见前文。 1. 创建新的虚拟环境用来配置Pyt…...
力扣爆刷第148天之贪心算法五连刷(区间合并)
力扣爆刷第148天之贪心算法五连刷(区间合并) 文章目录 力扣爆刷第148天之贪心算法五连刷(区间合并)一、406. 根据身高重建队列二、452. 用最少数量的箭引爆气球三、435. 无重叠区间四、763. 划分字母区间五、56. 合并区间六、738.…...
Flask RESTful 示例
目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题: 下面创建一个简单的Flask RESTful API示例。首先,我们需要创建环境,安装必要的依赖,然后…...
ssc377d修改flash分区大小
1、flash的分区默认分配16M、 / # df -h Filesystem Size Used Available Use% Mounted on /dev/root 1.9M 1.9M 0 100% / /dev/mtdblock4 3.0M...
Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件
今天呢,博主的学习进度也是步入了Java Mybatis 框架,目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学,希望能对大家有所帮助,也特别欢迎大家指点不足之处,小生很乐意接受正确的建议&…...
Go 语言接口详解
Go 语言接口详解 核心概念 接口定义 在 Go 语言中,接口是一种抽象类型,它定义了一组方法的集合: // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的: // 矩形结构体…...
postgresql|数据库|只读用户的创建和删除(备忘)
CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...
【7色560页】职场可视化逻辑图高级数据分析PPT模版
7种色调职场工作汇报PPT,橙蓝、黑红、红蓝、蓝橙灰、浅蓝、浅绿、深蓝七种色调模版 【7色560页】职场可视化逻辑图高级数据分析PPT模版:职场可视化逻辑图分析PPT模版https://pan.quark.cn/s/78aeabbd92d1...
uniapp手机号一键登录保姆级教程(包含前端和后端)
目录 前置条件创建uniapp项目并关联uniClound云空间开启一键登录模块并开通一键登录服务编写云函数并上传部署获取手机号流程(第一种) 前端直接调用云函数获取手机号(第三种)后台调用云函数获取手机号 错误码常见问题 前置条件 手机安装有sim卡手机开启…...
c++第七天 继承与派生2
这一篇文章主要内容是 派生类构造函数与析构函数 在派生类中重写基类成员 以及多继承 第一部分:派生类构造函数与析构函数 当创建一个派生类对象时,基类成员是如何初始化的? 1.当派生类对象创建的时候,基类成员的初始化顺序 …...
什么是VR全景技术
VR全景技术,全称为虚拟现实全景技术,是通过计算机图像模拟生成三维空间中的虚拟世界,使用户能够在该虚拟世界中进行全方位、无死角的观察和交互的技术。VR全景技术模拟人在真实空间中的视觉体验,结合图文、3D、音视频等多媒体元素…...
WEB3全栈开发——面试专业技能点P7前端与链上集成
一、Next.js技术栈 ✅ 概念介绍 Next.js 是一个基于 React 的 服务端渲染(SSR)与静态网站生成(SSG) 框架,由 Vercel 开发。它简化了构建生产级 React 应用的过程,并内置了很多特性: ✅ 文件系…...
