构建云服务器平台(jupter notebook)运行算法

简介: 构建云服务器平台(jupter notebook)运行算法的步骤

出发点:

本地电脑只有4个核心,8G内存,算法的参数选择比如网格搜索选取参数,训练速度慢且出现任务无法合并到worker的情况

解决方案:

1、购买云服务器(基于之前使用的阿里云平台)

选取按流量计费

2、在服务器上安装运行环境

2.1安装anaconda(包管理软件)

下载列表:

5230e49e1e111597e5a2d12415315a86_watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2hlZGEz,size_16,color_FFFFFF,t_70.png

 https://repo.continuum.io/archive/Anaconda3-2019.07-Linux-x86_64.sh

安装步骤:

安装命令:bash Anaconda3-2019.07-Linux-x86_64.sh

d18ef9dbb7ec651e2860c4785d427fa0_2019092722314876.png

ee7caa276ad87464c3118b420c274782_20190927223205626.png

2.2安装jupter notebook

1)conda安装 jupynotebook

 安装命令:conda install jupyter

 参考:https://blog.csdn.net/yimingsilence/article/details/80679564


(2)pip 安装jupynotbook

   sudo pip install jupyter

   安装 ipython

    sudo apt-get -y install ipython ipython-notebook

(3)设置密码

在Xshell执行命令:

$ jupyter notebook password
Enter password:  yourcode  #输入密码
Verify password: yourcodeagain   #再次输入密码确认
#运行后结果
[NotebookPasswordApp] Wrote hashed password to /Users/you/.jupyter/jupyter_notebook_config.json    #密码被保存的位置 ~/.jupyter/jupyter_notebook_config.json

参考:JupyterNotebook配置远程登录 https://blog.csdn.net/u014636245/article/details/83652126

2.3 配置notebook

1)打开配置文件(使用vim操作:esc退出编辑模式,shift+G滚到最后一行,shit+i编辑,shit+:+wq保存退出):

cd ~/.jupyter
vim jupyter_notebook_config.py

(2) 添加配置文件内容:

# Set options for certfile, ip, password, and toggle off browser auto-opening
# 设置证书、ip、密码并关闭自动打开浏览器
# 设置证书地址
c.NotebookApp.certfile = u'/root/secret/mycert.pem'
c.NotebookApp.keyfile = u'/root/secret/mykey.key'
# Set ip to 'localhost' to bind on localhost for the private usage
# 用localhost域名来访问jupyter notebook
c.NotebookApp.ip = 'localhost'
c.NotebookApp.password=u'添加密码哈希值'
c.NotebookApp.open_browser = False
# 为了网络安全,设置一个不常用的端口
c.NotebookApp.port = 8888

密码哈希值的获取方法 :

在本地电脑运行jupter notebook ,并输入以下命令获取

In [1]: from notebook.auth import passwd
In [2]: passwd()
Enter password:
Verify password:
Out [1]: 'sha1:XXXXXXX:-----------'

openssl着证书的获取方法:

 openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout mykey.key -out mycert.pem

并将在云服务器生成的文件  mykey.key  mycert.pem 保存在指定文件夹下,并拷贝路径待上述配置文件内容中

3、本地电脑远程访问云服务器的notebook

(1)端口转发? (2)Xshell  配置   (3)参考【4】远程访问服务器Jupyter Notebook的两种方法

下述使用第二种方式:

选择文件-》属性-》隧道并按照如下方式设置:

291c503f297e2230eb1d20110a146287_watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2hlZGEz,size_16,color_FFFFFF,t_70.png

Type选择Local(Outgoing),源主机Source Host写localhost,监听端口Listening Port填你设置的Port,目标主机Destination Host填localhost,目标端口Destination Port填你设置的端口Port。

3.1 在云服务器端操作开启允许外网连接notebook

先切换到指定目录(存在jupter格式的文件),再执行下述的命令

cd  /root/O2OCode

jupyter notebook --ip=0.0.0.0 --port=8888 --allow-root

3.2在本地浏览器打开:

输入网址http://云服务器ip地址:端口号

发现问题:采用隧道模式则应该是:https://localhost:端口号 才可以正确访问!

3.3 出现notebook 但是证书还没有验证故直接忽略安全保护

输入设置的密码,即可进入

4、执行算法

在notebook 执行,注意要打开notebook格式的文件运行才会出现编辑运行的选项

5、释放云服务器的实例

创建镜像保存


参考资料

【1】anaconda 安装  https://repo.continuum.io/archive/

【2】用SSL/TLS和XShell远程访问 Jupyter Notebook 的方法 https://blog.csdn.net/chr1991/article/details/92618832

【3】官网配置方法 Running a notebook server https://jupyter-notebook.readthedocs.io/en/latest/public_server.html#prerequisite-a-notebook-configuration-file

【4】远程访问服务器Jupyter Notebook的两种方法 https://www.jianshu.com/p/8fc3cd032d3c

相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
2月前
|
机器学习/深度学习 算法 Python
随机森林算法是一种强大的集成学习方法,通过构建多个决策树并综合其结果进行预测。
随机森林算法是一种强大的集成学习方法,通过构建多个决策树并综合其结果进行预测。本文详细介绍了随机森林的工作原理、性能优势、影响因素及调优方法,并提供了Python实现示例。适用于分类、回归及特征选择等多种应用场景。
93 7
|
2月前
|
弹性计算 监控 容灾
阿里云ECS提供强大的云上灾备解决方案,通过高可用基础设施、多样的数据备份方式及异地灾备服务,帮助企业实现业务的持续稳定运行
在数字化时代,企业对信息技术的依赖加深,确保业务连续性至关重要。阿里云ECS提供强大的云上灾备解决方案,通过高可用基础设施、多样的数据备份方式及异地灾备服务,帮助企业实现业务的持续稳定运行。无论是小型企业还是大型企业,都能从中受益,确保在面对各种风险时保持业务稳定。
64 4
|
2月前
|
自然语言处理 编译器 应用服务中间件
PHP在服务器上的运行过程
PHP在服务器上的运行过程
67 7
|
2月前
|
算法 测试技术 开发者
在Python开发中,性能优化和代码审查至关重要。性能优化通过改进代码结构和算法提高程序运行速度,减少资源消耗
在Python开发中,性能优化和代码审查至关重要。性能优化通过改进代码结构和算法提高程序运行速度,减少资源消耗;代码审查通过检查源代码发现潜在问题,提高代码质量和团队协作效率。本文介绍了一些实用的技巧和工具,帮助开发者提升开发效率。
59 3
|
2月前
|
关系型数据库 API 数据库
后端开发的艺术:从零到一构建高效服务器
在数字化时代,后端开发是支撑现代互联网应用的基石。本文旨在探讨后端开发的核心概念、关键技术以及如何构建一个高效的服务器。我们将从基础的编程语言选择开始,逐步深入到数据库设计、API开发和性能优化等关键领域。通过实际案例分析,我们将揭示后端开发的复杂性和挑战性,同时提供实用的解决方案和最佳实践。无论你是初学者还是有经验的开发者,这篇文章都将为你提供宝贵的见解和启发。
|
2月前
|
JSON 算法 数据挖掘
基于图论算法有向图PageRank与无向图Louvain算法构建指令的方式方法 用于支撑qwen agent中的统计相关组件
利用图序列进行数据解读,主要包括节点序列分析、边序列分析以及结合节点和边序列的综合分析。节点序列分析涉及节点度分析(如入度、出度、度中心性)、节点属性分析(如品牌、价格等属性的分布与聚类)、节点标签分析(如不同标签的分布及标签间的关联)。边序列分析则关注边的权重分析(如关联强度)、边的类型分析(如管理、协作等关系)及路径分析(如最短路径计算)。结合节点和边序列的分析,如子图挖掘和图的动态分析,可以帮助深入理解图的结构和功能。例如,通过子图挖掘可以发现具有特定结构的子图,而图的动态分析则能揭示图随时间的变化趋势。这些分析方法结合使用,能够从多个角度全面解读图谱数据,为决策提供有力支持。
129 0
|
3月前
|
存储 弹性计算 算法
前端大模型应用笔记(四):如何在资源受限例如1核和1G内存的端侧或ECS上运行一个合适的向量存储库及如何优化
本文探讨了在资源受限的嵌入式设备(如1核处理器和1GB内存)上实现高效向量存储和检索的方法,旨在支持端侧大模型应用。文章分析了Annoy、HNSWLib、NMSLib、FLANN、VP-Trees和Lshbox等向量存储库的特点与适用场景,推荐Annoy作为多数情况下的首选方案,并提出了数据预处理、索引优化、查询优化等策略以提升性能。通过这些方法,即使在资源受限的环境中也能实现高效的向量检索。
|
2月前
|
Ubuntu 关系型数据库 MySQL
如何选择适合CMS运行的服务器?
在数字互联网时代,企业与单位都需要搭建企业官网在互联网上展示自己的品牌和产品宣传。除去了传统建设公司开发网站外,使用CMS就成为常用的网站创建方式。而成功的网站除了选对CMS外,还需要考虑到搭建完CMS的服务器。今天的文章给大家介绍:如何选择CMS和服务器: 很多客户都不清楚是选择CMS还是先选择服务器?
|
3月前
|
JSON JavaScript 前端开发
使用JavaScript和Node.js构建简单的RESTful API服务器
【10月更文挑战第12天】使用JavaScript和Node.js构建简单的RESTful API服务器
35 0
|
3月前
|
前端开发 Java Shell
后端项目打包上传服务器部署运行记录
后端项目打包上传服务器部署运行记录
90 0