サーバー構築サービス
近年、自社や個人がコンピュータを用意するよりも、AWS(Amazon Web Services)やGCP(Google Cloud Platform)など、クラウド上で提供されるサービスを利用する機会が増えてきました。しかし、このようなサービスを使ったとしても、自分達で商品販売のページやユーザー管理のページを用意するのはちょっとハードルが高いと思われる方は多いでしょう。AWSやGCPでのサーバー構築に習熟した弊社では、そのような方々のために、
商品販売サンプルページ に示すような、クラウドサーバー構築サービスをご提供させて頂きますので、是非ご活用の程、よろしくお願いいたします。
これらページは、基本的にdjangoとpythonで構成されており、実際にユーザー登録をすることにより、メールアドレスと連携してユーザー情報を変更したり、パスワードを変更したりするなど、ユーザーの管理を楽に行うことができます。また、
stripe などの決済サービスを使えば、決済金額の3.6%の手数料を払うだけで、商品を販売することが可能になります。なお、用途に応じてトップページをカスタマイズすることは可能ですので、各サーバー構築サービスの「ユーザー登録・ログイン」ボタンから登録し、ご相談ください。
サーバー構築概要
構築するサーバーは、AWSであれば、OSとして安定したAmazon Linux2を使用し、Apacheのセキュリティの堅牢さを活用するため、ApacheのWSGI(Web Server Gateway Interface:ウィスキー)のデーモンモードを介てdjango(python)と連携して稼働します(サーバータイプA以外)。また、LAMP(Linux,Apache,MariaDB,php)に馴染まれた方も多いため、MariaDBを基本とし、phpもインストールしていますので、幅広い活用ができるでしょう。GCPでの対応、Ubunts22.04LTS、データベースの変更などにも対応可能ですので、このページ下の「ユーザー登録・ログイン」ボタンから登録して頂き、ご相談ください。以下、Amazon Linux2をAWSにおけるOSの代表例として説明します。
サーバータイプA構築サービス
いわゆるLAMP(Linux,Apache,MariaDB,php)構成であり、一台のEC2にLAMP環境を構築します。t2.microであれば、Amazonへ支払う料金が12ヶ月間無料でご利用いただけます。ファイルやデータベースのバックアップはありませんので、高度な信頼性が要求されるシステムには適していませんが、最近のクラウドの信頼性は高いため、コストを抑えたいスタートアップとしては十分でしょう。htmlの知識さえあれば爆速でサービスを開始することができます。phpとSQLの知識があれば、さらに高度なサービスを提供することも可能です。本サービスをご希望のお客様は、下記の「ユーザー登録・ログイン」ボタンからお入りください。ただ今多忙のため、納期は20営業日 とさせて頂きます。
サーバータイプAの構築価格: 48,000円(税込)
Linuxとしては、安定した稼働が期待できるamazon linux2がお勧めです。ご希望があれば、Ubuntu22.04LTSなどに変更することも可能です。
安定して稼働する最新のApacheをインストールします。2023年9月時点の最新バージョンはApache/2.4.57です。
初期のドメイン、サブドメイン数は、www.exanple.com、exanple.com、subdomain.exanple.comなど、合計5個以内でご指定ください。そのドメイン、サブドメインに対応するダミーのphpページを、/var/www/html(apacheの標準のwebディレクトリ)にご用意いたします。この際、商品販売サンプルページ の上部にあるような、折り畳み式のアコーディオン機能を標準装備しています(※サーバータイプAには商品販売ページは付属していません)。
ネームサーバーAmazon Route53であれば、弊社で設定することが可能ですので、希望するドメイン名、サブドメイン名をお知らせください(ご指定のドメイン名称が既存の場合には、変更を依頼することがありますのであらかじめご了承ください)。外部ネームサーバーを利用される場合は、ドメイン名、サブドメイン名が、構築するサーバーのIPアドレスを指すよう、お客様での対応をお願いします。
サーバーへの接続やファイル転送は、PuttyやWinSCPを使用してSSH(Secure Shell)で行います。インストール後は、SSH秘密鍵のダウンロード方法、PuttyやWinSCPの利用方法などをお知らせして、管理の移管を行いますので、お客様の方で管理をお願いします。
無料でSSL/TLS証明書を発行・更新できるLet's Encryptを使用してURLのSSL化を行います。SSL/TLS証明書の有効期間は3ヶ月ですが、タスクのスケジュール管理ツールcrontabを用いて、週に一度(指定がなければ日曜の午前0時)チェックを行い、残り1ヶ月を切った証明書があれば自動更新するよう設定します。
データベースとしてはMySQLと互換性があり、無料でご利用頂けるMariaDBがお勧めです。MariaDBにおける文字セットや文字エンコーディングの設定、文字列の照合の設定は下表の通りです。また、MariaDBの管理は、EC2にインストールしたphpMyAdminで行うことができます(提供して頂いたドメイン配下に設置します)。
そのOSでインストール可能な最新のphp環境をインストールします。2023年9月時点のamazon linux2におけるバージョンはPHP 8.2.9 (cli) です。MySQLデータベースに対する拡張モジュール(mysqli(MySQL Improved Extension)、mysqlnd(MySQL Native Driver))、マルチバイト(日本語)、グラフィックス(php-gd)などもインストールに含まれます。
商品販売サンプルページ に示すようなfavicon.ico(上部タブに表示されるicon:このページではinstagramから拝借している)をご用意ください。favicon.icoは、ご自分のサイトを他のサイトと明確に区別するためのiconです。
MariaDBの文字コードの設定
$ MariaDB [(none)]> show variables like "chara%"; #文字セットや文字エンコーディングの設定
+--------------------------+------------------------------+
| Variable_name | Value |
+--------------------------+------------------------------+
| character_set_client | utf8mb4 |
| character_set_connection | utf8mb4 |
| character_set_database | utf8mb4 |
| character_set_filesystem | binary |
| character_set_results | utf8mb4 |
| character_set_server | utf8mb4 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mariadb/charsets/ |
+--------------------------+------------------------------+
MariaDB [(none)]> show variables like 'coll%'; #文字列の照合(collation)に関連する設定
+----------------------+--------------------+
| Variable_name | Value |
+----------------------+--------------------+
| collation_connection | utf8mb4_general_ci |
| collation_database | utf8mb4_general_ci |
| collation_server | utf8mb4_general_ci |
+----------------------+--------------------+
サーバータイプAおよびサーバータイプB
サーバータイプB構築サービス
サーバータイプAの環境に、pythonとdjangoを追加したシステムです。Apacheのセキュリティの堅牢さを維持しながら、django(python)の利便性を活用するため、ApacheのWSGI(Web Server Gateway Interface:ウィスキー)のデーモンモードを介てdjangoと連携して稼働します。サーバータイプAのLAMP(Linux,Apache,MariaDB,php)を使用したサイトのみならず、
stripe などの決済サービスと連携して、簡単に
商品販売サンプルページ に示すような商品販売サイトを構築することができます。
商品販売サンプルページ にて、実際にユーザー登録をすることにより、ユーザー情報の変更やパスワード変更機能をご確認ください。このサーバータイプBも、タイプAと同様、t2.microであれば、Amazonへ支払う料金が12ヶ月間無料でご利用いただけます。ファイルやデータベースのバックアップはありませんので、高度な信頼性が要求されるシステムには適していませんが、最近のクラウドの信頼性は高いため、コストを抑えたいスタートアップには適していますが、万一に備えてローカルにバックアップを取っておきましょう。本サービスをご希望のお客様は、下記の「ユーザー登録・ログイン」ボタンからお入りください。ただ今多忙のため、
納期は20営業日 とさせて頂きます。
サーバータイプBの構築価格: 78,000円(税込)
サーバータイプAの環境に加え、そのOSでインストール可能な最新のpythonとdjangoをインストールします。2023年9月時点のpythonのバージョンは3.9.17、djangoのバージョンは4.2.4です。
ご用意可能なdjangoのプロジェクトは1個であり、/home/ec2-userまたは、/var/www/html(apacheの標準のwebディレクトリ)に作成します。セキュリティー上は/home/ec2-userに構築することをお勧めします。ご指定頂いた、ドメイン、サブドメインの中の1個のドメインにdjangoのプロジェクトのページを割り当てます。
ユーザー登録ページ をご用意するため、データベースに登録するユーザー情報(会社名、氏名、メールアドレス、生年月日、パスワードなど)をご指定ください。
ユーザー登録は、登録メールアドレスへのメール送信して承認するプロセスが必須ですが、メール送信はAWSのSES(Simple Email Service: 使用開始後の最初の 12 か月間は、毎月最大 3,000 件のメッセージ料金が無料)を使用しますので、あらかじめご了解ください。また、メール送信元は、デフォルトで、no-reply@指定ドメイン名となりますが、変更可能ですのでご要望があればお知らせください。
メール送信、ユーザー情報更新、パスワード再設定、ユーザー削除、ログアウトの機能が標準装備されています。この中で、ユーザー情報更新、パスワード再設定、ユーザー削除は、ユーザーのメールアドレスへのメール送信を伴います。
決済サービスstripe を組み込むことは可能ですが、別料金になります。ご要望があればお知らせください。
サーバータイプC構築サービス
サーバータイプBの環境に冗長性を持たせつつも、比較的安価なランニングコストを実現したモデルです。EC2 からインターネットへのデータ転送が100GB/月まで無料で提供されていますので、これ以内のデータ転送量でt2.microインスタンス(実体)であれば、月1,500円程度で利用可能です(しかも最初の12ヶ月は無料)。さらに、EC2間のデータ転送は、同じリージョンである限り無料ですので、2つのEC2インスタンスを利用しても月3,000円程度で利用可能です。ここで、データ転送無料枠の100GB/月ですが、ページサイズを100kBとすれば、1日あたり3.3万PV(ページビュー)に該当します。この程度の金額で冗長性を持たせることができれば、大多数の方が満足できるのではないでしょうか?
サーバータイプC
上図に示す通り、AWSの異なるゾーンにEC2インスタンスを2つ配置し、それぞれデータベース(図ではMariaDB)をインストールしてレプリケーション(複製)を行います。そして、どちらかをマスターとし、もう一方をスレーブとします。マスター側は書き込みも読み込みもできますが、スレーブ側はマスターの複製となりますので、基本的に書き込み禁止で運用し、マスターで更新された情報のみ自動更新されます。EC2からは、マスターもスレーブも読み込むことができますので、CPUの稼働状況を見ながら、WEBサイトごとにどちらから読み込むかを調整すれば、負荷を分散することも可能です。本サービスをご希望のお客様は、下記の「ユーザー登録・ログイン」ボタンからお入りください。ただ今多忙のため、納期は20営業日 とさせて頂きます。
サーバータイプCの構築価格: 98,000円(税込)
マスター、スレーブで別々のドメインのサブディレクトリにインストールしたphpMyAdminでMariaDBの管理を行うことができます。
図のap-northeast-1aゾーンに不具合があった場合、ap-northeast-1dゾーン経由でウェブサイトにアクセスすることも可能ですが、この検証は行いません(その必要がある場合は、お客様の方で実施願います)。
サーバータイプD構築サービス
AWSのRDS(Relational Database Service)を使用した堅牢なシステムです。RDSは、マルチAZ(Multi-Availability Zone)で運用することにより、障害発生時に自動的に待機DBに切り替えるフェイルオーバーが行われるため、高可用性と耐障害性を向上させたデータベース管理の手間が不要なシステムです。RDSは、その機能を考えれば割安ですが、DBタイプに応じた基本料金、データ量に比例するストレージ料金、データ送信料金がかかりますので、サーバータイプCに比較すると3倍程度の費用がかかります。本サービスをご希望のお客様は、下記の「ユーザー登録・ログイン」ボタンからお入りください。ただ今多忙のため、納期は20営業日 とさせて頂きます。
サーバータイプD
サーバータイプDの構築価格: 98,000円(税込)
EC2にインストールしたphpMyAdminでRDSの管理を行うことができます(MariaDBの場合)。
Elastic Load Balancer(ELB)を使用すれば、複数のEC2インスタンス間でのトラフィックの分散や単一のAZ障害に対応可能ですが、この対応はサービスの対象外とさせて頂きます。