1.WordPress 【GCP ロードバランサー】設定の目次
「tokyo2020unofficial.com」というサイトで、2020年4月16日から書き始めた記事です。外国人向けに作ろうとしているサイトですので、設定方法は「投票2020」に移植し更新をしていきます。
「Google Cloud Platform」で「WordPress」を利用しています。
GCPのロードバランサーを利用した「tokyo2020unofficial.com」の設定です。
ロードバランサーを利用していない「投票2020」の設定はこちらの目次です。
ロードバランサーはランニングコストが高いので一時休止しています。気分次第で記事は更新していきます。
ニッチな価値
読み飛ばしていい部分です。
Google のサーバー GCP で WordPress を個人で利用しています。素人でエンジニアではありませんので、間違ったことも書いてしまうかもしれません。その際には、ご指摘頂けると助かります。
「Google Cloud Platform」をある程度ですが、利用できるまでになってきました。GCPでロードバランサーを利用してきて感じたことがあります。「ニッチな部分なんじゃないか」ということです。通常は2通りが主流だと思います。
大企業では、「WordPressを利用していないけれど、ロードバランサーでオートスケール」していると思います。
中小企業では、「WordPressを利用しているけれど、ロードバランサーでオートスケールしていない」と思います。
ゆえに、
「WordPressを利用していて、ロードバランサーでオートスケールしている」企業や個人はあまり事例がないだろうと思います。個人では断片的な機能の紹介はありますが、実運用している人を見たことがありません。
それこそ企業で生業にしている人はあまり公開しませんし、個人ではこの規模感を必要としません。そのニッチな価値があるかなと。
2.GCP ロードバランサー 26個のVMインスタンス
「WordPress」を世界中のサーバーでロードバランスし、オートスケールさせる方法を書いていきます。
26 instance = 1 admin + ( 5 region x 5 instance )
これをテストして動作確認しました。
1 instance = 1 WordPress と考えてもらえるとわかりやすいです。
26インスタンスはあくまでもテストであって、さらに、自動スケーリングさせることが可能です。
番外編もありますが、すべて運用しているものです。
下記の図が実運用しているイメージです。赤枠の第1回から始まります。
GCP 26 instance = 1 admin + ( 5 region x 5 instance ) でテストした時です。
これを行うまでの道のりを綴ります。何百回か色々な設定の組み合わせで試した結果です。「国内のサーバーで WordPress」を利用するにあたっても、参考になれば幸いです。
Google 公式 : Cloud Load Balancing の概要

3.利用しているサービス一覧
3.1 Google Compute Engine
- Cloud HTTP Load Balancer – ロードバランサー – 負荷分散
- Auto Scaling – オートスケーリング – 自動スケール
- Google Cloud CDN – Googleコンテンツデリバリーネットワーク
- Google Cloud Storage – Googleクラウドストレージ
- Google Maps – 地図
- Google Cloud SQL – 試しましたが、個人で利用するには高コストです。現在は使用していません。
- Debian 9 – 他のOS を選択することもできましたが、Google社内で使用しているOSが「Debian」らしいので選択しました。社内で使用しているOSがきめ細やかになるのは当然だと思ったからです。
- Apache 2.4 – 自動的に利用しています。
3.2 WordPress テーマ
3.3 WordPress Plugin – プラグイン一覧
すべて利用しているプラグインです。
- AddToAny Share Buttons
- Broken Link Checker
- Category Order and Taxonomy Terms Order
- Custom Permalinks
- Easy FancyBox
- Edit Author Slug
- EWWW Image Optimizer
- Featured Video Plus
- Google Maps Easy
- Google XML Sitemaps
- Media Library Folders for WordPress
- Responsive Menu
- Simple Custom Post Order
- Simple Page Ordering
- WordPress Google Translate
- WP Fastest Cache
- WP Multibyte Patch
- WP-Optimize – Clean, Compress, Cache(リビジョンを消去時の一時的利用)
- WP-Stateless
- WPS Hide Login
- Yoast Duplicate Post
環境
- 2020年9月15日:
環境:Debian 9 PHP 7.4.4 Apache 2.4.25 MySQL 8.0 Cocoon
4.SNS関連
Facebook – フェイスブック
- Facebook Comments Social Plugin – Facebookコメントプラグイン
- これはスパム対策と同時に、公式・非公式、それぞれに関係なく、しっかりした情報源になるからです。
Pinterest – ピンタレスト
- Pinterestは、Instagramより、Twitterより、リアルタイムとしては情報が遅いと思います。
- ですが、フォルダは人ではなくて、特定のカテゴリーです。Instagram、YouTube、Twitter、などの Social media 「SNS」からピンしてわかりやすくするために利用しています。「Instagramが、99%」。「YouTubeとTwitterが、1%」。この3つに限定しているのは、情報源にアプローチできるからです。
Instagram – インスタグラム
- Instagramは、Twitterより少し遅いリアルタイム。フォルダは人。視覚的にわかりやすいです。
- 「@tokyo2020unofficial」は外国人が日本のものを探しやすくするためです。
YouTube – ユーチューブ
- YouTubeは、主に埋込動画として利用しています。
Twitter – ツイッター
- Twitterは、たまにツイートします。
「Vimeo」や「GIPHY」
- 今後、利用していくことになるかもしれません。
5.世界中にサーバーを置く理由について
「tokyo2020unofficial.com」は、「独自ドメイン」「サーバー」など「Google」に統一してサービスを利用しています。いくつか理由がありますが、絶対条件がありました。
「東京オリンピックがあるから世界中にサーバーを置く。」それだけです。(延期になりましたが…)
世界中にサーバーを置く必要がなければ、「エックスサーバー」「さくらのインターネット」「ロリポップ」など日本国内にも良いサービスがあると思います。ドメインについても「お名前.com」「さくらのドメイン」「エックスドメイン」などでサーバーと統一でき、使い勝手も良さそうな印象があります。
オリンピックという世界大会
- 2020年に東京オリンピック
こんな順を追っていければ理想的じゃないかと勝手に思ってます。
- 外国人が一番日本に注目する
- 日本に興味を持った外国人がアクセスしやすくなる。
- アクセスしてきた外国人が日本に行ってみたいと思ってもらう。
- 日本にお越し頂いた時に同一の画面を見て理解できる。
- 日本に来て良かったと納得してもらう。
- 日本を離れてなお、楽しかったと思いを巡らせてもらう。
実現したいと思うこと。
- これが見たい
- これが食べたい
- これが飲みたい
- この温泉に入りたい
実現できていないこと。
「行きたいところは決まったんだけど、ついでに近くにいいところないかな。」というのを事前に調べられたらいいなと。
旅行業界は「旅行アプリ」「移動アプリ」「予約アプリ」など、アプリケーションがベースになっていて、一つ一つは便利です。
ところが、私も含め、「旅行前」「旅行中」、「日本のどこに何があるのか」を「分かりやすく調べることができるサイト」って、ないよなと感じている人は多いと思います。これを解決する手段があったらいいなと。これが実現できていないことです。
ということで、私は地理的な観点から運営すると決めていて、「Google Maps」を多用するので「Googleで世界中にサーバーを置くこと」を選択しました。
- ブラウザベース
- 日本のどこに何があるのか
- 多数の場所をブックマーク
- 手軽にアクセス
こんな手段を得たら、実現できていないことが解決できると考えています。
他にも、世界中にサーバーを置くための候補として、「Google GCP」「Amazon AWS」「Microsoft Azure」この3つを比較しました。「Microsoft」は敷居が高く外しました。「Amazon」なら沢山の例がウェブサイトにあるので「Google」と悩みました。
また、「Google」の成り立ちは、「検索」から始まり、これからもユーザーにとって利用しやすいサービスを提供していくことでしょう。「Google Maps」もあるので、地理的なサイトとは親和性が高くなります。さらに、設定関係では統一すると楽なんじゃないかなと考えて最終的に「Google GCP」を選択しました。
【コメント】 ※「メールアドレス不要」