CDSW1.6的新功能
1.Bring Your Own Editor
你现在可以利用CDSW的所有好处,同时使用你熟悉的编辑器。这个功能支持在你本地电脑上运行第三方的IDE比如PyCharm,或者基于浏览器的IDE像Juypter。Base Image v8预打包了Juypter,你可以在Start Session菜单中选择它。
2.Multiple Cloudera Data Science Workbench Deployments
你现在可以通过一个Cloudera Manager部署多个CDSW。
3.Audits
CDSW会记录特定的事件,比如用户登录和分享,你可以通过查询数据库而查看这些事件。
4.Expanded Support for Distributed Machine Learning
CDSW1.6(或更高)允许你使用TensorFlowOnSpark, H2O, XGBoost等这种框架,运行分布式工作负载。这跟你在HDP/CDH集群中已经实现的Spark工作负载是一样的。
5.cdswctl CLI Client
cdwctl客户端提供一种额外的方法来与CDSW进行交互,以执行某些操作。例如,你可以使用cdswctl客户端在你本地电脑上启动一个SSH端点,然后将一个本地的IDE,比如PyCharm连接到CDSW。
你可以在CDSW的Web UI上下载cdswctl,然后在你的本地电脑中使用它。注意这个客户端不像cdsw命令行工具比如cdsw status。
6.Status and Validate Commands
Cloudera Manager中的CDSW服务现在包含两个新命令,可以用来显示CDSW的部署状态:Status和Validate。在Cloudera Manager中看到的CDSW服务状态,与你在命令行执行cdsw status和cdsw validate命令等价。
7.Experiments
- 如果你的集群配备了GPU,现在你可以在experiment中使用GPU对模型进行训练。
- 跟踪实验文件现在会刷新并自动出现在Overview页面,用于运行一个实验。以前,当一个实验结束后,你需要手动刷新页面。
8.Command Line Interface (CLI) Changes - RPM Deployments only
- 删掉了cdsw reset命令,取而代之的是cdsw stop。
- 删掉了cdsw init命令,取而代之的是cdsw start。
9.Kubernetes and Weave
Kubernetes升级到1.11.7版本,Weave Net升级到2.5.1版本。
10.Logs
- Staging Directory
你现在可以配置一个临时目录,用于保存当CDSW搜集诊断包时的阶段日志。当收集一个新的诊断包时,或者当日志大小大于10 MB时,将删除目录中的旧日志。
- Logs tab
运行的的会话现在会显示一个Logs选项卡,这个选项卡会显示engine的日志,如果存在也会显示Spark的日志。之前,如果你想访问这些日志,你需要登录到CDSW主机和Spark服务器上才查看这两部分日志。
11.Operating System
CDSW1.6支持RHEL和CentOS7.6
12.Workload Scheduling Changes
- 从1.6版本开始,CDSW允许你指定一个被标记为Auxiliary Nodes的CDSW gateway主机列表。这些主机将在工作负载调度期间被剥夺。也就是说,他们将被选中来运行不能在任何其他主机上调度的工作负载。例如,使用非常大的资源请求的会话,或者当其他主机被充分利用时。
- Reserve Master Host
CDSW1.4.3引入了一个新的特性,允许在CDSW Master主机上只运行内部的应用程序,即不会作为Worker节点。从1.6版本开始,如果是基于CSD的部署,在CM中可以直接配置Reserve Master Host属性,而不需要在Safety valves中进行配置。
13.Security
- FreeIPA Support
除了MIT Kerberos和Active Directory,CDSW现在也支持FreeIPA作为身份管理系统。
- New User Role - Operator
1.6版本包括一个新的访问角色称为Operator。当一个用户被分配为一个项目的Operator角色,他就可以启动和停止已有的作业,并且可以访问项目代码,数据和结果,但只有查看权限。
- Restricting User-Controlled Kubernetes Pods
CDSW1.6包括三个新属性,允许你控制授予用户控制(user-controlled)的Kubernetes pod的权限。一个用户控制的pod的例子是引擎pod,它为会话、作业等提供了环境。这些pod在每个用户的Kubernetes名称空间中启动。由于这些用户有能力启动任意的pod,这些设置主要是为了限制这些pod可以做什么。
- LDAP/SAML Configuration Changes
之前,如果你想将site administrator角色授予给LDAP/SAML组的用户,则该组必须在2个属性下被列出:LDAP/SAML Full Administrator Groups和LDAP/SAML User Groups。如果一个组只是在LDAP/SAML Full Administrator Groups下被列出,而在LDAP/SAML User Groups下则没有,这个组的用户将不能登录到CDSW。
在1.6版本中,你不需要在这2个属性下列出admin组,在LDAP/SAML Full Administrator Groups中列出的用户能够登录CDSW,并且拥有site administrator权限,并按预期访问CDSW。
- Project and Team Creation
Site administrators可以在Settings页面上限制用户创建项目或team,通过以下2个属性:
- Allow users to create projects
- Allow users to create teams
- Session Tokens
CDSW Web UI会话令牌的存储方法已得到加强。升级到版本1.6.0后,用户必须注销Cloudera Data Science Workbench Web UI,然后重新登录。
- Sharing
Site administrator现在可以控制是否共享控制台,通过设置Admin > Security页面的Allow console output sharing属性。禁用此属性可从项目工作区和workbench UI中删除Share按钮,并禁用对整个部署中所有共享控制台输出的访问。请注意,重新启用此属性不会自动将访问权限授予以前共享的控制台。您将需要再次手动共享每个控制台。
- TLS/SSL
CDSW现在默认使用TLS1.2。默认的cipher suites也升级到了Mozilla的Modern cipher suites。
14.Spark UI
现在,在使用Spark的运行会话中,Spark UI是其中一个选项卡,你可以直接点击查看Spark UI。
1.1 引擎升级
CDSW1.6开始打包的基础engine镜像包括的R和Python的版本为(version 8):
R - 3.5.1
Python - 2.7.11, 3.6.1
Engine 8中预安装的软件包 - 参考:
代码语言:javascript复制https://docs.cloudera.com/documentation/data-science-workbench/1-6-x/topics/cdsw_engines_packaging.html#engine_8
(仅用于升级)将现有项目升级到最新的Base Engine Images
Base Image v8修复了很多bug,确保对现有项目进行测试并升级到Base Image v8 (Project Settings > Engine),这样做有以下两个原因:
- Container Security
安全最佳实践表明引擎容器不应以root用户身份运行。引擎(v7和更低版本)短暂地以root用户身份初始化,然后以cdsw用户身份运行。现在,引擎v8(及更高版本)遵循最佳做法,并且仅以cdsw用户身份运行。
- CDH 6 Compatibility
你使用的base engine image必须与正在运行的CDH版本兼容。如果你在Spark上运行工作负载,这尤其重要。较旧的base engine(v6和更低版本)不能支持最新版本的CDH6。如果要在CDH 6上运行Spark工作负载,则必须将项目升级到base engine v7(或更高版本)。
CDSW1.6不兼容性更改
- CDSW1.6不再支持SLES12 SP2,SP3 因为SLES12 SP2和SP3,SUSE也将停止支持,所有CDSW1.6或以后的版本将不再支持SLES12 SP2和SP3。
- GPU设置更改
- 不再支持nvidia-docker1
- NVIDIA Library Path属性不再可用。 CDSW1.6默认打包安装nvidia-docker2,启用GPU后,也会自动设置NVIDIA库卷的路径。
- CDSW_PUBLIC_PORT环境变量已被弃用,并将在以后的版本中删除。改用CDSW_APP_PORT或CDSW_READONLY_PORT环境变量
CDSW1.6修复的问题
1.修复了如果列太多,则必须包含pd.options.display.html.table_schema = True才能显示Pandas Dataframe的水平滚动条的问题。现在你不需要额外设置该属性。
Cloudera Issue: DSE-3562
2.修复了内置Workbench编辑器无法正确识别使用制表符(tab)而不是空格的导入代码的问题。这也解决了在使用制表符(tab)导入代码时在编辑器中发生的导航问题。
Cloudera Issue: DSE-2976, DSE-3221
3.修复了如果附件超过4 MB,带有由作业触发的包含附件的Email无法发送的问题。
Cloudera Issue: DSE-5980, DSE-6003
4.修复了在内置Workbench编辑器中运行大型R脚本时hang住的问题。
Cloudera Issue: DSE-2817
5.修复了Markdown中未呈现.md文件的问题。 以前,只有README.md可以正确呈现。
Cloudera Issue: DSE-3315
6.修复了Python模板项目中的模型训练脚本predict.py的问题。
Cloudera Issue: DSE-5314
7.修复了当生成CDSW诊断包时占用/var/log/cdsw目录太多空间的问题,现在生成的诊断包大小已减小,现在你也可以配置诊断包生成后的临时保存目录。
Cloudera Issue: DSE-5921
8.在模型和实验中运行的cdsw-build.sh脚本,是以cdsw用户执行的。
Cloudera Issue: DSE-4340
9.解决了当机器重启后,CDSW无法自动检测GPU的问题。
Cloudera Issue: DSE-2847
10.修复了由于版本1.4.x中添加的新HTTP安全header而无法在工作台中呈现iFrame可视化效果的问题。
Cloudera Issue: DSE-5274