亚马逊云科技

广告

安信SSL证书

广告

亚马逊免费云服务器Amazon EC2 T4g/x86领取及配置教程

美国云服务器推荐

Graviton是亚马逊云科技推出的基于ARM架构的处理器,现在已经能适配到Amazon EC2 T4g/c86等几乎所有主流的程序语言。本教程会手把手教大家如何在Graviton实例免费领取Amazon EC2 T4g和x86架构云服务器,并安装、配置并运行不同程序语言的运行环境。

一、前提条件

1、会在Linux环境下进行基本操作,比如源码编译。

2、拥有AWS(直达官网)账号,AWS账号注册指南:

3、了解亚马逊云科技的基本操作,像安全组配置、Amazon EC2实例启动。详情可以参考:《亚马逊免费云服务器申请与使用教程》。

4、了解Web应用程序的基本概念

5、做好实验环境的准备,包括启动Amazon EC2实例、获取示例代码等。

二、亚马逊免费云服务器Amazon EC2 T4g/x86领取教程

下面将演示如何分别启动一个Graviton2实例和一个x86实例,用于后面的实验。

1、创建安全组

进入Amazon EC2控制台,然后点击“安全组”。

亚马逊免费云服务器Amazon EC2 T4g/x86领取教程

创建一个安全组,要开放80、8080、9080、5000-5010这些端口,源设置为“0.0.0.0/0”;还要开放22端口,源设置为MyIP。

亚马逊免费云服务器Amazon EC2 T4g/x86领取教程

2、启动Graviton实例

进入Amazon EC2控制台,点击“启动新实例”。

亚马逊免费云服务器Amazon EC2 T4g/x86领取教程

在Amazon EC2配置向导中,选择AMI为Amazon Linux 25.10版本的免费套餐,系统架构设置为ARM,机型选择m6g.large,把根卷调整为50G后启动实例,安全组就用前面步骤创建的那个。

亚马逊免费云服务器Amazon EC2 T4g/x86领取教程

更新系统并安装必要的工具,输入以下命令:

sudo yum update -y
sudo yum install git -y
sudo reboot

下载本次实验需要的源码到Amazon EC2实例,输入以下命令:

$ git clone https://github.com/nwcd-samples/GravitonDemo.git
$ cd GravitonDemo
$ ls -l
总用量 8

-rw-rw-r– 1 ec2-user ec2-user 1925 2月 17 06:12 godemo.go
drwxrwxr-x 4 ec2-user ec2-user 92 2月 17 06:12 graviton-demo-php
drwxrwxr-x 3 ec2-user ec2-user 71 2月 17 06:12 graviton-demo-rust
drwxrwxr-x 4 ec2-user ec2-user 90 2月 17 06:12 graviton-demo-springboot
-rw-rw-r– 1 ec2-user ec2-user 3272 2月 17 06:12 socketdemo_python2.py

3、启动Amazon EC2 x86实例

如果有兴趣对比不同架构下相同应用代码的运行情况,可以启动一个Amazon EC2 m5.large实例,具体操作步骤这里就不详细说了,按照上面步骤即可。

(1)登录到实例

从Windows登录到实例:

#使用 powershell 通过 ssh 命令连接到实例

从Mac登录到实例

#使用 Terminal 通过 ssh 命令连接到实例

三、亚马逊免费云服务器Amazon EC2 T4g/x86配置教程

这部分主要带你在搭载Graviton处理器的免费云服务器Amazon EC2实例上完成常见开发语言环境的安装配置,并运行一个简单的Web程序。

1、在Graviton运行Java应用程序

(1)搭建运行环境

登录到服务器,输入以下命令安装Java11运行环境:

$ sudo yum install java-11-amazon-corretto -y
$ java -version
openjdk version “11.0.18” 2023-01-17 LTS
OpenJDK Runtime Environment Corretto-11.0.18.10.1 (build 11.0.18+10-LTS)
OpenJDK 64-Bit Server VM Corretto-11.0.18.10.1 (build 11.0.18+10-LTS, mixed mode)

(2)运行应用程序

获取项目代码并启动应用程序,输入以下命令:

cd ~/GravitonDemo
cd graviton-demo-springboot
./mvnw package

java -jar target/graviton2-demo-0.0.1-SNAPSHOT.jar

在浏览器中访问刚才部署的应用(地址是http://EC2-IP:8080,要注意Web服务端口在安全组中已经开放)。如果运行正常,就能看到Web应用返回的实例相关信息。

亚马逊免费云服务器Amazon EC2 T4g/x86配置教程

到这里,你就完成了基于Graviton的Java应用部署运行,能发现操作和在X86环境下是一样的。

2、在Graviton运行NodeJS应用程序

(1)搭建运行环境

登录到服务器,输入以下命令安装配置nodejs运行环境:

#安装nodejs

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
. ~/.nvm/nvm.sh
nvm install 16

查看nodejs版本,输入以下命令:

node -e “console.log(‘Running Node.js ‘ + process.version)”

这样就完成了nodejs运行环境的安装。

(2)运行应用程序

切换到node工程,启动demo程序,输入以下命令:

#进入nodejs demo目录
$ cd ~/GravitonDemo/graviton-demo-nodejs

# 更新npm版本
$ npm install -g npm

# 安装依赖
$ npm install

#运行demo程序
$ node nodejsdemo.js

在浏览器中查看运行效果(要确保Amazon EC2安全组已经开放应用服务器端口,比如5004)。如果运行正常,能看到Web应用返回的实例相关信息。在浏览器中输入http://服务器ip:5004就能查看。

亚马逊免费云服务器Amazon EC2 T4g/x86配置教程

3、在Graviton运行Python应用程序

(1)搭建运行环境

Amazon Linux2系统已经包含了python3运行环境,输入以下命令查看版本:

$ python3 –version

(2)运行应用程序

切换到Python工程,启动demo程序,输入以下命令:

#进入Pythondemo目录
$ cd ~/GravitonDemo/graviton-demo-python

#运行demo程序
$ python3 python3demo.py

在浏览器中查看运行效果(要确保Amazon EC2安全组已经开放应用服务器端口,比如5003)。如果运行正常,能看到Web应用返回的实例相关信息。在浏览器中输入http://服务器ip:5003就能查看。

亚马逊免费云服务器Amazon EC2 T4g/x86配置教程

4、在Graviton运行PHP应用程序

(1)搭建运行环境

登录服务器,输入以下命令安装PHP运行环境:

$ sudo amazon-linux-extras enable php8.1
$ sudo yum clean metadata
$ sudo amazon-linux-extras install php8.1 nginx1 -y
$ php -v
PHP 8.1.14 (cli) (built: Jan 20 2023 18:11:37) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.14, Copyright (c) Zend Technologies

之后会显示出PHP的版本信息,这样就完成了Graviton环境的PHP+Nginx环境部署。

(2)运行应用程序

切换到目录,复制PHP项目资源到nginx目录,输入以下命令:

$ cd ~/GravitonDemo/graviton-demo-php
$ sudo cp -r assets /usr/share/nginx/html/
$ sudo cp index.php /usr/share/nginx/html/
$ sudo service nginx restart

在浏览器中访问刚才部署的应用(要确保Amazon EC2安全组已经开放应用服务器端口,比如80)。如果运行正常,就能看到Web应用返回的实例相关信息。在浏览器中输入http://服务器ip:80就能查看。

到这里,你就完成了基于Graviton的PHP应用部署运行,能发现操作和在X86环境下是一样的。

亚马逊免费云服务器Amazon EC2 T4g/x86配置教程

5、在Graviton运行Ruby应用程序

(1)搭建运行环境

登录到服务器,输入以下命令安装配置ruby运行环境:

#安装ruby
sudo amazon-linux-extras list | grep ruby
sudo amazon-linux-extras install -y ruby3.0

亚马逊免费云服务器Amazon EC2 T4g/x86配置教程

查看ruby版本,输入以下命令:

ruby -v

这样就完成了ruby运行环境的安装。

(2)运行应用程序

切换到ruby工程,启动demo程序,输入以下命令:

#进入ruby demo目录
$ cd ~/GravitonDemo/graviton-demo-ruby

#运行demo程序
$ ruby rubydemo.rb

在浏览器中查看运行效果(要确保Amazon EC2安全组已经开放应用服务器端口,比如5001)。如果运行正常,能看到Web应用返回的实例相关信息。在浏览器中输入http://服务器ip:5001就能查看。

亚马逊免费云服务器Amazon EC2 T4g/x86配置教程

6、在Graviton运行Go应用程序

(1)搭建运行环境

登录到服务器,输入以下命令安装配置go运行环境:

#安装golang
$ sudo yum install -y golang

#配置golang
$ mkdir -p ~/GoWorkSpace

$ echo “export GOPATH=$HOME/GoWorkSpace”>>~/.bashrc
$ echo “export PATH=$PATH:$GOPATH/bin”>>~/.bashrc

$ source ~/.bashrc

#可选
#如上一步配置golang 环境变量出错请执行以下命令后退出连接,重新登录
#出错信息“manpath: can’t set the locale: make sure $LC * and $LANG are correct”

$ echo “LANG=en_US.utf-8” | sudo tee -a /etc/environment
$ echo “LC_ALL=en_US.utf-8” | sudo tee -a /etc/environment

查看golang版本,输入以下命令:

go version

这样就完成了go运行环境的安装和配置。

(2)运行应用程序

切换到golang工程,启动demo程序,输入以下命令:

#编译golang代码
$ cd ~/GravitonDemo/graviton-demo-go
$ go install godemo.go

#运行demo程序
$ ~/GoWorkSpace/bin/godemo

在浏览器中查看运行效果(要确保Amazon EC2安全组已经开放应用服务器端口,比如5000)。如果运行正常,能看到Web应用返回的实例相关信息。在浏览器中输入http://服务器ip:5000就能查看。

亚马逊免费云服务器Amazon EC2 T4g/x86配置教程

7、在Graviton运行Rust应用程序

(1)搭建运行环境
登录到服务器,输入以下命令安装Rust运行环境:

# 安装gcc
$ sudo yum install gcc -y

# 安装rust最新版本
$ curl –proto ‘=https’ –tlsv1.2 -sSf https://sh.rustup.rs | sh

You can uninstall at any time with rustup self uninstall and
these changes will be reverted.
Current installation options:
default host triple: aarch64-unknown-linux-gnu
default toolchain: stable (default)
profile: default
modify PATH variable: yes

1) Proceed with installation (default)
2) Customize installation
3) Cancel installation
>1

$ source “$HOME/.cargo/env”
$ cargo -V
cargo 1.67.1 (8ecd4f20a 2023-01-10)

会显示出cargo的版本信息,这样就完成了Rust1.67.1环境的搭建。

(2)运行应用程序

切换到Rust工程,启动Web服务,输入以下命令:

$ cd ~/GravitonDemo/graviton-demo-rust
$ cargo run
Compiling cookie_store v0.12.0
Compiling h2 v0.3.15
Compiling time v0.3.17
Compiling rand v0.8.5
Compiling webpki-roots v0.21.1
Compiling local-channel v0.1.3
Compiling qstring v0.7.2
Compiling num_cpus v1.15.0
Compiling encoding_rs v0.8.32
Compiling mime v0.3.16
Compiling language-tags v0.3.2
Compiling chunked_transfer v1.4.1
Compiling httpdate v1.0.2
Compiling base64 v0.21.0
Compiling ureq v1.5.5
Compiling actix-server v2.2.0
Compiling actix-web-codegen v4.1.0
Compiling serde_urlencoded v0.7.1
Compiling actix-macros v0.2.3
Compiling time v0.1.45
Compiling iana-time-zone v0.1.53
Compiling json v0.12.4
Compiling chrono v0.4.23
Compiling ec2_instance_metadata v0.3.0
Compiling zstd v0.12.3+zstd.1.5.2
Compiling actix-http v3.3.0
Compiling actix-web v4.3.0
Compiling graviton2-demo-rust v0.1.0 (/home/ec2-user/rust-graviton2-demo)
Finished dev [unoptimized + debuginfo] target(s) in 2m 12s
Running `target/debug/graviton2-demo-rust`

在浏览器中访问刚才部署的应用(要确保Amazon EC2安全组已经开放应用服务器端口,比如5006)。如果运行正常,就能看到Web应用返回的实例相关信息。在浏览器中输入http://服务器ip:5006就能查看。

亚马逊免费云服务器Amazon EC2 T4g/x86配置教程

四、清理实验环境

所有实验完成后,要记得访问AWS后台停止或者终止实验中用到的Amazon EC2实例,避免产生不必要的费用。

(本文由美国主机侦探原创,转载请注明出处“美国主机侦探”和原文地址!)

主机侦探企业微信

微信扫码加好友进群

主机优惠码及时掌握

主机侦探QQ群

QQ群号:938255063

主机优惠发布与交流

温馨提示:

1、本站部分图片来源于互联网,如有侵权请联系删除。邮箱:2942802716#qq.com(#改为@)

2、本文评论没有专人回复,如果您有问题请到美国主机侦探论坛提问!

3、美国主机侦探免费为您提供美国主机购买咨询。

RAKsmart美国服务器
返回顶部