BlueKing1-PaaS平台

原文链接:PaaS平台

1. 产品简介

蓝鲸PaaS在蓝鲸体系中有3个重要的作用:

  • 面向普通用户
    • 进入蓝鲸体系的第一个产品,提供通用的基础服务,如登录认证、消息通知、其他产品的快捷入口(工作台),获取更多产品的应用市场等。
  • 面向开发人员
    • 提供很多“SaaS开发者服务”,简单快速的创建、部署和管理应用,帮助开发者快速、低成本、免运维的构建支撑工具和运营系统。
  • 面向系统维护人员(系统管理员)
    • 提供用户管理(含角色管理)、服务器基本信息维护、第三方服务可视化管理、API权限控制等功能,更好地维护和管理平台的可用性。

2. 术语解释

  • 工作台:又称“工作面板”或者“桌面”,登录进入蓝鲸后看到的第一个页面,汇总了当前可用的所有SaaS应用。
  • SaaS应用:又称为“APP”,由蓝鲸PaaS平台托管的工具/系统/产品,功能相对独立,基于PaaS平台可以正常使用,如节点管理、标准运维等,都属于SaaS应用。
  • 开发环境:开发者的研发环境。PaaS平台提供了本地开发环境(个人电脑)、测试环境(预生产环境/预投产环境)、正式环境(生产环境/投产环境)三种不同的开发环境。
  • MagicBox:前端工具集,免费、在线的前端产品,支持拖拽组件生产前端代码,帮助开发者快速构建SaaS的前端。
  • 开发框架:提高开发者研发效率的功能组件的集合,基于开发框架进行降低通用的研发难度。

3. 产品架构

产品结构图:
BlueKing1-PaaS平台_第1张图片

4. 快速入门

1. 使用蓝鲸的某个SaaS

  1. 进入工作台/桌面(若用户名/密码错误,联系系统管理员申请权限)
  2. 点击某个SaaS即可使用(若SaaS使用过程中有疑问,联系SaaS开发者/运营负责人)

2. 开发一个SaaS

  1. 从“工作台”点击“开发者中心”
  2. 选择“新手指南”,按指引完成SaaS的开发
    BlueKing1-PaaS平台_第2张图片

5. 场景案例

1. 如果将蓝鲸S-mart上的SaaS部署起来

  • 以管理员身份进入 “开发者中心”
  • 点击 “S-mart 应用”
  • 点击 “上传部署新应用”
  • 选择从蓝鲸S-mart上下载的SaaS包
  • 点击 “部署”
  • 部署成功后,即可在 “工作台” 点击进入
    BlueKing1-PaaS平台_第3张图片

2. 如何使用蓝鲸 MagicBox 拖拽一个前端界面

  • 访问MagicBox
  • 选择 “可视化布局”,选择 “PC端可视化布局” 或者 “移动端可视化布局”
  • 以PC端为例:选择网站 “布局” 结构
    BlueKing1-PaaS平台_第4张图片
  • 从左侧导航选择需要的前端元素,拖拽到右侧的布局中,双击元素可以编辑内容
    BlueKing1-PaaS平台_第5张图片
  • 最后,点击上面的 “保持” / “下载” 即可获取完整的前端界面代码

3. 如何将第三方系统放在蓝鲸桌面/工作台中使用

企业版和社区版的操作流程不一样。

  • 企业版

    • 管理员身份 → 开发者中心 → 外链应用
      BlueKing1-PaaS平台_第6张图片
    • 桌面 → 应用市场
      BlueKing1-PaaS平台_第7张图片
  • 社区版

    • 进入PaaS平台管理端:“{paas_domain}/admin”,选中“常用链接”
      BlueKing1-PaaS平台_第8张图片
    • 添加 “常用链接” ,会发现有2种类型
      BlueKing1-PaaS平台_第9张图片
      “普通链接” 将会显示在面板的 “常用链接”。
      “SaaS链接” 将会显示在工作面板中,所以需要上传一个logo。
      BlueKing1-PaaS平台_第10张图片

4. 如何配置通知渠道,如邮件、微信、短信等

蓝鲸内置了邮件、微信的通知渠道,以 “admin” 进入 “开发者中心” → “PIA网关” → “使用指南” → “微信消息组件” ,可以参考教程进行配置。该配置属于整个蓝鲸体系的通用配置。
BlueKing1-PaaS平台_第11张图片
温馨提示:

软件属于私有部署到企业内部使用,企业需要提供已有的邮件、微信、短信等通知渠道。

  1. 邮件:可使用已有的邮箱账号。

  2. 微信:可前往微信官网申请账号,蓝鲸不提供公共账号,请确保可以访问 weixin.qq.com。

  3. 短信:默认提供的是腾讯云的短信渠道,需要用户购买腾讯云的 sms 服务。

三种通知渠道,均提供了可页面化的配置方式,无需进行二次开发;若想修订,可在后台进行编码调整。
BlueKing1-PaaS平台_第12张图片
点击“发送邮件”底部显示的参数信息。
BlueKing1-PaaS平台_第13张图片

  • dest_url: 若用户不擅长用 Python,可以提供一个其他语言的接口,填到 dest_url,ESB 仅作请求转发即可打通邮件配置
  • smtp_host: SMTP 服务器地址 (注意区分企业邮箱还是个人邮箱)
  • smtp_port: SMTP 服务器端口 (注意区分企业邮箱还是个人邮箱)
  • smtp_user: SMTP 服务器帐号 (mail_sender 相同)
  • smtp_pwd: SMTP 服务器帐号密码 (一般为授权码)
  • smtp_usessl: (默认为 1)
  • mail_sender: 默认的邮件发送者 (smtp_user 相同)

点击“发送微信消息”底部显示的参数信息。
BlueKing1-PaaS平台_第14张图片

5. 部署应用过程中,状态一直在“正在提测”中,如何处理

  • 以 “admin” 身份进入蓝鲸软件

  • 在浏览器输入 “{paas_domain}/admin”即可进入 PaaS 平台的后台
    BlueKing1-PaaS平台_第15张图片

  • 进入如下图的目录,找到对应的SaaS,更改其当前的状态,即可进入重新部署
    BlueKing1-PaaS平台_第16张图片

  • 将SaaS状态调整为 “测试中” 即可对该产品重新部署

    我看过,当前版本没有更改状态了

6. 如何给某一个SaaS开组件“免用户认证”的白名单

S-mart市场和自己开发的SaaS需要开通白名单免登陆验证才能正常使用。
  • 获取 应用ID,登录PaaS平台 → 开发中心 → S-mart应用(自己开发的应用在 我的应用)
    BlueKing1-PaaS平台_第17张图片
  • 以管理员身份进入PaaS平台的后台 {paas_domain}/admin,进Function controllers目录
    BlueKing1-PaaS平台_第18张图片
  • 点击 user_auth::skip_user_auth 进入白名单组件目录
    BlueKing1-PaaS平台_第19张图片
  • 根据格式要求填写 应用ID(支持两种格式数据,以逗号、分号分隔的字符串,及json格式字符串)
    BlueKing1-PaaS平台_第20张图片

6. 产品功能

1. 个人工作台

“登录” -> “排序” -> 拖拽调整顺序 ->“完成”
BlueKing1-PaaS平台_第21张图片
BlueKing1-PaaS平台_第22张图片

2. 应用市场

所有上线的平台/SaaS应用,都展示在S-mart应用市场中,用户可以分类检索,并设置不同的导航方式。

3. 个人中心

个人信息修改、密码重置等功能。

  • 管理员:
    • “常用操作”:修改个人信息,重置密码
    • “用户管理”:进行用户增删改查
  • 普通用户
    • “常用操作”:修改个人信息,重置密码

4. 开发者服务

1. 服务概述

蓝鲸 PaaS 平台的核心功能就是为开发者提供了通用的、便捷的开发者服务,成为企业内部技术体系的核心发动机,助力企业构建内部私有化的 SaaS 应用市场。
BlueKing1-PaaS平台_第23张图片
基于 PaaS 的开发模式,大幅提升企业内部应用构建的效率。
BlueKing1-PaaS平台_第24张图片
2. 基础功能

(1)开发环境

本地开发环境、测试环境、正式环境

  • 说明:虽然用户可以看到系统,但是是否能访问这个系统,取决于应用的设计与开发,可以针对用户进行授权。

(2)开发框架

前后台开发框架,分前台和后台两部分,集成统一登录鉴权模块、功能开关模块、WEB 安全防护模块、功能组件模块等通用模块。

(3)两种仓库类型

Git 、 SVN

(4)可扩展的环境变量

对应有些敏感变量,比如外部数据库 IP,账号密码等,直接写到代码中会有暴露风险,而且每次修改,需要拉取代码,修改提测上线后才能使用,蓝鲸开发者中心针对该场景,使用变量设置功能完全可以解决开发者的变量硬编码问题

(5)免运维托管

  • 社区版:平台在部署SaaS应用时会为其创建独立的Virtualenv,保证每个SaaS拥有一套“隔离”的Python运行环境
  • 企业版:创建独立容器,保证隔离。

(6)SaaS可见范围

根据“用户管理”的“组织架构”设置 SaaS 的可见范围

(7)指定服务器部署 SaaS 应用

若承载 SaaS 运行的服务器有多个,在正式环境部署 SaaS 的时候,针对 SaaS 的特殊性可以选择独立的服务器来部署
BlueKing1-PaaS平台_第25张图片
(8)应用数据库托管服务

“S-mart 应用”部署后,PaaS 平台为每个应用分配有两套独立数据库(测试库和正式库),并配备高可用方案,保证数据的可靠性。

若选择基于 Django 框架进行 SaaS 开发,可以使用 Django admin 在线查看数据库。将数据模型注册到 admin.py 文件中,就可以在页面上对数据进行

(9)API 网关

PaaS 平台是基于 SOA 理念设计的,其中最重要的就是企业服务总线,即“ API 网关”。它有两个作用:

其一,为整个蓝鲸体系服务,蓝鲸的其他平台,如:配置平台、作业平台、数据平台等,均可以将各平台的特性以 API 的形式对接到组件中,便于 PaaS 平台上的 SaaS 调用,整合各个平台的强大功能,发挥最实用的价值。

其二,第三方系统,如微信公众号/微信企业号/企业微信、邮件系统、OA 系统、AD 系统、财务系统等非蓝鲸体系内的运营系统,同样以 API 的形式将特性对接到组件,丰富和完善整个 PaaS 平台企业服务总线的服务。从而使 PaaS 平台之上的 SaaS 可以调度一些,连接一切。
BlueKing1-PaaS平台_第26张图片
BlueKing1-PaaS平台_第27张图片
特别说明:

1)APIGateway 是企业服务总线(ESB)功能的一部分。经常用“ESB”指代通过编码方式接入的 API,该模式接入后,需要根据指引,需要重启服务模块才能生效;“APIGateway”指代通过 RESTful API 的模式接入的 API ,该模式接入后,无需重启服务模块。

2)根据当前的组件目录结构,组件加载顺序为:先查找“apis”,再查找“templates”,请将用户自定义编码接入的 API 放到“templates”目录下,否则版本更新中,会覆盖官方提供的原生 API。

“API 网关” 仅限于“管理员”角色操作,从“开发者中心”—>“API 网关”进入使用。

“API 网关” 给出了详细的使用文档,分为以下几个部分:

  1. 简介:概述 API 网关,API 网关的两种接入教程:编码方式(采用 Python 语法)和自助接入方式

  2. 系统管理:API 来自于哪个系统,可以看成是 API 的分类

  3. 通道管理:API 访问的路径管理

  4. 自助接入:目前仅支持 http 请求形式的自助接入

  5. 使用指南:详细的 API 网关的使用教程,如接入教程、自定义配置信息调整、CMSI 消息通知如何配置,以及如何为新加入的组件生产/更新“组件文档”

  6. API 文档:查询蓝鲸官方的和自定义接入组件的使用文档

(10)MagicBox

MagicBox(链接:http://magicbox.bk.tencent.com/),又称为前端工具集。

5. 系统管理

1. 用户管理

2. 应用管理

蓝鲸 PaaS 平台承载着众多 SaaS,根据 SaaS 部署方式分为 3 种:

  • 第一种:S-mart 应用,通过“下载 SaaS 包 -> 上传部署(正式环境)-> 配置后台服务(可选)-> 工作台进入”的方式来使用
  • 第二种:我的应用,属于开发者/用户自己研发的 SaaS 应用,按照“创建应用 -> 研发 -> 测试环境部署 -> 正式环境部署”的方式自研工具/系统。当应用创建完成后,可以在“我的应用”中看到,并对指定的应用进行基本操作。
  • 第三种:外链应用,在社区版中没有放到“开发者中心”进行添加,而是通过 PaaS 平台的后台管理进行操作。

3. 系统维护

  • 服务器管理:对搭建部署 SaaS 运营时托管环境的服务器进行操作:添加服务器列表、刷新操作、删除。
    BlueKing1-PaaS平台_第28张图片

  • 第三方服务:对 SaaS 通用的第三方服务进行管理,可以根据企业情况添加。
    BlueKing1-PaaS平台_第29张图片

  • 配置通知渠道:参考“使用指南 -> CMSI 消息组件”的使用教程,即可完成内置的邮件、微信/企业微信/公众号、短信、语音的通知服务配置。
    BlueKing1-PaaS平台_第30张图片

  • SaaS 上下架:可以从后台进入到指定目录下,对 SaaS 的状态进行调整。
    BlueKing1-PaaS平台_第31张图片

  • API 网关运行数据(仅限企业版):运行数据是组件调用的实时数据,通过该数据可以观察 API 网关的健康度,及时进行系统维护。
    BlueKing1-PaaS平台_第32张图片
    BlueKing1-PaaS平台_第33张图片

6. 权限中心

权限中心(Identity and Access Management)是蓝鲸智云提供的集中权限管理服务,用于蓝鲸体系内各平台和 SaaS 的权限集中接入,以及提供细化到具体资源实例的资源访问权限控制。
BlueKing1-PaaS平台_第34张图片

7. 用户管理

用户管理(User Management)是蓝鲸智云提供的用户及组织架构管理服务,通过该服务可以管理本地和对接企业已有的用户组织架构。
BlueKing1-PaaS平台_第35张图片

8. 其他功能

1.对接企业 SSO

  • 适配企业内已有的权限登录系统

2.高可用集群(企业版)

  • 平台各服务模块,均采用多机部署,由接入层的 healthcheck 模块做负载均衡,保证了平台基础服务的可用性;线上环境的 SaaS 服务也采用了同样的技术方案,多实例部署,在保证隔离性的同时,提高了 SaaS 服务的可用性

3.组件访问频率控制(企业版)

  • 组件是连接各个系统的桥梁,需要时刻保证组件的可用性和稳定性,通过组件的访问频率控制有效地缓解组件服务的压力。

4.企业贴身定制培训

5.版本信息

  • 统一查看版本信息的界面,方便对齐后台版本信息。
    BlueKing1-PaaS平台_第36张图片

7. API文档

略,这个在实际开发中查看文档,按其操作即可。

你可能感兴趣的:(BlueKing,saas,paas)