AWS EC2使用过程总结

news2024/11/19 18:30:09

步骤1:开通AWS账号

  • 需要一个邮箱、一个信用卡账号;
  • 有第一年的免费试用,EC2每个月免费试用750小时;
  • 注册完成后,得到实例管理平台:

步骤2:开通EC2实例

步骤3:开通网关和安全组,使外部可以访问

在任何一台电脑的浏览器输入云服务器的公网ip xx.xx.xx.xx:5000 都会得到云服务器的响应。(若没有得到响应,检查一下云服务器的安全组,是否增加有规则 0.0.0.0/0的端口TCP:5000 放通)

子步骤3.1 开通安全组中的ICMP端口,使之能ping通

  • 安全组中需要把入站和出站设置到位
    在这里插入图片描述
    在这里插入图片描述

子步骤3.2 开通防火墙的入站和出站协议

  • 如果想简单粗暴,直接全部关闭,这种方式存在安全漏洞
    在这里插入图片描述
  • 开通部分的端口和规则
    入站规则中允许ICMP,新建规则
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 开通特定范围的入站和出站端口
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

子步骤3.3 打开测试机器的telnet功能

  • Telnet是什么?
    telnet是teletype network的缩写,现在已成为一个专有名词,表示远程登录协议和方式,分为Telnet客户端和Telnet服务器程序
    在这里插入图片描述
    在这里插入图片描述
  • Telnet的使用
    在这里插入图片描述

步骤4:Python Anaconda服务、应用服务部署

子步骤4.1:部署anaconda web服务

下载安装anaconda

https://www.anaconda.com/products/distribution
官网下载anaconda即可,jupyter内嵌在anaconda里,安装过程没什么好说的,点点点就完事了,注意这里要勾选上,否则cmd无法直接访问。
在这里插入图片描述

如何配置anaconda,使之可以外网访问

这里非常的重要,也很容易出问题,之前因为一个空格,活生生的改了一晚上,硬是没有找出问题来。具体的配置步骤如下:
1.在桌面左下角点击开始》Anaconda3》Anaconda Prompt,输入

jupyter notebook --generate-config

得到如下存储地址
在这里插入图片描述
2.在Anaconda Prompt输入

ipython
from notebook.auth import passwd
passwd()

回车,然后设置密码,写两遍(输入时看不见且不显示*号)
在这里插入图片描述
out[2]后面的这段乱码就是你的密码,复制一下保存下来
C:\Users\Administrator.jupyter\jupyter_notebook_config.py
用记事本打开这个python文件
添加如下几行命令:

c.NotebookApp.password = u'  '  # 在u后的引号内输入上一步复制的密码
c.NotebookApp.ip='*'   
c.NotebookApp.open_browser = False 
c.NotebookApp.port =39     #可自行指定一个端口, 访问时使用该端口

之前是因为多了个空格,怎么都没有找到,所以无法排除错误
在这里插入图片描述
同时,还需要给JSON文件修改一下密码
在这里插入图片描述

4.之前已经开通了范火墙的端口范围了,这里不再开通了;

5.在服务器命令行中输入jupyter notebook开启
在这里插入图片描述
6.在本地就可以通过浏览器访问 http:// 公网ip:port(例如:http://127.0.0.1:39)远程访问jupyter

如:http://13.49.102.116:8888/tree?

主要参考:https://zhuanlan.zhihu.com/p/440080687

子步骤4.2:部署flask服务,使之可以外网访问

  • Falsk:小而轻,极容易上手,第三方提供的组件多,加起来可以完全覆盖Django。
  • Flask应用构建示例
    1.安装flask
pip install Flask

2.验证是否已经安装成功,若import没有报错,即是已经安装成功:

import flask

3.我用的是jupyter notebook环境,写一个简单的flask程序:

#export
# 【整体流程】
# 在app.py程序文件中,app是flask的实例,功能就是接受来自web服务器的请求,
# 1、浏览器将请求给web服务器,web服务器将请求给app ,
# 2、app收到请求,通过路由找到对应的视图函数,然后将请求处理,得到一个响应response
# 3、然后app将响应返回给web服务器,
# 4、web服务器返回给浏览器,
# 5、浏览器展示给用户观看,流程完毕。
 
# 【1、初始化】
# 所有的Flask都必须创建程序实例
# web服务器把客户端所有的请求都转发给这个程序实例,程序实例是Flask的对象
# 一般情况下用如下方法实例化
# Flask类只有一个必须指定的参数,即程序主模块或者包的名字,__name__是系统变量,该变量指的是本py文件的文件名
 
 
from flask import Flask
 
app = Flask(__name__)
 
 
 
# 【2、路由和视图函数】
# 客户端发送url给web服务器,web服务器将url转发给flask程序实例,程序实例
# 需要知道对于每一个url请求启动哪一部分代码,所以保存了一个url和python函数的映射关系。
# 处理url和函数之间关系的程序,称为路由
# 在flask中,定义路由最简便的方式,是使用程序实例的app.route装饰器,把装饰的函数注册为路由
 
 
@app.route('/')
def cdc_say():
    return "Hello, Flask !"
 
@app.route('/angela')
def angela_say():
    return "Hi, I'm angela !"
 
@app.route('/alex')
def alex_say():
    return "Hay, I'm alex !"
 
 
# 【3、程序实例用run方法启动flask集成的开发web服务器】
#  __name__ == '__main__'是python常用的方法,表示只有直接启动本脚本时候,才用app.run方法
#  如果是其他脚本调用本脚本,程序假定父级脚本会启用不同的服务器,因此不用执行app.run()
#  服务器启动后,会启动轮询,等待并处理请求。轮询会一直请求,直到程序停止。
 
if __name__ == '__main__':
 
    print('dd',__name__)
 
    app.run()
 
# app.run( )

4.跑起来,得到如下结果:
在这里插入图片描述
在Chrome浏览器地址栏输入: http://127.0.0.1:5000/
如果无法访问,多半是因为anaconda的问题,可以直接保存为Python文件,然后用Python命令来跑。

主要参考:https://blog.csdn.net/qinwolf_/article/details/128762630

子步骤4.3:部署Django服务,是之可以外网访问

子步骤4.4:构建IBM qiskit开发环境

参考地址:
https://qiskit.org/documentation/partners/qiskit_ibm_runtime/getting_started.html

pip install qiskit
pip install qiskit-ibm-runtime
from qiskit_ibm_runtime import QiskitRuntimeService
# Save an IBM Quantum account.
QiskitRuntimeService.save_account(channel="ibm_quantum", token="MY_IBM_QUANTUM_TOKEN")

token的生成地址如下:
https://quantum-computing.ibm.com/account?needs_refill=true

from qiskit_ibm_runtime import QiskitRuntimeService

service = QiskitRuntimeService()
program_inputs = {'iterations': 1}
options = {"backend_name": "ibmq_qasm_simulator"}
job = service.run(program_id="hello-world",
                options=options,
                inputs=program_inputs
                )
print(f"job id: {job.job_id()}")
result = job.result()
print(result)

job的运行结果如下:

其他注意事项

  • 同时开通安全组和防火墙的CIMP、TCP端口,才有效;
  • Anaconda的config.py文件中不能多空格;
  • 设置anaconda远程访问需要配置两处密码;
  • AWS每次关机后,IP值会变,公网IP,所以需要重新找到对应的IP;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/444660.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Python小技巧】一步到位升级到pandas 2.0.0正式版

文章目录 前言一、Pandas是什么?二、Pandas 2.0.0的升级特性三、升级安装Pandas 2.0.0正式版总结 前言 工欲善其事必先利其器,大数据、AI时代,目前Python 最新版本是3.11 ,而Pandas也刚刚完成大升级,进入 2.0.0时代。…

ChatGPT 中的人类反馈强化学习 (RLHF) 实战

目录 1 前言2 人类反馈强化学习 (RLHF)2.1 奖励模型 (RM)2.2 近端策略优化算法 (PPO) 3 总结4 参考 团队博客: CSDN AI小组 相关阅读 ChatGPT 简介大语言模型浅探一关于 ChatGPT 必看的 10 篇论文从 ELMo 到 ChatGPT:历数 NLP 近 5 年必看大模型 1 前言 在当今数字…

整型、浮点型与字符串相互转换(C/C++)

文章目录 1. 整型、浮点型 -> 字符串2. 字符串 -> 整型3.字符串 -> 浮点型 1. 整型、浮点型 -> 字符串 A. 函数原型:   B. 分析  通常整型转换一般都是准确的,但是浮点型进行转换的时候因为精度问题有效数字位可能会出现一些偏差.   C. …

pushmall推贴共享电商2023年4月计划

Pushmall推贴共享电商2023年4月计划 2023年 二月份优化完成 1、商圈套餐卡:商品、优惠券、活动优化; 2、会员预充值一卡通:指定商家会员卡充值优惠; 3、商家海报:店铺海报、商品海报、商圈卡海报优化。 4、首页重新布…

SpringBoot(5)整合缓存

Springboot整合缓存 缓存SpringBoot内置缓存整合Ehcache缓存数据淘汰策略整合Memcached缓存SpringBoot整合jetcache缓存纯远程方案纯本地方案本地远程方案方法缓存远程方案的数据同步数据报表 SpringBoot整合j2cache缓存 缓存 企业级应用主要作用是信息处理,当需要…

【STM32】基础知识 第六课 内核 架构

【STM32】基础知识 第六课 内核 & 架构 F1 系统架构F4 系统架构F7 系统架构H7 系统架构 F1 系统架构 4 个主动单元 4 个被动单元 主动单元被动单元Cortex M3 内核 DCode 总线 (D-Bus)内部 FLASHCortex M3 内核系统总线 (S-Bus)内部 SRAM通用 DMA1FSMC通用 DMA2AHB 到 AP…

PCA主成分分析 从零理解

一、PCA的目的 假设我们有一堆观测到的数据。 数据的格式是observation*feature,每一行是一个观测(也就是图里的一个点),每一列是这个数据的某个特征(即一个维度)。 假设数据矩阵是A,有m个观测…

辉煌优配|刚刚!“中字头”再度爆发

今天早盘,A股全体持续震动收拾,上证50指数跌破2700点整数关口,沪深300亦失守4100点。 盘面上,国防军工、种业、中字头、电气设备等板块涨幅居前,前期抢手的人工智能、半导体、信创、软件服务等板块全线回调。北上资金净…

零售店铺管理系统有哪些作用?选择零售管理系统要注意这4大问题

零售店铺管理系统主要是帮助实体零售店提高销售效率、降低成本、提升服务质量和客户满意度。 对于零售店铺来说,选择一款合适的零售店铺管理系统,可以有效提高其管理效率和精准度,同时也有利于自家店铺在市场竞争中占据优势。 一、零售店铺管…

Keil系列教程02_新建基础软件工程

1写在前面 目前Keil的四款产品(软件):MDK-ARM、C51、C251、C166,在用法上极为相似,包括本文讲述的新建软件工程。 本文以目前(2018年10月)最新Keil MDK-ARM V5.26、STM32F103标准外设库为例&am…

晨控CK-FR208-PN与西门子PLC工业Profinet协议通讯指南

晨控CK-FR208-PN是一款支持标准工业Profinet协议的多通道工业RFID读写器,读卡器工作频率为13.56MHZ,支持对I-CODE 2、I-CODE SLI等符合ISO15693国际标准协议格式标签的读写。 读卡器同时支持标准工业通讯协议Profinet,方便用户通集成到PLC等…

电子模块|外控集成 LED 光源 WS2812模块---软件驱动stm32版

电子模块|外控集成 LED 光源 WS2812模块---软件驱动stm32版 模块简介单线归零码通讯方式24bit 数据结构 stm32 驱动 模块简介 WS2812是一个集控制电路与发光电路于一体的智能外控LED光源。其外型与一个5050LED灯珠相同,每个元件即为一个像素点。像素点内部包含了智…

CxImage学习使用1:环境搭建

目录 前言 一、CxImage相关介绍 二、编译源码 三、将CxImage使用到自己的工程中 前言 CxImage是一个可以用于MFC 的C图像处理类库类,它可以打开,保存,显示,转换各种常见格式的图像文件,比如BMP, JPEG, GIF, PNG, TI…

“cnpm : 无法加载文件 C:\Users\xx\AppData\Roaming\npm\cnpm.ps1,因为在此系统上禁止运行脚本“ 解决办法

系统安全策略原因导致cnpm安装依赖包的时候提示以下错误,解决方案: 错误详情: cnpm : 无法加载文件 C:\Users\xx\AppData\Roaming\npm\cnpm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsof…

大家经常说的java八股文到底是什么?让我来总结一下吧!

八股文问题集合 面试必看java八股文 问题正在收录中,累了休息一会,如果有需要请,先关注,这几天会更帖子,答案后续补上 文章目录 八股文问题集合问题正在收录中,累了休息一会,如果有需要请&#…

AI大数据可视化EasyCVR视频融合平台的部署操作流程详解

EasyCVR视频融合平台基于云边端一体化架构,具有强大的数据接入、处理及分发能力,平台支持海量视频汇聚管理,能在复杂的网络环境中,将分散的各类视频资源进行统一汇聚、整合、集中管理,实现视频直播、云端录像、云存储、…

使用MyBatis实现CRUD操作

文章目录 简介(一)学习方向(二)学习事项 一,准备工作二,查询表记录(一)在映射器配置文件里引入结果映射元素(二)添加按姓名查询用户记录功能1,添加…

day02_第一个Java程序

在开发第一个Java程序之前,我们必须对计算机的一些基础知识进行了解。 常用DOS命令 Java语言的初学者,学习一些DOS命令,会非常有帮助。DOS是一个早期的操作系统,现在已经被Windows系统取代,对于我们开发人员&#xf…

5 个有效好用的恢复文件和照片的 Android恢复软件推荐

当我们使用移动设备时,有时会发现设备出现问题并不少见,但最好的 android 数据恢复应用程序可能会非常有帮助。虽然大多数电话故障只需一​​两天即可修复,但在某些情况下,电话几乎没电了,您无法访问宝贵的数据。幸运的…

知识图谱学习笔记——(三)知识图谱的存储与查询

一、知识学习 声明:知识学习中本文主体按照浙江大学陈华钧教授的《知识图谱》公开课讲义进行介绍,并个别地方加入了自己的注释和思考,希望大家尊重陈华钧教授的知识产权,在使用时加上出处。感谢陈华钧教授。 (一&…