AWS EC2使用过程总结

2023-11-01

步骤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;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AWS EC2使用过程总结 的相关文章

随机推荐

  • PYGAME关于矩形自动移动问题(碰到边界反弹)

    import pygame sys from settings1 import plant game ai setting plant game class moving def init self ai setting screen se
  • mysql学习笔记二(函数)

    函数 一 字符串函数 二 数值函数 三 日期函数 四 流程函数 一 字符串函数 select 函数 参数 注意 substring str start len 函数起始索引为1 二 数值函数 例 select ceil 1 1 gt 2 s
  • 超算云(GPU服务器)环境配置

    最近在用并行超算云GPU服务器 中国国家网格12区 搭建毕设的环境 这里记录一下 首先 超算云服务器的登录可以采用网页版 也可以采用客户端 超算云地址 https cloud paratera com 需要注意的是 并行超算云只提供wind
  • [FPGA IP系列] BRAM IP参数配置与使用示例

    FPGA开发中使用频率非常高的两个IP就是FIFO和BRAM 上一篇文章中已经详细介绍了Vivado FIFO IP 今天我们来聊一聊BRAM IP 本文将详细介绍Vivado中BRAM IP的配置方式和使用技巧 一 BRAM IP核的配置
  • 人工智能革命:从AGI到ASI的道路

    在某种程度上 我们将获得具有人类一般智能的AGI计算机后 只是一群人和计算机平等地生活在一起 哦 实际上并不会 问题是 AGI具有与人类相同的智能和计算能力水平 但仍然具有优于人类的优势 如 硬件 速度 大脑的神经元最大频率大约为200赫兹
  • 数据分析--Python将dataframe格式数据存入clickhouse

    Python将dataframe格式数据存入clickhouse 基于Python实现大批量dataframe格式数据存入clickhouse中 python 一切 基于Python实现大批量dataframe格式数据存入clickhous
  • 信用卡风控——梯度提升树方法Python实现

    本文是一个用户按时还款的预测模型 利用台湾地区一些信用卡客户的信用额度 教育程度 婚姻状况 过去的还款状态 账单等信息对客户进行评分 采用GBDT 梯度提升树 模型对数据进行分类 预测其是否会产生逾期偿还 数据来源于kaggle的一个比赛
  • dispatch_async 与 dispatch_sync

    从字面意思上看 sync 同步 async 异步 并行队列 异步 异步 dispatch async dispatch get global queue DISPATCH QUEUE PRIORITY DEFAULT 0 dispatch
  • strcpy和strdup比较和详解

    strcpy和strdup比较和详解 函数和功能描述 extern char strdup char s 头文件 string h 功能 将串拷贝到新建的位置处 说 明 strdup不是标准的c函数 strdup 在内部调用了malloc
  • matlab中如何表示开方,在matlab里面怎么输入开方号(根号)?9的开方怎么写?...

    答 sqrt 9 nthroot 8 3 人家想求的就是实数根把 不信你试试 8 1 3 和 nthroot 8 3 你就知道区别了 很多人不知道nthroot这个函数 用指数的方法画x的3次方根的图像结果发现x 答 sqrt 9 nthr
  • 说说代码评审

    关注公众号 1024个为什么 及时接收最新推送文章 本文内容 1 代码评审的目的 2 评审准备工作 3 评审过程中容易出问题的点 4 共同成长 近一段时间以来 组内严格实行代码评审制度 参与过多次评审后发现 一次有效的代码评审并不简单 把一
  • ucint核心边缘分析_物联网加速器:边缘计算,万亿芯片新空间

    温馨提示 如需原文档 可在PC端登陆未来智库官网 www vzkoo com 搜索下载本文档 报告概览 什么是边缘计算 边缘计算被定义为 一种新的计算方式 这种模式将计算与存储资源部署在更贴近移动设备或传感器的网络边缘 其核心在于 贴近 终
  • 解决github无法访问的办法

    方法 步骤 1 问题描述 能联网但不能访问github com 2 找到hosts文件 地址 C Windows System32 drivers etc 一般是在这的 3 不要直接在这修改hosts文件 需要将hosts文件复制粘贴到桌面
  • 杨辉三角形(超级简单的Python实现方法)

    杨辉三角形大家都知道 那么在这里就不再介绍了 大家肯定都用C C 实现过杨辉三角形 是把数据存放在了一个二维数组里 那么如何让用Python来实现杨辉三角形呢 我查看了网上的很多方法 都很麻烦 有的还用到了生成器 那我们来看看简单的方法吧
  • 一个完整的项目管理流程

    一个完整的项目管理流程 从一个项目提出到结束 按照ISO9001 2000的项目管理流程 大致有如下步骤 1 产品立项报告 按照公司的管理流程 由公司有关人等都有可能提出 产品立项报告 比如公司老总 市场部门 研发部门 一般是在公司组织的定
  • 字符数组的学习总结

    今天主要讲了两点 一是字符数组的定义 二是字符数组的拷贝 也是重点 一 字符数组的定义 char arr 5 a b c d e char brr 5 a b c 聚合类型 只初始化部分 剩余部分为0 0 char crr a b c d
  • CTF逆向工程入门_1

    这篇文章写给众多参加东华网络安全大赛的小伙伴们 初次撰写 大佬们发现错误的地方可以指正出来哈 CTF逆向工程入门 1 http blog csdn net s1054436218 article details 71698904 CTF逆向
  • 刘强东的自白:我为啥要和苏宁打价格战?

    价格屠夫 挑事者 城府很深 这是很多人对于刘强东的评价 刘强东则辩白称 他没有想象的那样复杂 同时 他也自述了为何要与苏宁 国美展开价格战 以及此次价格战的京东兵法 精彩语录 1 李国庆他们就是擦皮鞋的 他们有能力打价格战吗 有能力的话不需
  • 【数据结构】顺序表(SeqList)(增、删、查、改)详解

    一 顺序表的概念和结构 1 顺序表的概念 顺序表是用一段物理地址连续的存储单元依次存储数据元素的线性结构 一般情况下采用数组存储 在数组上完成数据的增删查改 2 顺序表的结构 1 静态顺序表 使用定长数组存储元素 缺点 只适用于确定知道需要
  • AWS EC2使用过程总结

    步骤1 开通AWS账号 需要一个邮箱 一个信用卡账号 有第一年的免费试用 EC2每个月免费试用750小时 注册完成后 得到实例管理平台 步骤2 开通EC2实例 步骤3 开通网关和安全组 使外部可以访问 在任何一台电脑的浏览器输入云服务器的公