文档章节

轻松搞定你的IPython + Notebook 基于云的科学计算环境(含详细步骤)

l
 lindylin
发布于 2015/03/06 17:48
字数 1963
阅读 30052
收藏 21
点赞 4
评论 3

IPython + Notebook 提供了一种基于云的科学计算开发环境。它既能够使开发者享受到云计算的强大计算能力,也能够使开发者无需在自己本地安装任何软件就能有良好的开发界面。此外,从本地到云端,带宽要求极低。

准备工作:只需要你的本地浏览器即可!!

注册一个云计算帐号

这里我们建议注册超能云(SuperVessel Cloud)(注册网址:http://www.ptopenlab.com)。原因有两个:

    1. 超能云是OpenPOWER基金会支持下构建的,完全面向开发者免费的云平台。

    2. 超能云目前已经有了支持IPython + Notebook的镜像,免费供开发者使用。

(关于超能云SuperVessel 本身,可参看链接:http://my.oschina.net/u/1431433/blog/380504)

注册步骤很简单(如果您已经有了帐号,可以直接到下面一节)

  1. 进入网址:http://www.ptopenlab.com

  2. 点击右上方的“注册”按钮。在弹出的对话框填写你的有效邮箱地址,还有密码。邮箱地址必须有效,因为超能云(SuperVessel)会给您发一封激活的邮件。


    3. 进入你注册使用的邮箱,有一封发自admin@ptopenlab.com的邮件,点击里面的激活链接,你的帐号就可以被激活使用了。

建立一个支持IPython + Notebook的虚拟机

1. 点击 http://www.ptopenlab.com 页面上的“申请POWER虚拟机”按钮,就可以进入SuperVessel云平台管理界面。 SuperVessel会要求您再登陆一次。您使用之前注册的帐号密码即可。

2. 用户登录后,进入主面板,如下图所示访问预装软件计算服务(Pre-installed compute service):

3. 通过选择预装软件计算服务(Pre-installed compute service), 进入预装好的开发环境镜像列表.如下图所示。

4. 选择“Python科学计算及应用开发环境”,点击“启动”。在如下弹出框继续选择“启动”。

在这里,界面提示会每天扣除10个蓝点。因为在你注册的时候,系统已经预先分配了一大批蓝点给用户。此外,SuperVessel他们会经常有小活动,奖励用户蓝点。基本上不用发愁蓝点的问题:)可以加入QQ组:SuperVessel (344373069)获得最新的活动信息,也可以关注微信公众号 SuperVessel。

5. 在上一个步骤中点击“启动”后,系统会通知新的实例创建成功。如果你原来没有在SuperVessel上面申请过资源,系统还会给你分配一个VPN帐号。

关于VPN的设置,可以参看链接:https://services.ptopenlab.com/mediawiki/index.php/VPN%E7%9A%84%E4%BD%BF%E7%94%A8 ,有十分详细的步骤说明。

登录并配置IPython + Notebook 开发环境

在这个步骤中,我们要登录到刚刚建立的云平台虚拟机配置开发环境。

1. 登录开发环境需要先进行VPN登录。具体VPN的登录方法,详见:https://services.ptopenlab.com/mediawiki/index.php/VPN%E7%9A%84%E4%BD%BF%E7%94%A8

2. 在连通VPN后,即可登录该开发环境所在的虚拟机。可使用类似putty的工具在Windows环境下登录,或直接使用SSH在Linux环境下登录。

3. 这个开发环境需要在root权限下进行服务的启动、配置和停止。登录到虚拟机后,可以通过su命令切换到root。如:

opuser@gto:/home/opuser# su

root密码的初始值为passw0rd,在首次登录时会强制修改密码。修改的密码原则是:

至少8个字符 必须包括大写字母、小写字母和数字 大写字母在密码的首位或数字在密码的末尾都不算。 系统会提示重复确认输入的新密码。

4.  打开服务端口。本开发环境使用Web-Server方式提供远程图形化界面。目前默认使用的服务端口是9999。在使用前,需要到你的管理平台的界面 https://crl.ptopenlab.com:8800/dashboard/project/access_and_security/  打开9999端口。具体操作步骤,可以参见链接:https://services.ptopenlab.com/mediawiki/index.php/%E6%8E%A7%E5%88%B6%E6%9C%8D%E5%8A%A1%E7%AB%AF%E5%8F%A3%E8%AE%BF%E9%97%AE

由于我们的开发环境是基于Ubuntu Linux构建的,所以不需要配置虚拟机内部的防火墙。在增加服务端口时,可以按照下图来配置必要的选项。

5. 启动IPython Notebook服务。在root帐号下,在虚拟机中,输入如下命令,启动远程科学计算开发环境的服务:

 root@gto:~/# ipython notebook --profile=nbserver

服务启动成功后,会看到类似如下的命令行输出

2014-12-21 18:11:35.339 [NotebookApp] Using existing profile dir: u'/root/.ipython/profile_nbserver'
     2014-12-21 18:11:35.344 [NotebookApp] Using system MathJax
     2014-12-21 18:11:35.351 [NotebookApp] Serving notebooks from local directory: /root/src
     2014-12-21 18:11:35.351 [NotebookApp] The IPython Notebook is running at: https://[all ip addresses on your system]:9999/
     2014-12-21 18:11:35.351 [NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
     ^C2014-12-21 18:11:41.925 [NotebookApp] interrupted
     Serving notebooks from local directory: /root/src
     The IPython Notebook is running at: https://[all ip addresses on your system]:9999/

在本地打开浏览器访问图形化开发界面

在您当前的终端电脑上启动浏览器,在地址栏输入

https://172.16.10.35:9999/

其中,172.16.10.35需要替换成您的虚拟机IP地址。因为我们要使用SSL加密Web和服务器之间的所有通信,所以不能是“http”而必须是“https”,但由于虚拟机使用的是直接的IP地址,所以浏览器会有警告提醒。我们直接接受该警告提醒即可。

对于IE浏览器,会出现如下图的警告:

选择“继续浏览此网站(不推荐)。”即可。Firefox或Chrome也会有类似的页面,选择类似选项即可。然后看到如下IPython的页面,证明连接服务器正常了:

在这个镜像中,我们设置IPython notebook的初始密码是 passw0rd . 使用该密码登陆进去,就可以进行第一个科学计算的操作了。

编写第一个IPython的远程科学计算程序

可以在页面上选择“New Notebook”,就会为新的程序打开一个新的标签页。例如,我们在新的标签页输入两行命令,

a = rand(100)
plot(a)

这两行命令很简单,先是定义数组a为100个随机数的数组。然后用plot命令把a数组生成线状图。 以下是您可以获得的界面:

是不是很简单,很方便呢?

修改IPython Notebook图形化界面登录密码

如果您不想使用初始密码,可以按照下面的步骤来修改IPython Notebook 服务的登陆密码。

1. 在root权限下,输入下面的命令,以生成新的密码

python -c "import IPython;print IPython.lib.passwd()"

2. 输入两次新的密码后,系统会为新的密码生成SHA串。

     Enter password:
     Verify password:
     sha1:a83146285fe2:5288dfeb3a6a88cf46028af16992fadce... (安全原因略去)

3. 编辑配置文件

vim /root/.ipython/profile_nbserver/ipython_notebook_config.py

4. 修改密码项:

 c.NotebookApp.password = u'sha1:a83146285fe2:5288dfeb3a6a88cf46028af16992fadce...'

5. 重新启动服务:

     ipython notebook --profile=nbserver

密码修改完成!


© 著作权归作者所有

共有 人打赏支持
l
粉丝 22
博文 16
码字总数 14765
作品 0
海淀
加载中

评论(3)

a
amwons
晚上配置了一下,有些挺麻烦,而且还无法远程web访问
猪头呢
猪头呢
基于openstack ? 有点面熟。
四片叶子
四片叶子
。。感觉与其如此不如直接到datahub.top上用搭好的ipython notebook
ipython和Jupyter Notebook

ipython ipython是一个python的交互式shell,比默认的python shell好用得多,支持变量自动补全,自动缩进,支持bash shell命令,内置了许多很有用的功能和函数。学习ipython将会让我们以一种...

lvyz0207 ⋅ 05/24 ⋅ 0

从零开始用Python3做数据分析

点击关注 异步图书,置顶公众号 每天与你分享 IT好书 技术干货 职场知识 参与文末话题讨论,每日赠送异步图书 ——异步小编 欢迎来到Python数据分析的世界!如今,Python已成为数据分析和数据...

异步社区 ⋅ 05/19 ⋅ 0

Win 10基于Python 3.6安装IPython Notebook

本文介绍基于Python 3.6安装IPython Notebook的过程。 若要了解基于Python 2.7安装IPython Notebook的过程,请参考 Win 10基于Python 2.7安装IPython Notebook 1 安装Python 3.6 请参考 Win ...

海天一树X ⋅ 05/03 ⋅ 0

Kaggle泰坦尼克船难逻辑回归预测生存率

一、题目 https://www.kaggle.com/c/titanic 二、编程环境准备 (一)操作系统:Win 10 (二)编程语言:Python 3.6 Win 10安装Python 3.6 (三)需要的库:numpy + pandas + matplotlib + s...

海天一树X ⋅ 05/10 ⋅ 0

使用交互式 shell 来增强你的 Python

Python 编程语言已经成为 IT 中使用的最流行的语言之一。成功的一个原因是它可以用来解决各种问题。从网站开发到数据科学、机器学习到任务自动化,Python 生态系统有丰富的框架和库。本文将介...

10% ⋅ 05/19 ⋅ 0

docker安装anaconda数据分析

目录 docker 安装docker mac:下载安装包 centos: ubuntu: docker运行容器 docker容器转镜像 以下操作是在容器内进行 安装anaconda 提示输入 yes 最后 安装完成 更新anaconda 安装包 安装jup...

u011552182 ⋅ 04/23 ⋅ 0

在Jupyter Notebook中增加Python内核

本人在Python 3.6的环境下,安装了Jupyter 进入到Jupyter Notebook后,点击Kernel菜单的Change kernel子菜单,只看到只有一个Python 3。如果这时想要增加Python 2的内核(Python 2.7),可通...

雪饼 ⋅ 06/07 ⋅ 0

Mac 安装pip , ipython

mac 本身已经带了python,自带版本是2.7.10. 但是pip和ipython都需要自己安装,本文简单记录下安装步骤,以备不时之需; 1、pip是python的包管理工具(mac默认是不带pip的,所以第一步要先安...

西鼠 ⋅ 06/05 ⋅ 0

CentOS6.5安装python2.7.9

以前一直用ubantu下的python,ubantu比较卡。自己倾向于使用centos,但默认的python版本太低,所以重新装了一个python和ipython centos6.5安装python2.7.9 第一步:安装devtoolset [root@sp...

wujunqi1996 ⋅ 05/12 ⋅ 0

IPython 5.7.0 和 6.4.0 发布,Python 命令行交互

IPython 5.7.0 和 6.4.0 发布了。IPython 是 Python 的原生交互式 shell 的增强版,可以完成许多不同寻常的任务,比如帮助实现并行化计算;主要使用它提供的交互性帮助,比如代码着色、改进了...

达尔文 ⋅ 05/12 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

sbt网络问题解决方案

http://dblab.xmu.edu.cn/blog/maven-network-problem/

狐狸老侠 ⋅ 11分钟前 ⋅ 0

大数据,必须掌握的10项顶级安全技术

我们看到越来越多的数据泄漏事故、勒索软件和其他类型的网络攻击,这使得安全成为一个热门话题。 去年,企业IT面临的威胁仍然处于非常高的水平,每天都会看到媒体报道大量数据泄漏事故和攻击...

p柯西 ⋅ 54分钟前 ⋅ 0

Linux下安装配置Hadoop2.7.6

前提 安装jdk 下载 wget http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.7.6/hadoop-2.7.6.tar.gz 解压 配置 vim /etc/profile # 配置java环境变量 export JAVA_HOME=/opt/jdk1......

晨猫 ⋅ 今天 ⋅ 0

crontab工具介绍

crontab crontab 是一个用于设置周期性被执行的任务工具。 周期性执行的任务列表称为Cron Table crontab(选项)(参数) -e:编辑该用户的计时器设置; -l:列出该用户的计时器设置; -r:删除该...

Linux学习笔记 ⋅ 今天 ⋅ 0

深入Java多线程——Java内存模型深入(2)

5. final域的内存语义 5.1 final域的重排序规则 1.对于final域,编译器和处理器要遵守两个重排序规则: (1)在构造函数内对一个final域的写入,与随后把这个被构造对象的引用赋值给一个引用...

江左煤郎 ⋅ 今天 ⋅ 0

面试-正向代理和反向代理

面试-正向代理和反向代理 Nginx 是一个高性能的反向代理服务器,但同时也支持正向代理方式的配置。

秋日芒草 ⋅ 今天 ⋅ 0

Spring 依赖注入(DI)

1、Setter方法注入: 通过设置方法注入依赖。这种方法既简单又常用。 类中定义set()方法: public class HelloWorldOutput{ HelloWorld helloWorld; public void setHelloWorld...

霍淇滨 ⋅ 昨天 ⋅ 0

马氏距离与欧氏距离

马氏距离 马氏距离也可以定义为两个服从同一分布并且其协方差矩阵为Σ的随机变量之间的差异程度。 如果协方差矩阵为单位矩阵,那么马氏距离就简化为欧氏距离,如果协方差矩阵为对角阵,则其也...

漫步当下 ⋅ 昨天 ⋅ 0

聊聊spring cloud的RequestRateLimiterGatewayFilter

序 本文主要研究一下spring cloud的RequestRateLimiterGatewayFilter GatewayAutoConfiguration @Configuration@ConditionalOnProperty(name = "spring.cloud.gateway.enabled", matchIfMi......

go4it ⋅ 昨天 ⋅ 0

Spring clound 组件

Spring Cloud技术应用从场景上可以分为两大类:润物无声类和独挑大梁类。 润物无声,融合在每个微服务中、依赖其它组件并为其提供服务。 Ribbon,客户端负载均衡,特性有区域亲和、重试机制。...

英雄有梦没死就别停 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部