WordPressでサイトを運用する際、小規模事業者や個人開発者はレンタルサーバーを活用することになるかと思いますが、サイトの規模や事業規模が拡大するにつれてオンプレミスやクラウド環境で専用サーバーを使用することになるかと思います。
また、エンジニアの方が大規模サーバーの運用で必要になる技術情報を記事にまとめて情報を発信します。
【HW】データセンターで使用するサーバーについて
サーバーエンジニアは、データセンターに置かれているサーバーのメンテナンスや、新規構築・更改作業を行います。
具体的にはDELLのPowerEdgeやHPEのProLiantシリーズなどのサーバーの情報を発信します。
DELL PowerEdge
DELL PowerEdgeの実機を紹介します。
【OS】サーバーで使われるOS、Linux
私たちが普段生活で使うパソコンはWindowsやMacOSが主流です。データセンターで使われるサーバーのOSはLinuxが主流です。LinuxにもUbuntuやRed Hat Enterprise Linuxなどのディストリビューションと呼ばれる種類があります。
特に、IBM傘下にあるRed Hat社が提供しているRed Hat Enterprise Linuxは、多くの大規模サーバーで使われているLinuxです。
当サイトではLinuxに関する情報をまとめて発信します。
【DB】データベースサーバーの使用
大規模サーバー、個人開発で使うサーバーを問わず、サーバーを運用する上で「データベース」の存在とは縁を切りたくとも切れません。データベースサーバーをWebサーバーと分ける理由は、性能・可用性・セキュリティ・運用性を向上させるためです。
データベース技術に関する詳細は以下の記事でまとめています。
データベースサーバーをNGINXやApache、PHP-FPMがインストールされているサーバーと分けて運用する主な理由は次のとおりです。
パフォーマンスの向上
Webサーバーとデータベースサーバーでは負荷の種類が異なります。
- Webサーバー:HTTPリクエスト処理、PHP実行などCPU負荷が多い
- データベースサーバー:SQL実行、キャッシュ、ディスクI/O、メモリ使用量が多い
同じサーバーにすると、お互いにCPUやメモリ、ディスクI/Oを奪い合います。
例えばWordPressでアクセスが集中すると、
- PHPがCPUを消費
- MySQLがディスクI/Oを消費
となり、両方が遅くなることがあります。
スケールしやすい
データベースサーバーに分けることで、サーバーへのアクセスが増えた際にサーバーのスペックを上げる、スケールアウト、スケールアップがしやすく苦なります。
また、WEBサーバーとデータベースサーバーでどちらの負荷が大きかに合わせて、メンテナンスするサーバーを分けることが可能です。
- Webサーバーだけ増やす
- データベースはそのまま
バックアップ・保守などの運用が容易
DBサーバーだけ停止してメンテナンスしたり、
- スナップショット
- レプリケーション
- バックアップ
などを管理しやすくなります。
データベース専用にサーバーを最適化ができる
データベースサーバーに対してのみ、
- メモリを大量に搭載
- 高速SSD/NVMe
- MySQLのチューニング
など、データベース向けの設定に特化できます。
一方、WebサーバーはCPU性能やPHP実行性能を重視できます。
【DB】大規模サーバー(データセンター)で使われるデータベース、Oracle Database
Oracle Databaseの詳細を以下の記事でまとめています。
【DB】WordPress等で使用するMySQL(MariaDB)の概要
WordPress等で使用するデータベース、MySQL・MariaDBの詳細を以下の記事でまとめています。
【NW】サーバーとセットでネットワーク機器(主にCisco社の製品)が使用される
ネットワーク機器・ネットワークに関する技術については以下の記事で詳細をまとめています。
【NW】エンジニアにとってはネットワーク技術とサーバー(主にLinux)に関する技術はセットで必要
サーバーでは、LinuxがOSとして使われます。Linuxの詳細については以下の記事でまとめています。
【MW】NGINX/ApacheなどのWEBサーバーソフトについて
ブラウザからサーバーにアクセスした時にWEBページの表示をさせるには、WEBサーバーソフトをサーバーにインストールしてサーバー上でWEBサーバーソフトを起動させます。WEBサーバーソフトの詳細は以下の記事でまとめています。
【MW】PHP-FPMの概要とセットアップ
PHP-FPM(FastCGI Process Manager)の詳細は以下の記事でまとめています。
【MW】Zabbixによるサーバー・ネットワーク機器の監視
Zabbixはサーバーやネットワーク機器の監視を行うことができるミドルウェアです。
Zabbixの詳細については以下の記事でまとめています。
【MW】Splunkによるログ収集
SplunkはCiscoが提供しているログの収集・監視ツールです。
【IaC】Ansible(アンシブル)を使用したサーバーの環境構築・管理運用
Ansible(アンシブル)に関する詳細は以下の記事でまとめています。








