2022年2022年构建一个分布式操作系统的简单方案. .pdf

上传人:C****o 文档编号:39891204 上传时间:2022-09-08 格式:PDF 页数:5 大小:55.04KB
返回 下载 相关 举报
2022年2022年构建一个分布式操作系统的简单方案. .pdf_第1页
第1页 / 共5页
2022年2022年构建一个分布式操作系统的简单方案. .pdf_第2页
第2页 / 共5页
点击查看更多>>
资源描述

《2022年2022年构建一个分布式操作系统的简单方案. .pdf》由会员分享,可在线阅读,更多相关《2022年2022年构建一个分布式操作系统的简单方案. .pdf(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、构建一个分布式操作“系统的简单方案答陈硕的分布式系统中的”进程标识一文by 沈东良http:/ 的强大能力,构建一个简单、安全、灵活、高效的分布式操作系统!并且没有单点失效的问题。注意,是通用的分布式操作系统,而不是专用的分布式系统。对“”分布式系统中的进程标识一文的疑问刚才看到陈硕先生的一篇blog:“”分布式系统中的进程标识,地址:http:/ 作为分布式系统中进程的 gpid,其中 start_time 是 64-bit”整数,表示进程的启动时刻。第一个问题:没有port的进程怎么命名?“文中这样回答:根据陈硕在 分布式系统的工程化开发方法一文中的观点“在程序里内置 http”服务器,分

2、布式系统中的每个进程都应该提供一个管理接口,对外提供一个维修探查通道,可以查看进程的全部状态。这个管理接口就是一个 TCP server,它会侦听某个port”。1,cat,uuid,utime这些程序都要提供一个内嵌的http 服务器?有必要吗?第三方程序你怎么该?2,我至今没有见过一个操作系统自动给所有进程提供http 服务的。如果真的应该在每一个程序里内置http 服务,那么肯定有操作系统会提供这种服务。3,如果程序提供 http服务,那么程序的安全就会有疑问。http 通讯很容易被拦截。http 服务如果开着,那么攻击方可以不停测试用户名、密码,从而攻进操作系统。成为安全隐患。名师资料

3、总结-精品资料欢迎下载-名师精心整理-第 1 页,共 5 页 -第二个问题:time作为唯一的区分是否可靠?如果操作系统的时间发生调整,那么有可能time 会回到从前,从而可能导致多个进程有一个进程号。可能性虽小,但不能排除。构建一个分布式操作系统的简单方案给进程唯一命名“”陈硕的 分布式系统中的进程标识一文讲的就是怎样给进程唯一命名的问题。前一节中,我已经证明了该文提出的方法是不正确的。现在讲一下我怎么解决这个问题。很简单,执行 uuid 命令,就会返回一个全球唯一的字符串。这已经在理论上证明是不可能重复的。Uuid 已经在数据库,.NET等众多应用程序中广发使用。我们可以这样建立一个结构体

4、,来标示一个进程:struct Processchar32 uuid,int ip,/(其实计算机也应该定义一个struct,使用 uuid 唯一标示。这里为了说明简单,一切从简了)int pid,char*program,int valid /进程是否还存在;然后建立一个 hashtable:(char*programName,struct Process*processes)这样的 key,value 结构。这样就可以 找到一个程序的所有进程。还可以定义多个 类似的 List 和Hashtable,方便管理和查询。使用 ssh 实现 远程调用使用 ssh 可以实现 远程调用 任意远程计算机

5、上的程序 和资源。ssh 就是一个安全的 shell 程序,通过 ssl 安全协议访 问远程计算机。因此,使用 ssh 就可以构建一个简单、安全、有效的分布式计算系统!名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 5 页 -使用 SSH 的优点还有:1,不再需要程序提供 远程访问的途径。如陈硕的方案就是 需要每一个程序都内嵌一个 http服务器。ssh 不需要。而且它可以 访问远程计算机上的所有程序。2,提供了安全 访问的机 制。Ssh 建立在 ssl 上非常安全。3,提供了 授权的机制。ssh 使用操作系统的用户 登录。这样就可以使用操作系统本身的用户授权实现任意的授权。ss

6、h 用户可以有自 己的 home 文件夹,可以设置用户使用的内存数,硬盘数,可以 创建的进程数 量等等。不 允许访问其他文件,不允许运行其他用户的程序等等 诸多优点。通过提供一个包括:计算机,用户,程序-,进程等对象的数据库管理系统,就可以使用ssh 实现一个简单、安全、灵活、高效的分布式计算系统!架构设计我给这个 想法起 个名字sshDos,如果有时间,把它实现出来。sshDos,不是用 于dos操作系统的 软件,Dos是分布式操作系统的缩写。sshDos指的是使用ssh技术 构建的分布式操作系统。使用ssh构建分布式操作系统这个想法始于去年 的某一 天 的顿悟。后来一 直都没有实 施。惭愧

7、!架构图远程客户。管理 终端网络-ProxyCluster ManagerCluster|.|Naming server.Cluster|db clusterserver cluster上图中网络 内的部分就是sshDos分布式操作系统。主要分为三个部分:1,命名服务器部分,这是整个系统的大脑。它 保 存了proxyCluster和serverCluster中所有服务器的 信息。服务器 和代 理必 须向 命名服务器注 册才能使用。命名服务器的数据保存在数据库 集群 中。命名服务器是 无 状态的服务器 集群。可以使用memcache集群缓 存数据,提高性能。命名服务器提供类rest的openap

8、i向外提供服务。ManagerCluster是web形势 的管理服务器,使用命名服务器提供的服务。管理员可以通过它检测运行状 况,注 册服务器 和代 理,取消 注 册,授权访 问等等。名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 5 页 -2,ProxyCluster,它们接 受远 程客户请求,并 向serverCluster发送命令的服务器。ProxyCluster使用命名服务器提供的api服务,查找合适 的server。然后 使用ssh向server发起请求。3,serverCluster,这是真正执行工作的集群。它们都安 装了ssh服务器,从而proxy和naming s

9、erver可以 访问它。Naming Server对他执行 配置,管理 和监控 等任务。Proxy。向它发 起工作 负载。此架构设计的 优点:1,整个系统的所有模块 都是 集群,可以 热插拔任 意节点,没有单点失效的问题。2,使用ssh-安全的shell,因此可以 向server发起任何 命令。因此,sshDos是一个通用的分布式操作系统。他不是单 纯的分布式map-reduce系统,不是 超级 计算机,不是分布式存储系统。但它也同时可以是它们全部。只需 要编写几 个shell脚本,或者 程序,然后 发送给proxy,它就可以实现任意分布式 功能。3,可以使用linux的用户 授权 机制,控制

10、 不同用户使用的资源和权限,实现 细粒度 的管理.使用 sshDos的例子我是做 虚拟 化的,就以 虚拟 化为 例,说明sshDos分布式操作系统在虚拟 化方 面的使用 例子。虚拟 机集群 管理系统需求比如说,我们有一个虚拟 化的服务器 集群,需要对它进行管理。这样,在sshDos中,worker Cluster就是一个个Host,每一个Host内可以同时启动很多虚拟 机。这些 虚拟 机供外部用户通过ssh,vnc等方式使用。假设 我们使用kvm,当然 使用 任何 其他hypervisor对于sshDos来说都是一样的。因为我们这个是虚拟 机集群,我 假设 我们使用了统一的分布式文件系统。如S

11、AN,HFS,Ceph等分布式文 件系统。这样,我们不需要把vm的img从一个host迁移到另一个Host上。只需 要迁移kvm命令行(死迁移)和内存状态(活迁移)。实现worker Cluster就是一个个Host。通过Naming Server提供的Web形式的注 册接口,我们可以 向sshDos分布式操作系统中添加和移 除Host Server。Naming Server 通过ssh访 问每一Host。然后 定时执行Host上的top程序,查看系统的CPU,内存使用 率,查看每一个CPU的使用 率,从而 获得 每一个Host的实时 压力,存 放到数据库 和memcache中。kvm虚拟

12、机在Host内就是一个进程。通过查看kvm进程的 资源 使用 率,我们就知道了kvm虚拟 机的 资源占 用 情况。远程管理程序通过proxy server发起要求 启动一个vm的命令。Proxy到Naming Server名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 5 页 -上查 询应该使用 哪一个Host Server。通过 编写 一个程序,我们可以知道vm内部每一个进程的资源 使用 情况。编写 一个VM内部 运行的监控 程序,然后 通过kvm模拟 的串口等 设备 发送到Host上。这样Naming Server就可以通过ssh得到VM内部 各个进程的 运行 情况。知道VM的操作系统是否 运行正 常,各个服务是否 运行正 常。Vm内的一些服务是非常关键 的,如sshServer,还有用户启动的服务器,如apache,tomcat等。Naming Server都可以 知道的一 清二楚。你还可以使用sshDos分布式操作系统满足 你的 任 意 需求,因此sshDos是一个通用的分布式操作系统,而不是专用的分布式系统。名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 5 页 -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁