Nebulae开放云标准

目录

  1. IaaS
  2. PaaS
  3. SaaS
  4. 必要说明

IaaS

  1. 计算设施:通过虚拟化打包的计算资源(CPU+Mem)

    • Hypervisor(VMM)
      • KVM:基于内核的虚拟化
      • Firecracker:轻量级虚拟化运行环境
    • 操作系统层虚拟化
      • LXC:linux容器
    • 说明
      1. 如果您是为了学习Linux操作系统,一个简单的资源需求就是1C2G,即使你需要桌面也完全足够,但是我们更推荐您前往jupyter下的novnc环境
      2. 不支持跨CPU架构模拟,目前仅支持X86、AMD64架构
      3. Firecracker不支持包括PCIE设备直通在内的功能,这是为了满足轻量级的需要
      4. 操作系统层虚拟化仅支持Linux,由于会与主机共用内核,“特权容器”被禁止,允许在内部完成嵌套运行docker容器,有关于安全增强的方案是Firecracker
      5. 取消xen的原因是其对windows等使用全虚拟化方案不如直接使用kvm统一全虚拟化方案
  2. 数据设施:通过ceph提供提供较好的性能、可靠性和可扩展性的共享存储

    • Dashboard:基于Web-UI实现管理Ceph的功能
    • OSS(对象存储服务):兼容Amazon S3与Swift接口
      • 使用方法:在您需要的服务中搜索如何链接Amazon S3与Swift存储
    • 说明
      1. 存储资源选择指导
        • fs支持多节点读写,读延迟低,带宽表现好,尤其是较大的文件,但写延迟相对较高且延迟时间不稳定,适用于对I/O延迟不大敏感的文件读写,以及非海量的小文件存储支持
        • bs读写延迟都很低,适用于对I/O延迟要求较高,且无多个节点同时读写数据需求的应用,例如数据库
        • os是专门用于大数据存储的方案,根据数据与服务相分离的原则,数据能放入oss,就放入oss
        • 延迟时间不稳定指在连续高负载压力工作时,会有极少数IO出现慢响应,对于数据库服务,会破坏其正常工作
      2. Crush rule策略:用于制定数据分布的规则
        • 介质性能编码(device_class):
          • h s n 存储介质与协议,h代表机械磁盘(SAS/SATA协议),s代表固态磁盘(SATA协议),n也是固态磁盘(NVME协议)
          • s m l e 存储容量,s一般为1T以内,m为1-4T,l为4-12T,e为12T以上
          • h l 综合写入延迟与带宽,h设备代表延迟更低,带宽更高,同介质的读取速度通常是一致的
          • 新设备一般靠近底部设备编号
        • 存储可靠策略编码:
          • ec_ 表示使用纠删码,无ec_代表使用副本策略,其故障域为host层次,采用三副本或近似RAID5(2+1)的冗余策略
        • 混合设备策略:nvme作为四块机械OSD的WAL/DB,分配容量为4%,固态硬盘不分配WAL/DB
        • 附加功能后缀:
          1. _tem : 数据转移或临时策略使用和此后缀用于区分生产环境与测试环境
        • 最终Crush rule类似ec_hll hll等命名方式
      3. Pool接口:bs fs os
        • bs:块存储,接口提供rbd iscsi
        • fs:文件存储,接口提供 cephfs nfs
        • os:对象存储,接口提供s3 swift
        • 附加功能后缀:
          1. data:一个用于bs(在使用纠删码情况下)/fs的附加后缀,标识该存储池用于数据存储
          2. metadata:一个用于bs(在使用纠删码情况下)/fs的附加后缀,标识该存储池用于元数据存储
      4. 存储服务接口,Crush rule组合成为最终用户态名称,这样可以保证存储服务在多个策略中具备平滑层次,以满足多样的数据需求,例如bs_ec_hll fs_hll等命名方式
  3. 网络设施:通过SDN、Proxy提供网络资源

    • 内部代理服务器
    • 网络地址池
      • PaaS地址池
        • 默认网段:10.0.0.0/8,内部K8S网络隔离等由K8S管理
  4. IaaS集群联邦:单一主控集群统一管理多个数据中心

    • 数据中心:不依靠任何其他外部节点,数据中心内部服务完备
      1. 中心服务器集群:CSC,主要的服务中心,默认情况下是全局服务提供者
      2. 边缘服务器集群:ESC,主要的架构试验地,默认情况下不提供服务或保障
    • 说明:
      1. 云存储资源中块存储与文件存储不可跨数据中心网络使用,对象存储可以跨数据中心网络使用
      2. 数据中心外的节点可以作为计算节点加入联邦,默认情况下CSC会作为主控集群
      3. 节点主机名使用CSC-0 CSC-1命名方式

PaaS

  1. Kubernetes:一个用于大规模运行分布式应用和服务的开源容器编排平台

    • 负载类型:容器
    • 运行时:
      1. 默认: containerd
      2. 实验性的安全加固方案: Kata-Container
    • 负载部署方式
      1. Helm(Kubernetes的包管理器):自动化部署工作负载
      2. K8S支持的工作负载类型
    • 持久卷存储提供:
      1. 文件存储,ceph/cephfs-csi
      2. 块存储,ceph/rbd-csi
    • 网络提供:
      1. L4层负载均衡器:TCP/UDP流量管理
      2. ClusterIP:K8S单集群内网络互通
    • 说明:
      1. 块存储不支持多节点共享,文件系统允许
      2. 机密数据使用secret存储,配置文件使用configmap存储
      3. 实验性计划去除GPU Operator,提起Device Plugin合并
  2. PaaS集群联邦:单一云管平台统一管理多个K8S集群

    • 云管平台:Rancher
      • 访问方式:

SaaS

  1. 开发服务

    • Gitlea:Git代码仓库,Devops
      • 访问方式:
      • 使用方法:注册账户
  2. 计算服务

    • JupyterHub(提供广泛语言与开发环境的支持):
      • 访问方式:
      • 使用方法:访问上方的链接,如果您是第一次使用,随便输入用户名和密码创建一个新用户
      • 说明:
        1. 目前可以持久化建立虚拟环境,具体用法参考 https://github.com/ben0i0d/jupyter
        2. 我们不承诺jupyter内部数据的热可靠性,这并不是说我们会删除您的数据,而是指在可能的重大故障发生后,我们不保证热备,我们仅支持手动提取数据
        3. JupyterHub默认提供交互式编程方法,相关代码样例随附交互式编程样例,务必注意那些有主函数等语言设计,你可以把整个notebook视作主函数,因此不需要在notebook内再次定义
  3. MCSM:MC、steam等游戏服务器管理平台

    • 访问方式:
    • 支持游戏类型:Minecraft(Java/基岩版,全版本支持),steam
    • 说明
      1. 希望开服或者加入现有服务器游玩,请加QQ频道:9j65t20a74

必要说明

  1. 由于一些服务本身就不具备https访问的能力,因此在访问我们服务时,您会遇到http被自动填写为https,这是因为默认情况下启用了HSTS,以下是三种解决方案:
    • 如果您有两个浏览器,可以分别访问https与http服务
    • 如果您只有一个浏览器,可以清除浏览器对eoelab.org的记录与cookie
    • 使用隐私模式,隐私标签页,隐私窗口等访问(一般来说,是默认https,所以你可以在隐私条件下访问http),并且我们http类服务占比较小
  2. 如服务出现问题或提起新的诉求,请添加请加QQ频道:9j65t20a74,默认情况下仅在此接受反馈并下发通知