今日を知り、明日を変えるシステム運用メディア

ラスベガスから講演レポートなどお届け
AWS環境構築を分かりやすく解説!

【初心者必見!】AWS環境構築を分かりやすく解説!

【初心者必見!】AWS環境構築を分かりやすく解説!

AWS (Amazon Web Services) クラウドの導入を検討しているものの、環境構築に不安を感じている方も多いのではないでしょうか。

本記事では、AWSアカウントの作成方法から、EC2などの主要サービスを利用したサーバー構築手順、セキュリティ対策、パフォーマンスチューニング、コスト最適化といった運用を見据えたノウハウまで、分かりやすく解説します。

AWS初心者の方から、ある程度の知識をお持ちの中級者の方まで、ご自身のレベルに合わせて必要な情報を得ることができます。

AWS環境構築の基本構成要素

AWS環境構築の基本構成要素

AWSでシステムを構築する際に必要となる、主要なサービスについて解説します。それぞれのサービスがどのような役割を担っているのか、基本的な知識を習得しましょう。

Amazon VPC(Amazon Virtual Private Cloud)

Amazon VPC (Amazon Virtual Private Cloud) は、AWSクラウド上に独自の仮想ネットワークを構築できるサービスです。

AWS上に隔離されたネットワーク空間を作成し、その中でEC2インスタンスなどのリソースを運用できます。

VPCでは、IPアドレス範囲 (CIDRブロック)、サブネット、ルートテーブル、インターネットゲートウェイなどを設定することで、柔軟なネットワーク構成を設計できます。

外部ネットワークから隔離されたセキュアな環境を構築できるため、機密性の高いシステムやアプリケーションを運用する際に役立ちます。

AWS Internet Gateway

AWS Internet Gatewayは、VPCとインターネット間の通信を可能にするサービスです。

VPC内に構築したシステムをインターネットに公開したり、インターネット上のリソースにアクセスしたりする際に必要となります。

インターネットゲートウェイは、VPCのルートテーブルに設定することで、VPC内のインスタンスがインターネットと通信するための経路を提供します。

高度な可用性と冗長性を備えているため、安定したインターネット接続を維持できます。

ALB(Application Load Balancer)

WebサイトやWebアプリケーションへのアクセスが増えると、サーバーにかかる負荷も大きくなります。アクセスが集中しすぎると、サーバーがダウンしてしまい、サービスが停止してしまうことも。

このような事態を防ぐために、複数のサーバーにアクセスを分散させる役割を担うのが ロードバランサーです。ロードバランサーを利用することで、1台のサーバーに負荷が集中することを防ぎ、システム全体の可用性とパフォーマンスを向上させることができます。

ALB (Application Load Balancer) は、AWSが提供するロードバランサーの一種で、HTTPやHTTPSなどのアプリケーション層で動作するため、Webアプリケーションの特性に合わせた細かい制御が可能です。

Amazon EC2(Amazon Elastic Compute Cloud)

Amazon EC2 (Amazon Elastic Compute Cloud) は、AWSクラウド上で仮想サーバーを構築できるサービスです。

仮想サーバーは、実際の物理サーバーと同じように、OSやアプリケーションをインストールして使用できます。

EC2では、OS、CPU、メモリ、ストレージ容量などを自由に選択し、用途に合わせた仮想サーバー環境を構築できます。Webサイトやアプリケーションの運用、データベースの構築、開発環境など、様々な用途に利用されています。

EC2は、AWSクラウドの基盤となるサービスの一つであり、クラウドのメリットを最大限に活かせるサービスと言えるでしょう。

Amazon RDS(Amazon Relational Database Service)

Webサイトやアプリケーションで扱うデータを保存・管理するには、データベースが必要です。

Amazon RDS (Amazon Relational Database Service) は、AWS クラウド上でデータベースを簡単に構築・運用できるサービスです。RDSでは、MySQL、PostgreSQL、Oracle Databaseなど、様々なデータベースエンジンを選択できます。

データベースの構築、運用、管理に必要な作業をAWSが代行してくれるため、データベースの専門知識がなくても、簡単にデータベースを運用することが可能です。

AWS環境構築の手順

AWS環境構築を行う女性

ここからは、実際にAWSを使って仮想サーバーを立ち上げるまでの手順を、解説します。

1.AWS環境構築の準備

AWS環境を構築する前に、まずは必要な準備を行いましょう。

1-1.AWSアカウントの作成

AWSを利用するには、AWSアカウントが必要です。まだアカウントをお持ちでない方は、以下の手順でアカウントを作成しましょう。

1-1-1.アカウント作成ページへ移動

まずは、AWSのアカウントを作成します。

AWSアカウント作成ページ

1-1-2.必要情報を入力

メールアドレス、パスワード、氏名、住所、電話番号、クレジットカード情報などの必要情報を入力します。

1-1-3.AWSマネジメントコンソールへのログイン

AWSマネジメントコンソールへのログインができたら、AWSアカウント作成は完了です。

AWSマネジメントコンソールへのログイン

1-2.IAMユーザーの作成

AWSアカウントを作成したら、次は IAMユーザー を作成しましょう。

IAMユーザーとは、AWSリソースへのアクセスを管理するためのユーザーアカウントです。ルートユーザー (AWSアカウント作成時に作成されるマスターユーザー) はAWSアカウントへのフルアクセス権限を持つため、セキュリティリスクが高い状態です。

IAMユーザーを作成し、必要なアクセス権限のみを付与することで、セキュリティリスクを軽減し、より安全にAWSリソースを操作できます。

IAMユーザーは、AWSマネジメントコンソールのIAMサービスから作成できます。

1-3.Amazon EC2インスタンスの作成

いよいよ、AWS上に仮想サーバーを構築していきます。

仮想サーバーとは、物理的なサーバーをAWS上に仮想的に用意したものです。AWSでは、この仮想サーバーを EC2インスタンス と呼びます。

EC2インスタンスを作成するには、AWSマネジメントコンソールから設定を行います。

1-3-1. EC2サービスの選択

AWSマネジメントコンソールを開き、サービス一覧から EC2 を選択します。

EC2サービスの選択

1-3-2. インスタンスの起動

EC2ダッシュボードが表示されたら、「インスタンスを起動」ボタンをクリックします。

インスタンスの起動

Amazon EC2でインスタンスを作成するには、AMIの選択、インスタンスタイプの決定など、いくつかの手順があります。ここでは、インスタンス作成に必要な6つの主要項目について、順を追って詳しく解説していきます。

1-3-3. 名前とタグ

インスタンスに分かりやすい名前をつけ、タグで情報を追加しましょう。名前は後で変更できますが、タグはインスタンス作成時に設定する必要があります。

項目概要設定例
名前インスタンスを識別しやすい名前を入力します。Webサーバー、DBサーバーなど
タグキーと値のペアで構成されます。用途や役割を分類するために使用します。キー「環境」、値「開発」など
名前とタグ

1-3-4. AMIの選択

EC2インスタンスを立ち上げるには、まず「設計図」が必要になります。この設計図にあたるのがAMI (Amazon Machine Image) です。AMIには、OS (WindowsやLinuxなど) や必要なソフトウェアがあらかじめ含まれているので、ゼロから環境を構築する必要がなく、簡単にインスタンスを作成できます。

今回は、Amazon Linux 2 というOSを使うので、「Amazon Linux 2 AMI」という設計図を選びます。

AMIの選択

1-3-5. インスタンスタイプの選択

EC2インスタンスの性能は、パソコンでいうCPUやメモリのようなものです。インスタンスタイプを選ぶことで、処理能力やメモリ容量など、インスタンスの性能を決めることができます。

今回は、AWSの無料利用枠でEC2を使うので、「t2.micro」という種類のインスタンスを選びます。

インスタンスタイプの選択

1-3-6. キーペア (ログイン) 情報

EC2インスタンスにログインするには、鍵が必要です。この鍵を作るのが「キーペアの作成」です。キーペアには、「公開鍵」と「秘密鍵」の2つがあります。

項目概要
公開鍵EC2側に設定されます。
秘密鍵自分で大切に保管します。

[キーペア(ログイン)]セクションの[新しいキーペアの作成]を押下します。

キーペア (ログイン) 情報

この画面では、EC2インスタンスに接続するためのキーペアを作成します。以下の手順で操作してください。

EC2インスタンスに接続するためのキーペア
手順手順名概要
STEP1キーペア名を入力任意のキーペア名を入力します。名前は最大255文字のASCII文字で、先頭または末尾にスペースを含めることはできません。例:MyKeyPair 、 WebServerKey など、分かりやすい名前をつけましょう。
STEP2キーペアのタイプを選択RSA (推奨) : 従来から広く使われている方式です。ED25519 : より新しい方式で、セキュリティ強度が高いです。特に理由がなければ、RSA を選択しておけば問題ありません。
STEP3プライベートキーファイル形式を選択.pem (推奨):OpenSSHで使用する形式です。LinuxやmacOSで接続する場合はこちらを選択します。.ppk:PuTTYで使用する形式です。WindowsでPuTTYを使って接続する場合はこちらを選択します。
STEP4「キーペアを作成」ボタンをクリックキーペアが作成され、秘密鍵(.pem または .ppk ファイル)がダウンロードされます。

ダウンロードされた秘密鍵は、EC2インスタンスにログインする際に必要になります。 紛失しないように、安全な場所に保管してください。

1-3-7. ネットワーク設定

EC2インスタンスは、インターネット上に公開されます。そこで、外部からの不正アクセスを防ぐために、ファイアウォールを設定する必要があります。このファイアウォールは、「セキュリティグループ」と呼ばれ、EC2インスタンスへのアクセスを許可するルールを設定することができます。

今回は、新しいセキュリティグループを作成し、以下のルールを設定します。

1.SSHトラフィックを許可

自分のパソコンからEC2インスタンスに接続するためのルールです。

「任意の場所」を選択すると、どこからでも接続できるようになります。セキュリティを強化する場合は、自分のパソコンのIPアドレスを指定するようにしましょう。

2.HTTPS・HTTPトラフィックを許可

これは、Webサイトを公開する場合などに必要なルールです。今はWebサイトを公開しないので、チェックボックスを オフ にしておきます。

ネットワーク設定

1-3-8. ストレージ設定

EC2インスタンスには、データを保存するためのストレージが必要です。AWSの無料利用枠では、30GBまでのストレージを使うことができます。

今回は、デフォルトで設定されている8GBのストレージで問題ありません。

ストレージ設定

1-3-9. インスタンスの起動

設定内容を確認し、 [インスタンスを起動] ボタンをクリックします。

インスタンスの起動

1-4.SSH接続

EC2インスタンスが起動したら、SSH接続でインスタンスにアクセスし、コマンド操作を行うことができます。Macには、標準でターミナルが搭載されているため、特別なソフトウェアをインストールする必要はありません。

1-4-1. ターミナルを起動

アプリケーションフォルダ内にある ターミナル を起動します。

ターミナルを起動

1-4-2. 秘密鍵のパーミッション変更

EC2インスタンス作成時にダウンロードした秘密鍵 (.pem ファイル) のパーミッションを変更します。

ターミナルで以下のコマンドを実行します。 your-key-pair.pem の部分は、ダウンロードした秘密鍵のファイル名に置き換えてください。

chmod 400 your-key-pair.pem
項目概要
chmod ファイルやフォルダのパーミッションを変更するコマンドです。
400所有者だけに読み取り権限を与え、他のユーザーにはアクセス権を与えません。
your-key-pair.pem秘密鍵のファイル名です。

この操作により、秘密鍵へのアクセスを制限し、セキュリティを強化することができます。

1-4-3. SSH接続コマンドの実行

EC2インスタンスに接続するには、SSHという仕組みを使います。SSHは、安全にリモートコンピュータに接続するためのプロトコルです。Macでは、ターミナルというアプリを使ってSSH接続を行います。

ターミナルに以下のコマンドを入力し、「your-key-pair.pem」の部分をダウンロードした秘密鍵のファイル名に置き換え、「your-instance-public-dns」の部分をEC2インスタンスのパブリックDNS名に置き換えて、 Enter キーを押下すれば完了です。

ssh -i your-key-pair.pem ec2-user@your-instance-public-dns

パブリックDNS名の調べ方

  1. AWSマネジメントコンソールにログインします。
  2. 「EC2」サービスを選択します。
  3. 左側のメニューから「インスタンス」を選択します。
  4. 作成したインスタンスを選択します。
  5. 「パブリックIPv4 DNS」の値がパブリックDNS名です。

AWS環境構築を最適化する方法

AWS環境構築を最適化する方法

AWS環境を構築する際には、セキュリティ、コスト、パフォーマンスの3つの要素を最適化することが重要です。それぞれの要素について、具体的な方法を解説していきます。

セキュリティ対策

AWS環境のセキュリティ対策は、ビジネスの信頼性を守る上で欠かせません。

仮想ネットワーク(VPC)を活用し、インターネットから隔離されたセキュアな環境を構築しましょう。セキュリティグループでEC2インスタンスへのアクセスを制御し、IAMでユーザーの権限を適切に管理することも重要です。

さらに、S3やEBSなどのストレージサービスでデータを暗号化し、AWS ConfigやCloudTrailなどのサービスでセキュリティ監査を実施することで、より強固なセキュリティ対策を実現できます。

コスト最適化

AWSのコスト最適化は、クラウド運用で重要な要素です。

適切なインスタンスタイプを選択し、必要以上のスペックを持つサーバーを使わないようにしましょう。S3などのストレージサービスでは、データの特性に合ったストレージクラスを選択し、ライフサイクルポリシーで古いデータを自動的に管理することでコスト削減につながります。

AWS Cost Explorerなどのツールを活用し、コストの発生源を分析して、無駄な費用を削減しましょう。

パフォーマンス向上

AWSで作ったシステムをスムーズに動かすには、パフォーマンス向上が大切です。

Webサイトの表示を速くしたいなら、CDNを使ってみましょう。CDNは、「Content Delivery Network」の略で、世界中に配置されたサーバーネットワークを使って、Webサイトのコンテンツを高速に配信する仕組みです。

また、アクセスが集中しても大丈夫なように、ロードバランサーで複数のサーバーに負荷を分散させるのも効果的です。

まとめ

本記事では、AWS初心者の方に向けて、AWS環境構築の基本からEC2インスタンスの作成、SSH接続までを図解を交えながら詳しく解説しました。

AWS環境を構築する際には、セキュリティ、コスト、パフォーマンスの最適化が重要です。

VPCやセキュリティグループを活用したセキュリティ対策、適切なインスタンスタイプの選択によるコスト最適化、CDNやロードバランサーによるパフォーマンス向上など、さまざまな方法があります。

これらの方法を参考に、安全で効率的なAWS環境を構築し、ビジネスに役立ててください。

人気の記事

最新情報をお届けします!

最新のITトレンドやセキュリティ対策の情報を、メルマガでいち早く受け取りませんか?ぜひご登録ください

メルマガ登録