成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

AWS 應用程序部署基礎知識:安裝NGINX

譯文
開發
在這篇文章中,我們將設置 NGINX 并將其用作 AWS 云中的反向代理。

【51CTO.com快譯】

介紹

在本系列“AWS應用程序部署基礎”的前一篇文章中,我們建立了PostgreSQL數據庫,然后通過Node.JS應用程序連接到它。

但是,Nodejs應用程序正在同一臺計算機上運行,數據庫訪問是本地的。這是一個完全有效的設置,因為它在同一臺機器上,所以訪問很簡單。但是,在不同的機器上運行應用程序和數據庫是一種非常常見的設置,我們將在本系列的后面部分介紹這條路徑。今天,我們將主要關注我們希望在公共子網中的 EC2 實例上運行的 Web 服務器。

如果您還記得我們的 VPC 設置,我們還有一個公共 EC2 實例,我們目前將其用作 Bastian 服務器(又名跳轉主機)和 NAT 實例。現在,是將它用作 NGINX Web 服務器。這是一個 Amazon Linux EC2 實例。

在現實生活中,可能希望在單獨的 EC2 實例上運行 NGINX,但是,過程是相同的,為了節省一些時間和成本,我將使用已經運行的 EC2 實例(公共子網)。

架構圖

下面是更新的圖表,顯示了將要設置的 NGINX。

在 Amazon Linux EC2 上安裝 NGINX

1. SSH 到 Bastian 服務器(公共 Amazon Linux EC2 實例)

  1. ssh -i ./fm-keypair.pem ec2-user@ip-address-machine //SSH to Bastian Server 

2. Amazon Linux 上的更新包

  1. sudo yum update // (ubuntu) sudo apt-get update 

3. 在Amazon Linux 上安裝 NGINX

  1. sudo yum install nginx // (Ubuntu) sudo apt-get install nginx 

4. 使用 Bash 測試安裝

安裝完成,測試一下,以確認可以正在工作。

  1. nginx -v  
  2. sudo service nginx status 

這是操作的輸出:

訪問Web服務器

NGINX 通常帶有一個默認的網站和配置文件,配置為提供默認的網站。

因此,可以使用 curl 在本地訪問這個網站:

根據結果,可以看到接收到了默認網站的 HTML。實際上,如果我們看到了附加到這個實例的安全組,那么:

也可以看到安全組已經配置了入站 HTTP 規則,從而可以從世界任何地方訪問此網頁。接下來,試一下在 Web 瀏覽器中使用 Bastian-host(與 NGINX 相同的 EC2)的 Elastic-IP 訪問它:

連接 NGINX 與 Node.js 應用程序

接下來做個簡單的測試,使用 NGINX 反向代理功能將 NGINX 與 Node.js 應用程序連接起來:

這樣,就可以在 PostgreSQL 中獲取產品數據了。

準備 Node.JS 應用程序

使用PM2來運行Nodejs 應用程序,PM2 將在后臺繼續運行節點服務器。

在私有子網中的 EC2 上安裝 PM2(Node.JS 應用程序運行和運行應用程序的地方):

  1. 1. ssh to ubuntu EC2  
  2. 2. sudo npm install pm2 -g     // Install pm2  
  3. 3. pm2 start server.js    // Run the Server app 

輸出結果為:

pm2的其他相關指令如下:

  1. >> pm2 stop server.js  
  2. >> pm2 restart server.js 

另外,在 pm2 網站上還可以查找更多命令。

讓我們看看私有子網中連接到 Ubuntu EC2 機器的安全組:

因此,所有來自公共子網的流量都是允許的。在這一點上,我想做的另一項測試是查看是否可以從公共子網(Bastian-host)中的 EC2 實例訪問 Node.JS 應用程序。

可以看到,如預期的那樣,我們能夠從公共 EC2 機器與 Node 應用程序(在私有 EC2 端口 3000 上運行)進行通信。

接下來,設置 NGINX 反向代理。

NGINX 配置

盡量保持細節簡單和基本,可以在網上找到有關各種配置的更多信息。

更新 Nginx 配置文件以進行代理配置:

  1. sudo nano /etc/nginx/nginx.conf 

在 nano 編輯器中打開配置文件,向下滾動直到看到一個服務器塊,點擊為節點應用程序添加位置 和代理路徑信息,如下所示(請注意在端口 3000 上運行 Node.JS 應用程序的 Ubuntu EC2 機器的私有 IP 地址):

  1. location /nodeapp/{   proxy_pass http://10.0.2.99:3000/; } 

這是公共 EC2 實例上的 Nginx 配置文件。

按 Ctrl+X 保存并關閉文件,重新啟動 NGINX 服務。

  1. sudo service nginx restart 

現在,讓我們嘗試使用瀏覽器訪問節點應用程序端點:

可以看到,我們能夠收到預期的數據。

以下是當前工作負載的更新圖表:

NGNIX 是一個輕量級且易于使用的 Web 服務器。可以向運行在不同EC2實例上的不同服務引入多個位置塊和代理調用。

總結

在本文中,我們在公有子網中的 EC2 實例上安裝了 NGINX。然后進行反向代理配置,將來自上一個post的請求傳遞給Node.JS應用程序,因為該應用程序可以連接到 PostgreSQL 數據庫,所以我們可以通過 HTTP 訪問數據。

 

這是一個非常基本的、常見的web服務器、應用程序和數據庫設置,在下一篇文章中,我們將添加更多應用程序、配置并根據需要增強此設計。

【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】

 

責任編輯:梁菲 來源: AZone
相關推薦

2015-02-02 15:46:59

Web應用架構大數據

2010-01-19 10:16:40

C++程序

2012-10-29 13:52:51

應用虛擬化

2011-05-27 16:23:39

SEO

2012-05-21 10:39:52

RAID

2009-08-05 10:16:54

部署ASP.NET應用

2020-12-11 19:06:03

Kubernetes工具應用程序

2011-05-31 13:34:22

應用開發iPad

2018-10-23 09:58:23

ApacheNGINXWeb

2021-09-02 18:47:02

redis存儲中間件Remote Dict

2010-02-01 13:07:21

2012-05-11 11:36:14

RAID基礎知識

2010-07-07 15:11:39

H.323協議

2010-12-15 16:17:59

服務部署

2009-04-10 09:35:00

WCDMA基礎無線網絡

2010-07-16 11:22:31

Perl

2011-09-16 10:13:02

Emacs

2023-07-04 07:31:06

MapReduce數據處理編程模型

2011-03-29 14:11:20

Cacti基礎知識

2014-08-20 10:15:45

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 中文一区二区视频 | 日韩av免费看 | av在线电影网 | 九九热在线视频观看这里只有精品 | 伊人久久综合 | 国产精品久久久久久久久久 | 欧美视频1区 | 国产日韩av一区二区 | 天天操天天射天天舔 | 日韩欧美不卡 | 国产精品二区三区在线观看 | 欧美精品一区在线 | 中文字幕精品一区二区三区精品 | 日日日日操 | 一本久久a久久精品亚洲 | 四虎最新视频 | 夜夜骑首页 | 国产一级一级毛片 | 精品久久国产 | 国产一区二区三区免费 | 五月激情婷婷在线 | 日韩在线xx | 久久精品日产第一区二区三区 | 久草院线 | 国产精品黄色 | 人人干人人看 | 五月综合色啪 | 国产一区二区三区 | 韩日在线 | 午夜视频在线观看网站 | 91xxx在线观看 | 久久爱综合 | 一区二区三区视频 | 99免费精品视频 | 久久久久国产精品一区二区 | 色婷婷综合网 | 天天av网 | 亚洲在线一区二区三区 | 欧美精品久久久 | 欧美精品片 | 中文字幕1区2区3区 日韩在线视频免费观看 |