👌
【GCP】GCE構築(CentOS7)~Nginx導入迄の流れをアウトプットします。(WEBサーバー)
はじめに
GCPにてGCE(CentOS7)を構築するところからNginx導入迄の流れをアウトプットしたいと思います。
Nginxのページが表示されることがゴールになります。
構成図
GCE(CentOS7)のスペック
項目 | 設定 |
---|---|
VM名 | web01 |
シリーズ | E2 |
マシンタイプ | e2.small |
OS | CentOS7 |
vCPU | 2 |
メモリ(GB) | 2 |
ブートディスク | 20GB |
前提
- GCPの無料試用版登録済み
- 学習用にVMを立てることを前提にしている
作業の流れ
①GCE作成
②パッケージアップデート
③Nginxインストール・確認
作業手順
①GCE作成
1.GCPのポータル画面を開き、「Compute Engine」→「VMインスタンス」と選択する。
2.「VMインスタンス」→「インスタンスの作成」と選択する。
3.新規VMインスタンスの画面で以下のように設定する。
項目 | 設定 |
---|---|
名前 | web01 |
リージョン | asia-northeast1(東京) |
ゾーン | asia-northeast1-a |
シリーズ | E2 |
マシンタイプ | e2-small |
4.ブートディスクの「変更」をクリックする。
5.以下のように入力し、「選択」をクリックする。
6.HTTPとHTTPSのトラフィックを許可し、「作成」をクリック。
※他の設定はデフォルトで問題なし
7.VMインスタンスの一覧にてVMが作成できていることを確認する。
]
②パッケージアップデート
1.対象インスタンスの「SSH」の部分をクリックする。
2.接続されるまで待つ。
3.接続されると以下の画面が表示される。
4.パッケージのアップデートを実施する。
コマンド
sudo yum -y update
→「Complete!」と表示されれば問題なし。
実行例)
実行例
[office365testac0402@web01 ~]$ sudo yum -y update
Loaded plugins: fastestmirror
Determining fastest mirrors
epel/x86_64/metalink | 50 kB 00:00:00
* base: ftp.iij.ad.jp
* epel: ftp.riken.jp
* extras: ftp.iij.ad.jp
* updates: ftp.iij.ad.jp
base | 3.6 kB 00:00:00
epel | 4.7 kB 00:00:00
extras | 2.9 kB 00:00:00
google-cloud-sdk | 1.4 kB 00:00:00
~~~~~
Updated:
bind-export-libs.x86_64 32:9.11.4-26.P2.el7_9.5 device-mapper.x86_64 7:1.02.170-6.el7_9.5
device-mapper-libs.x86_64 7:1.02.170-6.el7_9.5 firewalld.noarch 0:0.6.3-13.el7_9
firewalld-filesystem.noarch 0:0.6.3-13.el7_9 glibc.x86_64 0:2.17-324.el7_9
glibc-common.x86_64 0:2.17-324.el7_9 google-cloud-sdk.x86_64 0:339.0.0-1
google-osconfig-agent.x86_64 1:20210429.3-g1.el7 kernel-tools.x86_64 0:3.10.0-1160.25.1.el7
kernel-tools-libs.x86_64 0:3.10.0-1160.25.1.el7 nss.x86_64 0:3.53.1-7.el7_9
nss-sysinit.x86_64 0:3.53.1-7.el7_9 nss-tools.x86_64 0:3.53.1-7.el7_9
openldap.x86_64 0:2.4.44-23.el7_9 python-firewall.noarch 0:0.6.3-13.el7_9
python-perf.x86_64 0:3.10.0-1160.25.1.el7
Complete!
[office365testac0402@web01 ~]$
③Nginxインストール・確認
②で作成したGCEにNginxをインストールする。
1.リポジトリ追加
-
nginx.repo
ファイルを作成する。
コマンド
sudo vi /etc/yum.repos.d/nginx.repo
-
nginx.repo
に以下の内容を書きこむ。
書き込む内容
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/mainline/centos/7/$basearch/
gpgcheck=0
enabled=1
-
nginx.repo
ファイルが作成されていることを確認する。
コマンド
cat /etc/yum.repos.d/nginx.repo
実行例
[office365testac0402@web01 ~]$ cat /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/mainline/centos/7/$basearch/
gpgcheck=0
enabled=1
[office365testac0402@web01 ~]$
2.リポジトリ初期化&読み込み
- リポジトリを初期化する。
コマンド
sudo yum clean all
実行例
[office365testac0402@web01 ~]$ sudo yum clean all
Loaded plugins: fastestmirror
Cleaning repos: base epel extras google-cloud-sdk google-compute-engine
: nginx updates
Cleaning up list of fastest mirrors
[office365testac0402@web01 ~]$
- リポジトリを読み込む。
コマンド
sudo yum repolist all
実行例
[office365testac0402@web01 ~]$ sudo yum repolist all
Loaded plugins: fastestmirror
Determining fastest mirrors
epel/x86_64/metalink | 7.4 kB 00:00
* base: ty1.mirror.newmediaexpress.com
* epel: d2lzkl7pfhq30w.cloudfront.net
* extras: ty1.mirror.newmediaexpress.com
* updates: ty1.mirror.newmediaexpress.com
~~~~~~~~~~~~~
centos-kernel/7/x86_64 CentOS LTS Kernels fo disabled
centos-kernel-experimental/7/x86_64 CentOS Experimental K disabled
centosplus/7/x86_64 CentOS-7 - Plus disabled
centosplus-source/7 CentOS-7 - Plus Sourc disabled
cr/7/x86_64 CentOS-7 - cr disabled
epel/x86_64 Extra Packages for En enabled: 13,590
epel-debuginfo/x86_64 Extra Packages for En disabled
epel-source/x86_64 Extra Packages for En disabled
epel-testing/x86_64 Extra Packages for En disabled
epel-testing-debuginfo/x86_64 Extra Packages for En disabled
epel-testing-source/x86_64 Extra Packages for En disabled
extras/7/x86_64 CentOS-7 - Extras enabled: 476
extras-source/7 CentOS-7 - Extras Sou disabled
fasttrack/7/x86_64 CentOS-7 - fasttrack disabled
google-cloud-sdk Google Cloud SDK enabled: 1,348
google-compute-engine Google Compute Engine enabled: 9
nginx/x86_64 nginx repo enabled: 809
updates/7/x86_64 CentOS-7 - Updates enabled: 2,173
updates-source/7 CentOS-7 - Updates So disabled
repolist: 28,477
[office365testac0402@web01 ~]$
3.Nginxインストール
- Nginxをインストールする。
コマンド
sudo yum install nginx
「Complete!」が表示されていれば問題なし。
実行例
Installed:
nginx.x86_64 1:1.19.10-1.el7.ngx
Dependency Installed:
make.x86_64 1:3.82-24.el7 openssl.x86_64 1:1.0.2k-21.el7_9
Complete!
- Nginxインストール確認を実施する。
コマンド
nginx -v
実行例
[office365testac0402@web01 ~]$ nginx -v
nginx version: nginx/1.19.10
[office365testac0402@web01 ~]$
4.Nginx起動
- Nginxを起動する。
コマンド
sudo systemctl start nginx
実行例
[office365testac0402@web01 ~]$ sudo systemctl start nginx
[office365testac0402@web01 ~]$
- Nginxを起動確認を実施する。
コマンド
systemctl status nginx
active (running)
があれば問題なし。
実行例
[office365testac0402@web01 ~]$ systemctl status nginx
● nginx.service - nginx - high performance web server
Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendo
r preset: disabled)
Active: active (running) since Sat 2021-05-08 08:12:22 UTC; 4s ago
Docs: http://nginx.org/en/docs/
Process: 1453 ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf (code=
exited, status=0/SUCCESS)
Main PID: 1454 (nginx)
CGroup: /system.slice/nginx.service
├─1454 nginx: master process /usr/sbin/nginx -c /etc/nginx/...
└─1455 nginx: worker process
May 08 08:12:22 web01 systemd[1]: Starting nginx - high performance w....
May 08 08:12:22 web01 systemd[1]: Started nginx - high performance we....
Hint: Some lines were ellipsized, use -l to show in full.
[office365testac0402@web01 ~]$
5.Nginx自動起動設定
- Nginxの自動起動設定を実施する。
コマンド
sudo systemctl enable nginx
実行例
[office365testac0402@web01 ~]$ sudo systemctl enable nginx
Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.se
rvice to /usr/lib/systemd/system/nginx.service.
[office365testac0402@web01 ~]$
- Nginxの自動起動設定を確認する。
コマンド
systemctl is-enabled nginx
enabled
があれば問題なし。
実行例
[office365testac0402@web01 ~]$ systemctl is-enabled nginx
enabled
[office365testac0402@web01 ~]$
6.WEB画面表示確認
ブラウザに外部IPアドレス:80
と入力し、以下の画面が表示されることを確認。
Discussion
社内でGCEを使った研修をやるはめになり、こちらのサイトを参考にさせて頂きました。大変助かりました。