サーバー

【AWSサーバーでWordPressのWebサイト構築するには?】既存のWordPressサイトをAWSに移行する方法も

コンテンツマーケティングで自社ブログやコラムサイトをはじめとし、オウンドメディアに至るまで幅広く利用されているWordPress。従来はWordPressをレンタルサーバーを利用して使用するケースが主流でしたが、近年では、WordPressをAWSの環境で構築するケースが増加してきています。

本記事では、AWSサーバーを使用してWordPressのWebサイトを構築する方法について、メリットデメリットを交えながら詳細を解説致します。

AWSを使用してWordPressのWebサイトを構築するメリット

従来のようにレンタルサーバーを利用するのではなく、敢えてAWSサーバーを使用してWordPressサイトを構築するケースが増加している背景には、様々なメリットが存在しているからではないかと言われています。特にAWSサーバーを使用してWordPressのWebサイトを構築する大きなメリットとしては次の3点が挙げられます。

  • 導入コストが低い
  • カスタマイズの自由度が高い
  • セキュリティの高さ

導入コストが低い

年額制または月額制であるレンタルサーバーに対し、従量課金制であるAWSサーバーは、利用しなければコストがかからないというメリットがあります。さらに、AWSサーバーはアカウント作成後1年間は無料で利用することができるため、レンタルサーバーを借りてWordPressのWebサイトを構築するよりも導入コストが格段に低いと言えます。

カスタマイズの自由度が高い

スペックが定められているレンタルサーバーに対し、構築するサーバーのスペックを自由に決めることができるAWSサーバーでは、それぞれの用途に応じたカスタマイズが可能です。さらにAWSサーバーには実に200以上もの様々な機能が搭載されているため、各機能を組み合わせることで従来のレンタルサーバーよりも格段に便利に使用することができます。

セキュリティの高さ

AWSサーバーでは、あらゆるソリューションが提供されています。そのため、セキュリティを強固なものにしつつ可用性を高めることが可能です。

AWSを使用してWordPressのWebサイトを構築するデメリット

レンタルサーバーよりもメリットが多いように見受けられるAWSサーバーですが、もちろんデメリットも存在します。AWSサーバーWordPressのWebサイトを構築しようと考えている方は、事前にデメリットに関してもきちんと理解した上でAWSサーバーを選択しましょう。主なデメリットは次の3点が挙げられます。

  • 専門的な知識が必要
  • 従量課金制が仇となることもある
  • AWSの障害発生時に困る

専門的な知識が必要

従来のレンタルサーバーを借りてWordPressでWebサイトを構築するのと比較し、AWSサーバーWordPressを構築する場合には、AWSサーバーについて深い理解が必要となります。AWSサーバーでは自分自身の手でサーバーを構築する必要があるためです。

従量課金制が仇となることもある

AWSサーバーのメリットでもある従量課金制は、AWSサーバーのサービスを使用すればするほど比例して高い料金がかかってしまう可能性があります。特にAWSサーバーを構築した場合、インスタンスを停止しない限り、使用していることになりどんどん課金されていくので注意しましょう。

AWSの障害発生時に困る

AWSサーバーでは、稀なことではありますが、AWSサーバー全体においてなんらかの障害が発生してしまうことがあり、AWSサーバー構築をしている場合には、復旧までの間サービスの利用ができなくなってしまうため、注意が必要です。

AWSを使用してWordPressのWebサイトを構築する手順

AWSサーバーを使用してWordPressのWebサイトを構築するメリットとデメリットを理解したところで、ここからは実際にAWSサーバーでのWordPressのサイトを構築する手順について解説致します。

主に下記2つの方法で構築することが可能です。

①Amazon EC2を使用してWordPressサイトを構築

②Amazon Lightsailを使用してWordPressサイトを構築

①Amazon EC2を使用してWordPressサイトを構築

Amazon EC2を使用する場合には、他のサービスや機能と組み合わせる必要があります。よくある手段としては、Amazon EC2でWebサーバーを作成し、Amazon RDSでMySQLデータベースを作成することが多いです。

Amazon EC2とは

ここでAmazon EC2について、今一度概要を確認しておきましょう。Amazon EC2とは、Amazonga提供している仮想サーバー構築サービスのことです。Amazon EC2を利用すると、クラウド上に仮想サーバーを迅速に作成することが可能です。

Amazon RDSとは

ここでAmazon RDSについて解説しておきます。Amazon RDSとは、英語表記で「Amazon Relational Database Service」の頭文字を取ったもので、AWSサーバーにおけるリレーショナル型のデータベースのことを言います。Amazon RDSを使用すると、データベースのインストールをはじめバックアップ等のセットアップをせずとも、データベースを利用することが可能です。

MySQLとは

MySQLとは、世界中で最も利用されているデータベース管理システムのことです。オープンソースでありながら、容量が大きいデータであったとしても、スピードを保ったまま動作し、便利な機能を多数搭載していることから実用性が高いシステムとなっています。

<手順その1>AWSアカウントの取得

まずはAmazon EC2を使用するために、AWSサーバーのアカウントを取得します。

<手順その2>Apacheをインストールする

次に「Apache」をインストールします。

Apacheとは

Apacheとは、Webサイトを提供するための無料のオープンソースソフトウェアとなっており、Apacheの公式サイトからダウンロードした圧縮ファイルを解凍した上で任意のディレクトリに配置することで使用することが可能です。

<手順その3>PHPのインストールをする

続いて「PHP」のインストールをします。

PHPとは

PHPとは、動的にWebページを生成する時に使用するサーバーサイドのスクリプト言語のことです。MySQL等とのデータベースとの連携が容易という特徴を持ちます。

<手順その4>MySQLのインストール及び設定を行う

MySQLの公式サイトからダウンロード及びインストールし、初期設定を行いましょう。

<手順その5>WordPressをインストールする

WordPressの公式日本語サイトからダウンロード及びインストールを行います。※インストールはサーバーへアップロードした上で行う必要がありますので注意が必要です。

②Amazon Lightsailを使用してWordPressサイトを構築

Amazon Lightsailを使用する場合には、前述したAmazon EC2とは異なり、他のサービスや機能を使用することなく単独でWordPressサイトを構築することが可能です。

Amazon Lightsailとは

ここでAmazon Lightsailについて、概要を確認しておきましょう。Amazon Lightsailとは、クラウドにアプリケーションを構築する際の問題を最も簡単に解決に導くためのVPS(仮想プライベートサーバー)のことです。

<手順その1>AWSアカウントの取得AWSアカウントの取得

Amazon EC2同様、Amazon Lightsailを使用するためにはAWSサーバーのアカウント取得が必要です。

<手順その2>Amazon Lightsailを使用し仮想マシンの起動をする

Amazon Lightsailを使用して、仮想マシンを起動します。仮想マシンを起動させるためには、AWSサーバー内にある「Linux 仮想マシンを起動」というチュートリアルを選択し、画面に従って起動させましょう。

<手順その3>WordPress起動する

AWSサーバーのホーム画面にある「インスタンス」をクリックすると出てくる「作成したインスタンス」をクリックするとWordPressの情報が記載されています。さらにその中にある「パブリックIP」を確認した上で「http://パブリックIP」にアクセスした後「Hello World」という画面が出ることを確認しましょう。

<手順その4>WordPressの管理画面設定を変更する

WordPressの初期設定では、WordPressの右下に「Bitnami」のロゴが表示されてしまっているため、ログイン画面のコマンドから削除を行います。

Bitnamiとは

Bitnamiとは、WordPress等のWebアプリケーションをPHP及びMySQL等のミドルウェアと共に一式を設定済みでパッケージ化した上で提供してくれるソリューションのことです。

AWSでWordPressを運営するときの料金

本項目では、AWSサーバーWordPressサイトを運営するときの料金について解説致します。

Amazon EC2の利用料金

Amazon EC2では、下記の表な4タイプの料金プランとなっています。

料金プランプラン内容
オンデマンド利用時間によって料金が決定する。
リザーブド1〜3年間の長期契約を行うことで割引が適用される。
スポット短期利用、単発利用したい時に向いているが、AWSサーバー側のタイミングで停止するリスクがある。
Dedicated Hostユーザー専用の物理的なサーバーとして利用可能。

Amazon Lightsailの利用料金

Amazon Lightsailでは、下記の表のような料金設定となっています。

月額3.50USDプラン月額5USDプラン月額8USDプラン月額12USDプラン
仮想サーバーLinux or UnixLinux or UnixWindowsWindows
メモリ512MB1GB512MB1GB
ディスク20GB SSD40GB SSD20GB SSD40GB SSD
転送1TB2TB 1TB1TB2TB

応用編:既存のWordPrssサイトをAWSに移行するには

ここからは応用編として、AWSサーバー外に構築済みの既存のWordPressサイトAWSサーバーに移行する方法3つの方法について解説致します。

①WordPress のエクスポート・インポートを使用

②プラグイン「All in One WP Migration」を使用

③手動でコピーする

①WordPress のエクスポート・インポートを使用

WordPressに標準搭載されているエクスポート機能及びインポート機能を使用することで、既存のWordPressサイトの移転は容易となります。WordPress内のデータを「xml形式」のファイルでエクスポートしましょう。その後xml形式のダイルをAWSサーバー内の移転先のサーバーでインポートすることでスムーズにデータ移行することが可能です。

②プラグイン「All in One WP Migration」を使用

WordPressのプラグインを使用することで、複雑なデータであってもAWSサーバーに移行することが可能です。このケースでは、古いコンテンツは削除しつつ、サイト内の限定された箇所のみをエクスポートしたいという時に役立ちます。様々なプラグインが存在しますが、代表的なものとしては「All-in-One WP Migration」や「Advanced Export for WP & WPMU」等が挙げられます。

③手動でコピーする

物理的に手動でコピーするという方法も存在します。移行したいWordPressのファイルを全てAWSサーバーにコピーし、既存のダンプファイルを移転先のデータベースにインポートしましょう。その後、IPアドレスの修正を行い、さらにドメインの参照先を変更します。

手動でコピーを行うためには、それなりの専門的な知識が必要となる反面、サーバー内のデータはカスタマイズ及び設定も細かく手動で移行することができるというメリットがあります。

まとめ

AWSを使用してWordPressを構築する方法について、本記事では、メリットやデメリットを交えながら詳細を解説致しました。従来のようにレンタルサーバーを使用してWordPressのサイトを構築するよりも、コストが安かったり、セキュリティ面が高かったりと、様々なメリットがあることが理解できたのではないでしょうか。

AWSサーバーに関する理解が必要となりますが、AWSサーバーは他にも様々な機能を持つため、使いこなせるようになるとあらゆることに応用することが可能です。まずは、AWSサーバーを使用してWordPressサイトを構築してみてはいかがでしょうか。

【AWS VPN構築とは?】AWS Client VPNを導入するメリットやデメリット、構築手順についても徹底解説!

コロナ禍でテレワークが促進されている中、脚光を浴びているAWS。企業等では、AWSを使用してVPNを構築するケースが増えてきています。

本記事では、AWSのVPN構築に焦点を当て、AWS Client VPNを導入するメリットデメリットや構築手順について徹底解説致します。

VPNとは

まずはじめにそもそもVPNとは何かをおさらいしておきましょう。VPNとは、英語表記で「Virtual Private Network」の頭文字を取ったもので、インターネット回線を利用して作成する仮想プライベートネットワークのことを言います。VPNは、企業であれば本社等に専用のルーターを設置することで公衆の回線を利用し、通信を行います。

VPNが好まれる理由としては、Wi-Fi等と比較してセキュリティ面においてリスクが少ないとされているとされているからです。

AWS-vpnとは

次にAWS VPNについて、概要を抑えておきましょう。AWS VPNとは、AWSの様々なサービスのうち、VPNを利用した通信サービスのことを言います。AWS VPNでは、オンプレミスのネットワークをクラウド上で拡張することができるため、様々な地点から仮想専用回線を使用しアクセスすることが可能となります。

AWS-client-vpnとは

AWS Client VPNとは、AWSリソース及びオンプレミスネットワーク内にあるリソースに対し、安全にアクセス可能にするClientベースのマネージドVPNサービスのことです。前述したAWS VPNは、AWSサイト間VPN及びAWS Client VPNで構成されています。

AWSサイト間VPNは、ネットワークと「Amazon Virtual Private Cloud」あるいは「AWS Transit Gateway」の間において暗号化されたトンネルを作成します。一方でAWS Client VPNは、無料のVPNソフトウェアクライアントを使用し、AWSあるいはオンプレミスのリソースに接続するのです。

AWS-client-vpnを導入するメリット

それぞれの言葉の概要を理解できたところで、AWS Client VPNを導入するメリットについて、代表的な3点をご紹介します。

  • セキュリティの高さ
  • 耐障害性の強さ
  • OpenVPNとの互換性

セキュリティの高さ

前述した通りVPNは、仮想プライベートネットワークであるため、一般的なインターネット回線とは違い、暗号化された通信環境を構築することになります。さらに、AWS Client VPNに関しては、特に安全性が高いとされるTLS VPNトンネルプロトコルを使用しており、重要であるデータを盗まれたり改竄されたりといった様々なリスクから守ることができるのです。

耐障害性の強さ

AWS Client VPNにおける「クライアントVPNエンドポイント設定」では、複数のサブネットを紐づけることが可能であることから、様々なアベイラビリティゾーンのサブネットを紐づけることで、どこかのアベイラビリティゾーンで障害が発生してしまったとしても、他のアベイラビリティゾーンを利用することができるため、直接的な被害を被ることは少なくなります。

OpenVPNとの互換性

AWS Client VPNは、OpenVPNに対して互換性を持つClientアプリケーションの使用が可能です。OpenVPNは、あらゆるOS(WindowsやMac、iOSやAndroid、Linux)において利用することができるため、ユーザーはあらゆるデバイスからAWSへアクセス可能となります。

AWS-client-vpnを導入するデメリット

AWS Client VPNには、メリットだけでなくデメリットも存在します。あらかじめデメリットについても理解しておくことが大切です。特に次の3点のデメリットが挙げられます。

  • コストがかかる
  • 通信速度が一定にならないケースが生じる
  • バッテリーの消耗が早い

コストがかかる

後述で詳細を解説致しますが、AWS Client VPNでは、エンドポイントがVPN接続をした時間によってコストが発生し、さらにクライアントがVPN接続をした時間によってもコストが発生することになります。

通信速度が一定にならないケースが生じる

AWS Client VPNでは、既存のインターネット回線を利用することから通信速度が一定ならないケースが生じる可能性があります。特に時間帯(夕方)によって大きな影響を受けてしまうことが多いです。

バッテリーの消耗が早い

AWS Client VPNでは、データが暗号化されることでバッテリーの消耗が早くなってしまうというデメリットがあります。特にモバイル機器を使用して通信をするケースでは、通常よりもさらにバッテリーの消耗が早くなってしまうことが予想されます。

AWS-client-vpnの料金体系

AWS Client VPN接続は下記の2パターンの料金体系となっています。

料金体系料金
AWS Client VPNエンドポイントの時間料金1時間あたり0.15ドル
※1時間に満たない場合でも1時間の料金が加算
Client VPN接続料金サブネット1つ毎に1時間あたり0.05ドル

AWS-client-vpnの構築手順

AWS Client VPNを構築する手順については、今回は証明書を利用し、相互認証するという手順で解説致します。

<手順その1>サーバ証明書及びクライアント証明書を作成

AWS Client VPNで相互認証を行う場合、AWS Client VPNは、認証期間(CA)により発行される識別用デジタル形式の証明書を使用してクライアント及びサーバー間の認証を実行することになります。具体的には、クライアントがクライアントVPNエンドポイントに接続をしようとすると、サーバーはクライアント証明書を使用してクライアントを認証することになります。

サーバー証明書はAWS Certificate Managerにアップロード及びクライアントVPNエンドポイント作成時に認証局(

CA)と共に指定を行う必要があります。ただし、サーバー証明書をAWS Certificate Managerにアップロードする必要が生じるのは、あくまでクライアント証明書の認証局(CA)がサーバー証明書の認証局(CA)と異なる時のみです。

また、クライアントVPNエンドポイントに接続を行うクライアント毎に、個別のクライアント証明書とキーを作成することが可能です。

<手順その2>クライアントVPNエンドポイントを作成

AWSマネジメントコンソールにログイン後「クライアントVPNエンドポイントの作成」をクリックし、クライアントVPNエンドポイントを作成します。画面に従って、エンドポイント管理用の名前を決定したり、クライアントに割り当てを行うIPアドレスのCIDR等を入力したりしていきます。その中で、<手順その1>で作成したサーバー証明書及びクライアント証明書選択も行います。

このタイミングでは、利用料金が発生することはないので安心してください。

<手順その3>クライアントVPNエンドポイントをVPCのサブネットに紐付けする

VPCの任意のサブネット(複数可)にクライアントVPNエンドポイントを紐づけていきます。紐付けがされたサブネットに関してはクライアントVPNエンドポイントのENIが作成されることとなり、この時点で初めて料金が発生することになります。前述した通り、紐付けを行うサブネットの数によって料金が加算されていくので注意しましょう。ただ、セキュリティ面を考慮した場合、1つのサブネットではなく、複数のサブネットを紐づけておくことをおすすめします。

サブネットを紐づけた後、クライアントVPNエンドポイントには、オートでVPCのデフォルトセキュリティグループがアタッチされることになります。デフォルトではない他のセキュリティグループをアタッチすると、クライアントVPNエンドポイントからVPC内にある他のEMIへのアクセス制御が可能となります。

<手順その4>クライアントPCからのアクセスの承認を行う

AWSマネジメントコンソール内でクライアントVPNエンドポイントを選択した上で、「認証」をクリックすると、クライアントPCから接続できる接続先の一覧表が表示されるので、許可を行いましょう。※デフォルトではいずれのCIDRも許可されているわけではありませんので注意が必要です。

<手順その5>クライアント用のVPNエンドポイント設定をダウンロードする

AWSマネジメントコンソール内でクライアントVPNエンドポイントを選択すると上部に「クライアント設定のダウンロード」というボタンが表示されるので、クリックすることでダウンロードが可能です。具体的には「.ovpn」という拡張子の設定ファイルクライアントPCにダウンロードしましょう。その後.ovpn設定ファイル及びクライアント証明書、及び証明書キーをクライアントソフトの設定ファイル用のフォルダに配置します。

まとめ

AWS VPN構築について、本記事では、AWSのVPN構築に焦点を当て、AWS Client VPNを導入するメリットデメリットや構築手順について徹底解説致しました。様々な機能を持つAWS内で、セキュリティの高さを誇る仮想プライベートネットワークであるVPNを構築することで、あらゆる脅威からデータを守ることができることが理解できたと思います。

AWS Client VPNを使用するためには、AWSに関する知識も必要となります。AWSは世界的にも普及しているため、使いこなせるようになると様々な面で重宝されるでしょう。VPNを構築したいと考える方は、是非AWSを利用して構築してみてはいかがでしょうか。

【アプリ サーバー・アプリケーションサーバーとは?】仕組みや利用するメリットについても徹底解説!

アプリの開発を行うときに必ず聞く言葉に「サーバー」があります。実際サーバーって何のことなのか分からない方もいるのではないでしょうか。

この記事では、アプリ開発には欠かすことができないサーバーについて詳しく解説していきます。

アプリケーションサーバーとは?

そもそもアプリケーションサーバーとはどのようなものなのでしょう。アプリケーションサーバーとは、WEBサーバーからの情報を受け取り、その情報を情報を処理するためのものになります。アプリ開発はプログラミング言語で構築し作り上げますが、それらを正常に動かすための働きをしています。

アプリケーションサーバーの役割としては、Webサーバーから送られてきた情報を「PHP」「Java」「Ruby」などのプログラミング言語を実行して、その情報を処理をし結果を返還することで正常な情報をユーザーに届けることができます。Webサーバーから受け取った情報によってはデータベースにアクセスしてデータをリクエストし、抽出や加工処理を行います。

WebアプリケーションサーバーとWebサーバーの違い

前述したようにサーバーには、アプリケーションサーバーとWEBサーバーがあります。この二つを混同してしまう方もいると思いますが、実際は違うものになります。それではその違いについて解説します。

Webサーバーとは?

WEBサーバーは、ユーザーと直接やり取りを担うサーバーになります。スマートフォンやPCといったモバイルから送られた情報に対して、「JavaScript」「CSS」「HTML」といった、情報を返還する役割を持ったソフトウェアのことをいいます。

ユーザーからの情報を受け取ると、アプリケーションサーバーに内容を伝え、アプリケーションサーバーで処理が終わると結果を受け取り、ブラウザに表示します。

ユーザーがリクエストする内容が、静的か動的かにより処理方法は異なり、テキスト情報だけの静的な情報は、Webサーバー単体で処理できるので、そのまま静的データであるCSSやHTML、画像データを送り、動的なページは、アプリケーションサーバーへ処理のリクエストを処理してもらいます。

アプリケーションサーバーとは?

アプリケーションサーバーは、Webサーバーから送られてきた情報をそれぞれのプログラミング言語で処理し、動的なコンテンツを作り上げる役割があります。動的なコンテンツは、「Java」「PHP」「Python」「Ruby」などになり、その言語で生成されたプログラムをいいます。

基本的にアプリケーションサーバーは、単体で利用されることはなく、Webサーバーと一緒にかどうするものになります。動的な処理が必要な場合にはアプリケーションサーバーに対してリクエストを行い、返ってきた結果をWeb上に送信する仕組みです。

アプリケーションサーバーの仕組み

皆さんが目にするWEBサイトには、大きく分けて「Web3階層モデル」と「1台構成」の2つのパターンがあります。それぞれ解説したいと思います。

Web3階層モデル

Web3階層モデルとは、簡単にいえば「サーバーが3つある仕組み」になっているものです。「Webサーバー」「アプリケーションサーバー」「データベースサーバー」の3層で構成されており、サーバーを3つ置くことにより回線が重くなってしまう事態を解消し、1つのサーバーに負荷が集中しないような仕組みになっています。

Webサーバー

Webサーバーは、ユーザーとのやりとりを直接行うサーバーです。ユーザーからの情報を受け取り、アプリケーションサーバーに渡し、アプリケーションサーバーからその結果を受け取り、最後にユーザーに返すという、一番重要な役割を担っています。

アプリケーションサーバー

アプリケーションサーバーは、3層あるサーバーの真ん中に位置しており、Webサーバーから送られてきた情報を「Java」「Ruby」「PHP」などを実行して処理します。

データベースサーバー

データベースサーバーは、情報を集めてデータを整理しているバックエンドになり、Webサイトに必要なユーザーや商品のデータなどを保存しています。

Web3階層モデルのメリット

Web3階層モデルのメリットには2つあります。まずは「変更部分や問題箇所を特定しやすい」点です。例えばアプリなどで変更したい箇所がある場合、コンピュータが1つであると、3つの機能が絡み合っているため、変更したい部分が特定しづらくなりますが、Web3階層モデルは役割ごとに分かれているので、変更したい部分はアプリケーションサーバーとすぐに特定できます。

二つ目は「各サーバーの機能を最大限発揮できる」ことがあげられます。Web3階層モデルは各役割ごとに3つのサーバーに分かれているので、それぞれの機能だけに集中して作業することができます。

Web3階層モデルのデメリット

デメリットとしてあげられるのはやはりコストになります。Web3階層モデルは、単純に3つ分のサーバー料金がかかると思ってもらえれば分かりやすいでしょう。

二つ目が「余分な処理を行う」オーバーヘッドが発生することです。3つのサーバーがあるため、それぞれがやり取りをして結果を出すため、途中で余計なやり取りが入る時間が余計にかかってしまうというのがデメリットになります。

1台構成

1台構成とは、「Webサーバー」「アプリケーションサーバー」「データベースサーバー」を1つのコンピュータにまとめたものをいいます。データが集中するため、大きな規模ではなく小さな規模のサイト開発などで使用されています。

1台構成のメリット

まず一つ目はコストが安いということです。サーバーが一つしかないため、コストは安く済みます。二つ目はもし故障をした場合でも、修理に時間がかからないことです。単純計算ですが、修理を行う際はWeb3階層モデルの三分の一で済む計算になります。

1台構成のデメリット

デメリットにあげられるのは、まず「他の機能への影響」です。もし一つのサーバーが故障した場合、全てのサーバーがストップしてしまう可能性があります。

また二つ目は「負荷が高い」ということです。1台構成は1台のコンピュータで、3つの機能を担っているためどうしても負荷がかかってしまいます。

アプリケーションサーバーを利用するメリット

アプリケーションサーバーには、さまざまな動的な処理機能が搭載されています。WEBサイトやアプリを開発する際には欠かすことができないソフトウェアですが、アプリケーションサーバーを利用してアプリを構築することでどのようなメリットがあるのでしょうか。

導入やメンテナンスが容易

メンテナンスやアップデートを行う際、その都度新しいシステムをインストールする必要がなく、インターネットに接続するだけで継続してシステムを利用できます。アプリケーションサーバーを導入していれば、新しいハードウェアに交換してもアプリケーションサーバーとそれぞれのアプリケーションをセットアップするだけで、システムの再稼働も時間がかかりません。

セキュリティが強固

3つのサーバーで分散処理を行うことで、それぞれのサーバー間にセキュリティ製品を設置できます。そのため、よりセキュリティを強固にすることが可能です。1台のサーバーコンピュータにシステムが集約されていると、データベースにクライアントは直接アクセスできる環境です。クライアントのパソコン自体が不正アクセスにあってしまうと、必要な情報を抜き取られるというリスクが高まってしまいます。

情報処理の負荷を軽減

Web3階層モデルにより情報処理が重くなりにくく、サーバーの負荷が軽減できるとともにスピーディーな処理ができるのもメリットです。サーバー1台あたりの負荷を減らすことでレスポンススピードやパフォーマンスの向上し、効率よく処理を行うことができます。また、サーバーを分散させることで故障しにくく、万が一故障した場合でも故障範囲を容易に測定し、サーバーの取り換えが簡単にできるという点もメリットといえるでしょう。

アプリ開発の費用を削減することができる

アプリの開発に必要な機能が搭載されているサーバーを利用すれば、作業工数を削減することができ、同時にコストも抑えることができます。もしアプリケーションサーバーを導入しない場合、搭載されている機能を1から作り込みを行うことで時間もかなりかかり、完成までに予想以上の時間がかかってしまうことも考えられます。

サーバーにかかる費用とは?

アプリの開発には大小さまざまありますが、大体数十万円から250万円ほどといわれています。そのうちサーバー代金にかかるコストは、月に数千円から数万円といわれています。

またレンタルサーバーという、サーバーを借りてアプリ開発することも可能なため、もう少しコストを安く抑えることも可能になります。

おすすめのレンタルサーバー

それでは、初心者の方におすすめのレンタルサーバーをご紹介します。レンタルサーバーにはいろいろありますが、コストや特徴などを踏まえて、自分に合ったものを選ぶといいでしょう。

さくらのレンタルサーバー

さくらインターネットが運営している「さくらのレンタルサーバー」は、45万件以上の実績を持った人気のレンタルサーバーとなっており、運営元のさくらインターネットは一部上場を果たしている企業のため、安心して利用できるでしょう。

機能もリニューアルされ、速度が大幅に向上したことにより快適に利用することができます。初心者でも扱いやすく月額も524円から始められるのも魅力です。2週間の無料体験もできるので、自分に合ったサーバーかどうかを確かめてみるのもいいでしょう。

ロリポップ!

国内NO1のシェアを誇るのが、GMOペポバが運営しているロリポップ!です。200万件以上の実績を誇り、もし困ったことがあっても電話やチャットによって対応してくれるのも心強いです。

月額220円から利用することができ、10日間の無料プランもあるので、利用してみて導入を考えることもできるのでおすすめです。

ConoHa WING

一部上場企業のGMOインターネット株式会社が運営するConoHa WINGです。導入実績も20万件を超え、最近人気のレンタルサーバーです。人気の理由の一つが、その速さ。サーバーの処理速度は業界NO1といわれており、ストレスがかからないのが特徴です。

サポート体制もしっかりしているので、初心者にはおすすめのレンタルサーバーといえるでしょう。月額640円からとなっており、無料プランはありませんがコスト的にも安く抑えられます。

エックスサーバー

エックスサーバー株式会社が運営しているエックスサーバーは、利用実績も180万件を超える、国内有数の人気レンタルサーバーです。初心者には嬉しい24時間365日サポート体制を整えており、困ったことがあればいつでも対応してくれます。

また10日間の無料体験を設けており、自分に合うサービスかどうかを見極めてから活用することができ、月額も990円から利用できるので、コスト的にも優しいといえるでしょう。

まとめ

この記事では、アプリの開発には欠かすことができないサーバーについて解説してきましたがいかがでしたでしょうか。

今回ご紹介したようにサーバーはアプリ開発に欠かすことができない要素となり、サーバーを活用することにより多くのメリットをもたらしてくれます。サーバーにもいろいろとあるので、自分に合ったサーバーを見つけて活用していくといいでしょう。

今回の記事を参考に、素晴らしいアプリを作り上げてください。

【AWSメールサーバー構築とは?】AWSメールサーバー(SES)のメリットデメリット、メール送受信設定について徹底解説!

中小企業から大企業、さらには官公庁に至るまで、あらゆる組織で普及しているAWS。AWSでできることは多岐に渡ります。中でもメールサーバーを構築したいと考える方も多いのではないでしょうか。

本記事では、AWSメールサーバー構築について、SESのメリットデメリットをはじめ、メール送受信設定についても徹底解説致します。


メールサーバーとは

AWSメールサーバーについて解説する前に、そもそもメールサーバーとはなんなのか、おさらいしておきましょう。メールサーバーは、その名の通り、メールの送受信を行うサーバー機能のことを言います。特に関連する機能としては、次の4つが挙げられます。

  • MUA
  • MTA
  • MDA
  • MRA

MUA

MUAとは、英語表記で「Mail User Agent」の頭文字を取ったもので、メーラのことを指します。送信であれば、ユーザーが作成したメールを後述するMTAに渡し、受信であれば、後述するMRAから取得することになります。

MTA

MTAとは、英語表記で「Mail Transfer Agent」の頭文字を取ったもので、メールの宛先までメールを転送する機能のことを指します。

MDA

MDAとは、英語表記で「Mail Delivery Agent」の頭文字を取ったもので、管理しているアドレス宛のメールを分類及び管理を行う機能のことを指します。

MRA

MRAとは、英語表記で「Mail Retrieval Agent」の頭文字を取ったもので、前述したMUAからの要求に従い、MDAのもとで管理されているメールを取得及び参照できるようにする機能のことを指します。

AWSメールサーバー(SES)とは

AWSは、Amazonが提供するクラウドコンピューティングサービスのことで、AWSメールサーバー(SES)は、英語表記で「Simple Email Service」のことであり、AWSの中でも任意のアプリでのメールの送信ができるサービスのことです。

AWSメールサーバー(SES)でできること

AWSメールサーバー(SES)でできることは色々ありますが、ここでは特に代表的な機能についてご紹介致します。

基本的なEメールの送受信

AWSメールサーバー(SES)では、基本的なメールの送受信を行うことができます。特にメール送信に関しては、迷惑メールフォルダに分配されにくいという配信性能の高さを誇ります。ただし、後述しますが、Outlook等の通常のメールクライアントでの受信はできないので、注意が必要です。

テンプレートの活用

AWSメールサーバー(SES)では、APIを用いることでメールテンプレートを作成することができ、メールマガジン等の作成も容易です。

あらゆるデータベースとの連携

AWSメールサーバー(SES)は、汎用性が高く、AWSのあらゆるデータベースと連携することができます。

エラーメール発生時に自動配信停止

AWSメールサーバー(SES)で送信されたメールのうち、エラーが出てしまったメールアドレスには、以降メール配信はされず、自動的に配信停止になるという機能がついています。

AWSメールサーバー(SES)のメリット

AWSメールサーバー(SES)には、様々なメリットがあるため、様々な企業や組織で活用されています。特に大きなメリットとしては、次の3点が挙げられます。

スケールアップが容易

AWSメールサーバー(SES)の導入をすると、メモリ及びハードディスクを増設したり、CPUのスペックを交換したりといったようなことが容易に行うことができます。

セキュリティの高さ

AWSメールサーバー(SES)は、AWS自体が第三者機関によりたくさんの認証を取得しており、セキュリティの高さが保証されています。さらに、各メールに関しては、SPF(メールの検証標準)によりチェックされることから、なりすましの対策にもなります。

低コスト

後述で詳しく解説致しますが、AWSメールサーバー(SES)の料金体系は地域によって差がありますが、AWSと同様日本においては、従量課金制となるため、使用した分だけコストがかかります。また、Amazon EC2で稼働しているアプリケーションからAWSメールサーバー(SES)を呼び出し使用することで、毎月6万2千通のメール送信が無料となります。さらに、受信に関しては、特に条件はなく約2千通までのメールが無料となります。

AWSメールサーバー(SES)のデメリット

一方で、AWSメールサーバー(SES)にもデメリットは存在します。大きなデメリットとしては次の通りです。

通常のメールクライアントでの受信は不可能

AWSメールサーバー(SES)は、一般的なPOPあるいはIMAPサーバーの機能はありません。そのため、Outlookをはじめとした、通常のメールクライアントを使用し、メール受信を行うことはできません。後ほど、メール受信の設定については詳しく解説致します。

AWSメールサーバー(SES)の料金体系

AWSメールサーバー(SES)の料金体系は、地域によって差がありますが、リージョンを「アジアパシフィック(東京)」に設定した場合の料金体系について解説致します。

<Amazon EC2のアプリケーションからのメール送信の場合>

毎月最初の6万2千通は無料となり、その後千通につき0.10USDの支払いが発生します。また、添付ファイルのサイズが1GBにつき、0.12USD追加料金がかかります。

<Outlook等のメールクライアントからのメール送信の場合>

千通のメール送信につき、0.10USDの支払いが発生し、添付ファイルのサイズが1GBにつき0.12USDの追加料金がかかります。

<メール受信>

最初の千通のメールは無料、それ以降千通ごとに0.10USDの支払いが発生します。さらに受信するメールチャンク千通につき、0.90USDの追加料金がかかります。

※公式サイトでは、「アマゾン ウェブ サービス月額料金見積もりツール」を使用することで、各ユーザーごとの月額料金について見積もりを出すことが可能ですので、是非活用してください。

AWSメールサーバー(SES)でのメール送信設定

AWSメールサーバー(SES)でのメール送信を行う設定について解説していきます。

AWSにログインする

AWSのアカウントが未作成の場合には、新規作成を行い、ログインしましょう。

AWSメールサーバー(SES)を開きリージョンを選択

AWS等のクラウドコンピューティングでの「リージョン」とは、地理的な要素「ゾーン」のことです。日本であれば「東京リージョン」や「大阪リージョン」が選択可能です。

メールアドレスの登録

AWSメールサーバー(SES)のマネジメントコンソールの項目「Identity Management」の中にある「Email Addresses」に任意のメールアドレスを登録します。

登録したメールアドレスの認証

先ほど登録したメールアドレスに問題がないかを確認し、認証を行います。「Velfication Sender」の「Email Addresses」を選択すると、登録したメールアドレスが表示されるので、「Verify a New Email Address」をクリックし、アドレスを入力して「Verify This Email Address」をクリックすると、アドレスにリンク付きのメールが同歩されるので、リンクをクリックすることで認証が行われます。

登録したメールアドレスにメール送信を行ってみる

メール送信画面で登録したメールアドレスを「To」に入力し、「Subject」及び「Body」を入力して、「Send a Test Email」をクリックして、無事にメールが送信できるとメールアドレスの登録がうまくいっているという証拠となります。

送信制限の緩和申請を行う

AWSメールサーバー(SES)のダッシュボードの中にある「Request a Sending Limit Increase」をクリックし、複数の質問の回答を入力した後、「サービス制限の増加」にチェックをして送信します。その後申請が受理されるとメールが届き、ここで正式にAWSメールサーバー(SES)の使用が可能となります。

登録したメールアドレス以外のメールアドレスにメールを送信してみる

登録したメールアドレスをクリックすると出てくる「Send a Test Email」を選択すると、「Send Test Mail」が表示されますので、「To」に登録していないメールアドレスを入力後、「Subject」「Body」にも入力を行って、テストメールを送信します。

SMTP認証情報の作成

AWSメールサーバー(SES)は、SMTPに対応しているため、設定を行います。「Create My SMTP Credentials」を選択し、画面に従って権限を持つユーザーの作成を行うことでSMTP送信を行うための証明書が作成されます。

Outlook等のメールクライアントからテストメールを送付する

先ほど設定したSMTP送信機能を使用することで、Outlook等の外部メールクライアントからメール送信が行うことが可能です。メールアカウントを作成後、SMTPの設定を行い、送信サーバーポートの設定は「465」としましょう。

AWSメールサーバーでのメール受信設定(Route53を使用)

AWSメールサーバー(SES)のメール受信設定においては、「Amazon Route 53」というサービスがおすすめです。AWSメールサーバー(SES)と互換性があり、とても便利なものとなっているためです。

Amazon Route 53とは

AWSメールサーバーでのメール受信設定をする前に、Amazon Route 53について簡単に解説致します。Amazon Route 53とは、簡単にいうとDNS(ドメインネームサービス)のフルマネージドサービスのことです。具体的には、Amazon Route 53を使って管理しているドメインを参照し、IPアドレス等に関連するデータを取得することが可能です。

Amazon Route 53には、ドメイン登録機能とDNSルーティング機能、DNSヘルスチェック機能等が搭載されており、可用性と拡張性が優れています。

ドメイン設定

AWSメールサーバー(SES)のコンソールを開き、「ドメイン」「新しいドメインの検証」と進み、Amazon Route 53で登録してあるドメイン名を入力及び検証を行い「Route 53を使用」を選択します。画面に従い、「Domain Verification Record」と「Email Receiving Record」をチェックしてからしばらく待ち、更新するとドメインの検証及び設定が完了します。

ドメイン設定後AWSメールサーバー(SES)で受信メール設定を行う

それぞれの環境に合わせて細かい設定が必要となりますが、特に設定が必要であると考えられる箇所は次の2点です。

  • Recipients
  • Rule details

「Recipients」は、受信するメールをドメインから設定を行う項目です。また「Rule details」は、スパム及びウィルス等への対応を設定を行う項目となっています。他にも必要に合わせて細かな設定をするべきですので、全項目に目を通してからAWSメールサーバー(SES)の使用を始めることが大切です。

まとめ

AWSメールサーバー構築について、本記事では、AWSメールサーバー(SES)のメリットデメリットをはじめ、メール送受信設定についても徹底解説致しました。それぞれの環境によって細かな設定は必要となりますが、最低限の設定については、本記事を参照することでできるようになるのではないかと思います。

普及してきているAWSの中でも特に必要となるAWSメールサーバー(SES)について理解し、スムーズにメール送受信を行うことができるよう設定を行いましょう。

【AWSサーバー構築とは?】AWS EC2とVPCを利用したら初心者でも簡単にサーバー構築ができる!?

AWS(アマゾンウェブサービス)は、世界中で最も採用されていると言っても過言ではない、クラウドプラットフォームであり、最新のテクノロジーを活用することができ、簡単にサーバー環境を構築することが可能です。

本記事では、AWSサーバー構築について概要をまとめ、初心者でもAWSサーバー構築について理解できるよう丁寧に解説致します。

AWSとは

AWSは、「Amazon Web Services」の頭文字を取った略語で、Amazonが提供する100以上ものクラウドコンピューティングサービスのことを指します。

クラウドコンピューティングとは、簡単に言うと、インターネットを介し、サーバー及びストレージ、データベース及びソフトウェア等のあらゆるサービスを利用することです。つまり、1台のPC及びインターネット環境があるだけで、サーバー及びストレージ、データベース等を必要な分だけ必要に応じて利用することが可能となります。

AWSサーバーとは

AWSサーバーとは、AWS上で提供している機能の一つAmazon EC2(Amazon Elastic Compute Cloud)という仮想サーバーを構築できるサービスで構築したサーバーのことを指し、従来のようにサーバー機器を購入したり、スペースを確保したりと言った物理的な工程を必要としません。

AWSサーバーの利用方法

Amazon EC2で構築したAWSサーバーは、従量課金性のサービスであり、専用のウェブサイトから各種設定を行うだけで利用可能です。使用した分だけ課金されるため、とても良心的となっています。Windows及びLinux、MacOS及びDebianのOSを選択することが可能で、ニーズに合わせて仮想サーバーをたった数分程度で作成することができます。

さらにAWSの最初のサインアップから12ヶ月間は無料で利用できるため、試しに使ってみたいという方にもおすすめです。

AWSサーバーの料金体系

Amazon EC2には、下記の4種類の料金体系が設定されています。

オンデマンド秒数あたりの従量課金制
スポットインスタンス短い期間で突発的に利用を行う場合の料金体系
オンデマンドよりも割安設定
リザーブドインスタンス長い期間で利用を行う場合の料金体系
1年間〜3年間の前払い
Dedicated Hostsデーターセンター内の物理サーバーを専有

AWSサーバーのメリット

AWSサーバーを利用する方が多い理由として、次のような様々なメリットがあることが挙げられます。

  • 構成の柔軟性
  • 従量課金性
  • 耐障害性
  • セキュリティの高さ

構成の柔軟性

AWSは仮想サーバーであることから、場所や時間に捉われることなく、必要に応じて拡張及び縮小が可能です。これはサーバーの数が1つでも複数であっても変わりません。

従量課金性

物理的にサーバーを用意する必要がないことから初期費用がかからない上に、必要な時に必要なだけコストがかかるため、運用コストも他の仮想サーバーと比較してとても安く設定されています。

耐障害性

AWSは、災害時であっても、重要なITシステムを短い時間で復旧することが可能です。そのため、物理的にインフラストラクチャを別の場所に用意しておく必要がなく、さらに考えうる災害に対して様々なサポートが用意されています。

セキュリティの高さ

AWSでは、セキュリティを最優先事項と捉えており、セキュリティ面が重要視される企業でも安心して使用できるデーターセンター及びネットワークアーキテクチャを保持しています。

AWSサーバーのデメリット

便利なAWSサーバーにも、次のようなデメリットが存在します。利用する前にデメリットについては把握しておくようにしましょう。

  • メンテナンス時にはシステム停止
  • カスタマイズの自由度が低い

メンテナンス時にはシステム停止

AWSは、セキュリティ面に関して重視していることもあり、メンテナンスが行われることが多々あり、メンテナンス中はシステムを使用することができません。特に大企業においては、無視することができないデメリットとなるため、日本国内においては、プライベートクラウド方式を選択するケースが多くなっています。

カスタマイズの自由度が低い

AWSは、仮想サーバーであることから、自由にカスタマイズを行うことが難しいというデメリットがあります。ニーズに合わせて細かい調整及びカスタマイズ、機能の追加を行いたくとも、クラウド上のサーバーであるため、思うようにカスタマイズできないことがしばしばあります。

AWSでサーバー構築する手順

Amazon EC2を使用してAWSでサーバーを構築する手順について概要を解説致します。

AWSアカウントの取得

まずはAWSアカウントを取得します。

AWSにサインアップ

AWSのアカウントを取得したのち、AWSにサインアップします。

VPCの作成

VPCとは、AWS上に独立した仮想プライベートネットワーク環境を作成するサービスのことを指します。EC2のインスタンスを利用するためには、VPCを作成することが必要で、インスタンスを配置するための土台となるネットワークの定義を行います。

サブネットの作成

サブネットとは、VPCの中でIPアドレスの範囲で区切られた小さな範囲のネットワークのことです。例えば2つのサブネット(公開用と非公開用)を作成することで、セキュリティ面に配慮したネットワークを構築することが可能です。

インターネットゲートウェイの作成

インターネットゲートウェイは、インターネットに繋がっているルータのようなものを指します。インターネットゲートウェイを経由することでネットワーク内のシステムがインターネットとデータをやりとりすることになります。

ルートテーブルの作成

ルートテーブルとは、インターネットと仮想ネットワークの間をアクセスするためのルール設定がされた経路設定テーブルのことです。

EC2インスタンスの作成

EC2上で稼働するサーバのことをEC2インスタンスと言います。このEC2インスタンスはAWSマネジメントコンソール(GUI)あるいはAPIを使用し、コマンド及びプログラムを経由して作成することができます。初めてEC2インスタンスを作成する際には、AWSマネジメントコンソール(GUI)を使用するのがおすすめです。

※Windowsの場合はSSHのクライアントソフトのインストールが必要

次の工程であるSSHを使用しインスタントに接続するために、Windowsを使用している場合には、事前にSSHのクライアントソフトをインストールしておく必要があります。代表的なSSHのクライアントソフトは、「putty」や「Tera Term」が挙げられます。

SSHを使用しインスタンスに接続

キーペアを作成し、SSHを使用してインスタンスに接続をします。

AWSサーバー構築を失敗しないポイント

AWSサーバー構築を失敗しないポイントとしては、当たり前ではありますが、事前準備等の確認が大切です。各項目の内容を確認し、確実に準備を行いましょう。

事前準備

サーバー構築を行う前には、チェックリストを準備して、必要なサービス及び必要なインスタンス、セキュリティの確認や、利用するリージョン及びロケーション、ネットワークの構成等をあらかじめ書き出してまとめておきます。漏れがないように注意しましょう。

IAMユーザーの使用

IAMとはAWS Identity and Access Managementの略で、AWSへのアクセスを安全にコンソールするためのWebサービスのことです。IAMを使用し、明確なルールを設け、IAMユーザーを制御するようにします。万が一のセキュリティ事故が発生した際のために、1つのIAMユーザーを複数人で共有することのないようにすることが大切です。

セキュリティグループの設定

EC2インスタンスに適用することができるセキュリティグループを設定します。それぞれのセキュリティグループにおいては、EC2インスタンスへのアクセスを許可を行うトラフィック規定のルールを設定することが可能です。さらに、セキュリティグループのルール設定はいつでも変更可能となっています。安心安全なセキュリティグループをきちんと設定することが大切です。

AMIルートデバイスのストレージタイプの確認

AMI(Amazon Machine Image)とは、ソフトウェア構成を記録したテンプレートのことです。AMIを介して、クラウド上で仮想サーバーとして実行されるAMIのコピーのインスタンスを起動することになります。

全てのAMIは、「Amazon EBS-Backed」または「Instance Store-Backed」のどちらかに分類されます。それぞれのストレージタイプの違い及び関連するデータの永続性をはじめ、バックアップ及びリカバリーの違いについて確認しておきましょう。

IPアドレスの設定

EC2における動的グローバルIPの特徴として、インスタンスを再起動することでIPアドレスが変わってしまうということが挙げられます。外部にサービスを公開する予定がある場合には、IPアドレスが変わることのないように、Elastic IPアドレスを使用することが大切です。

Elastic IPアドレスとは、アカウント毎に割り当て可能なパブリックIPアドレスのことです。インスタンスに一度割り当てたElastic IPアドレスは解除しない限りインスタンスに割り当てられたままなので便利です。

バックアップとリカバリーの手順を確認

定期的なバックアップを行うことができるように各機能を確認しておきましょう。さらに万が一の不具合時に備え、リカバリーの手順をしっかりと理解しておくことが大切です。

重要データの分散配置

これは、非常に稀なケースではありますが、1箇所のロケーションのみでインスタンスをホストしてしまっている場合、同一箇所のインスタンス全てに影響するような何らかの障害が発生してしまった際には、インスタンスが使用できなくなってしまいます。そうならないためにも、EC2及びRDS等を異なる場所に分配配置し、さらに同期を取っておくこと=Multi-AZ配置をしておくことが必要です。

まとめ

AWSサーバー構築にフォーカスして本記事では、AWSサーバー構築について概要をまとめ、初心者でもAWSサーバー構築について理解できるよう丁寧に解説致しました。

概要に触れただけですので、さらに詳しい説明は別の記事で致しますが、従来のサーバーと違い、クラウド上で構築できるAWSサーバーの魅力について伝わったのではないかと思います。これからサーバー構築をしようと考えている際には、簡単に構築することが可能なAWSサーバー構築をおすすめ致します。