3月末日、約2900人のお客様が遊びに来てくれました。

3月はベトナムに2週間ほど遊びに行ってきたのであまりブログは書けませんでしたが、無事右肩上がりですこしづつではありますが、ユニークユーザも増えているようです。みなさん、ありがとうございます。

201803

現在、約2900人くらいのユーザが1ヶ月に見に来ていただいているようですので、あと3倍くらいになれば1万人の読者企画も達成できそうです。伸び率が1ヶ月に、300人くらいなので、まだ1,2年はかかるのかもしれませんがマイペースでファンが増えてくれればなと。

junkhack_—_WordPress_com

ベトナム、また行きたいですね。ちょっと今度旅行記みたいなものを書いてみようかな。旅行記は何かと需要がありますからね。うまく魅力的な旅行記が書ければお客様も少しは増えるかもです。

IMG_20180320_101809

sao ビーチという所は、本当に海や浜が綺麗でした。またベトナム行きたいな~

Screenshot_2018-03-20-15-38-22

あと、やっぱり、連続企画モノのネタが人気のようで、特に9999円以下で3Dプリンターを作るプロジェクトのアクセス数が一番多いです。この企画は早めに再開しないとですね。

 

ということで、また!

広告

グーグル仮想マシンの2月請求

東京リージョンの、g1-small(vCPU x 1、メモリ 1.7 GB)SSD マシンの請求書がきました。

gcp201802

2月はなんだかんだ、夜勤であまり実作業が出来ていませんが、グーグルの仮想マシンの請求だけは来ました。電源を常にオンラインにしてあるだけで実運用はしていない状態となります。

無料分は3.2万あるのでこの状態で1年維持できることになりますが実際は、ネットワーク帯域を使うのでもっと短い期間が無料期間になると思われます。今日当たりから重い腰をあげて、ちょっとづつ前進していこうかなと。まずはアプリケーションを入れて、wordpress を動かしたいですね。

 

現在、Onda Xiaoma 21の12.5インチノートPCが到着したのでそれで遊んでいますので、それが終わったら手をつけようかなと。こっちのレビューが先になりそうですね。

2月末日でのページビュー状況。上向きました!

さぁ、2月も終わりですね。だんだん暖かくなってきました。

恒例の、1万人の読者を作る企画のページビュー報告です。今月は、少し上向き状況となっています。

201802

サイト訪問者は2500人を超えたようです。あと7500人の読者に恵まれますよう、あれこれ記事を書いていきたいと思います。

グーグルの仮想マシンに30GBのSSD追加して2週間の値段

今日は暖かかったように思いますが、みなさんのところはどうでしょうか?

さぁ、また楽しい週末になりましたよ。JunkHack は明日も休日出勤、お仕事なので明日の夜は浮かれています。最近の勤務は昼から終電間際までという感じで、通勤時の自転車が暖かくていい感じです。まぁ、帰りは冷えひえなんですが。年間距離も6000km を超えました。

ということで、明日出勤なので今日は少しだけブログを書いていこうかと。

■記事要約

・GCP 仮想マシン、30GBのSSD 追加で2週間動かしてみた結果、840円。1日65円くらい?

・ドメイン決定。junkhack.gpl.jp

・グーグルクラウドは、逆引きもちゃんとできる

 

■グーグルクラウドの仮想マシンで2週間動かしてみた

先週に30GB の SSD ディスクを追加してさらに料金を見てみたところ以下のようになりました。

2week

東京ゾーンで、g1-small(vCPU x 1、メモリ 1.7 GB)10GB SSD に39GB のSSD を追加した感じです。2week_JunkHackup

1日あたり65円くらいですかね。なんとか、1ヶ月2000円に収まるかどうかというところです。だいたい値段も見えてきましたので、明日は、アプリを入れてみようと思います。WordPress が動作するところまで寝るまでに動かしたいなと。

 

■ドメインも決定! junkhack.gpl.jp

あと、どんなドメインで運用しようかなと考えていたんですが、新規にドメイン取得するのも長年考えると維持費用も大変なので現在持っているドメイン、gpl.jp のサブドメインで運用することに落ち着きました。

この gpl.jp は googleApps っていう現在は、G Suite というのに付属していて当時は、アカウント数2000 個、現在は1000個を運用できます。今は、もう無償版はなく、新規提供も停止していますので昔からのユーザにだけ提供しています。なかなか貴重で、1つづつのアカウントには、もれなく 15GB のドライブ領域もあり、15000GB 分の容量が合計してあります。odrive を使って年度や用途分のドライブを使っていますが、まぁ一生使えそうな感じです。新規にドメインを取得してもエイリアスで運用もできますのでメールは自分でホスティングしなくてもいいので大変助かっています。今のところ、初期ユーザはそのまま運用でき、見捨てない方針なので google が好きな理由の1つでもあります。

現在は、apache でとりあえず動かしていますが、以下のURLで今仕込んでいるサイトも見れますのでお暇な方は見ていってください。

http://junkhack.gpl.jp/

JH_logo

あ、そうそう、グーグルクラウドって逆引きもちゃんと設定できるんです。

[root@junkhack ~]# dig -x 35.190.225.234

; <<>> DiG 9.9.4-RedHat-9.9.4-51.el7_4.2 <<>> -x 35.190.225.234
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54501
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;234.225.190.35.in-addr.arpa.    IN    PTR

;; ANSWER SECTION:
234.225.190.35.in-addr.arpa. 59    IN    PTR    junkhack.gpl.jp.

;; Query time: 186 msec
;; SERVER: 169.254.169.254#53(169.254.169.254)
;; WHEN: Fri Feb 09 19:11:53 UTC 2018
;; MSG SIZE  rcvd: 85

では、また明日。良い週末を。

グーグルクラウドの仮想マシン1週間の値段

さぁ、週末になりました。みなさんお仕事お疲れ様です。JunkHack の近況は一言で言えば「現場は最後の火事場に突入、阿鼻叫喚」といったところです。2時帰りでした。エンジニアは直感的に、この仕事は無理すれば間に合うか、間に合わないか肌感覚で判別していますが、この仕事は明らかに厳しそうです。立派だなと思うのは、上位の中間管理者のパワハラがあまりないことです。プロジェクトは破綻しているが、人間の品質は高い言えるでしょう。構造的な欠陥は、各プロジェクトチーム間を専任で連携する担当部署(者)がないことと、指揮命令系統の責任範囲がしっかり明確化されていないことです。

また、納品間際で客先要望で設計変更があること、また設計上の重大な欠陥が見つかり設計変更があること、そして重要なそれらを担当できる人間のタスクが許容を大幅に超えているという現実です。今後、これらの問題をどのようにカバーしていくかがこの仕事の1つの楽しみでもあります。ちなみに自分の位置は、末端作業者であり、途中からの設計引継ぎという感じで一部設計者です。

 

■記事の要約

さて、今回の話の要約は以下のようになります。

・グーグルクラウドの仮想マシンで1週間動かしてみた値段は、約180円で1日約26円

・WordPress を動かすため、OS,WEB,DB,PHP を動作させるためアプリは何がよいか?

・1台シングル構成でいくか、クラスタ構成でいくか?

・WEB は apache じゃなく nginx を採用する?

・DB は、mariadb を採用する?

・PHP は ver7 にするか、HHVM を採用するか検討

 

■グーグルクラウドの仮想マシンで1週間動かしてみた

1週間ほど、グーグルクラウド(Google Cloud Platform のこと)の東京ゾーンで、g1-small(vCPU x 1、メモリ 1.7 GB)10GB SSD を動かし続けてみました。基礎的な値段を知るためです。1week

28日は、リソースをごにょごにょと切り替えてベンチマークしていたので、値段はおおよそです。

gcp_JunkHackup

コンパネからの値段は以上の表示でした。予想より低い値段ですね。1ヶ月4週として、720円、1000円未満です。まぁ、ネットワーク負荷はまったくないですし、CPU もまったく使っていませんので1つの目安です。ちなみに、このインスタンスのベンチマークは前回計測しましたが、683 程度の Index Score です。ラズパイ3相当です。SSD ですがディスクへの I/O にもリソース制限があり、

Compute_Engine_-_JunkHackup

この IOPS がどのような条件かは不明ですが、300程度に絞られている感じです。まぁ、無料枠は、3.2万ほどありますからこのインスタンスを動かし続けても無料枠で1年はいけそうです。もし遅いなと思ったら、CPU コア数を増やすか、メモリを増やすかして調整してみることにします。

 

■WordPress を動かすアプリは何がよいか?

OSや、その上に乗っけるWEB のアプリケーションは何がよいか改めて検討してみることにします。

現在、仮で動かしているOS は CentOS7 ですが、グーグルクラウドのブートディスクで用意されているものは以下のようになります。

Compute_Engine_-_JunkHackup 2

Debian GNU/Linux 9 (stretch)が初期値ですが、RHEL6や RHEL7 も選べます。たぶん、インスタンスの値段があがると思いますが。また、Win系のOS も選べます。JunkHack 的には、お仕事でもなじみがある RHEL互換の CentOS を選ぶのがベストかなと思いますが、Debian系の OS を選べば、たとえばフェイスブックが開発している HHVM という PHP のようなエンジンがお手軽に使えるというメリットもあります。また、RHEL を選択し、開発アカウント上で挙動の確認をする(実運用はしない)という目的も達成できそうです。1からDVDブートなり USBブートなりして、OS を入れる方法があるかどうかはまだ不明です。

また、このイメージは、Cloud Launcher というポータルサイトから選ぶことも可能です。

GCP Cloud Launchar 仮想マシン

https://console.cloud.google.com/launcher/browse?filter=solution-type:vm

ここには、必要なアプリケーションの上にWordPress をプリインストールしてあるイメージもあります。お手軽に試してみるにはいいかもですが、他人が作ったものなので細部がわからないため、これはとりあえずパスです。

あと、手元の環境で作成したイメージを使って移行することも可能なはずで、この方法は次回以降検討したいと思います。大雑把な流れとしては、手元のバーチャルボックスで作成した各種OS環境をグーグル上で動作させる手順がわかればいろいろと応用が可能です。

 

■オンラインで追加DISKをつけてみた

あと、DISKの追加をオンライン(電源を切らずに)で出来るか確認しておきました。結果、オンラインで追加でき、IOPS は以下のようになりました。

・実行コマンド

wget http://www.winkey.jp/downloads/visit.php/fio-crystaldiskmark -O crystaldiskmark.fio
sed -i ‘s/tmp/home\/tmp/’ crystaldiskmark.fio
                  ^^^^^^^^テストしたいデバイスのあるパス
fio crystaldiskmark.fio | tee log
grep iops -B1 log

結果

sda(10GB SSD bootDISK) xfs

Seq-Read: (groupid=0, jobs=1): err= 0: pid=22249: Sat Feb  3 16:45:49 2018
  read : io=1024.0MB, bw=249246KB/s, iops=243, runt=  4207msec

Seq-Write: (groupid=1, jobs=1): err= 0: pid=22250: Sat Feb  3 16:45:49 2018
  write: io=1024.0MB, bw=104036KB/s, iops=101, runt= 10079msec

Rand-Read-512K: (groupid=2, jobs=1): err= 0: pid=22251: Sat Feb  3 16:45:49 2018
  read : io=1024.0MB, bw=37647KB/s, iops=73, runt= 27853msec

Rand-Write-512K: (groupid=3, jobs=1): err= 0: pid=22260: Sat Feb  3 16:45:49 2018
  write: io=1024.0MB, bw=104191KB/s, iops=203, runt= 10064msec

Rand-Read-4K: (groupid=4, jobs=1): err= 0: pid=22261: Sat Feb  3 16:45:49 2018
  read : io=458240KB, bw=7637.3KB/s, iops=1909, runt= 60001msec

Rand-Write-4K: (groupid=5, jobs=1): err= 0: pid=22270: Sat Feb  3 16:45:49 2018
  write: io=532956KB, bw=8882.5KB/s, iops=2220, runt= 60001msec

Rand-Read-4K-QD32: (groupid=6, jobs=1): err= 0: pid=22271: Sat Feb  3 16:45:49 2018
  read : io=391988KB, bw=6530.9KB/s, iops=1632, runt= 60021msec

Rand-Write-4K-QD32: (groupid=7, jobs=1): err= 0: pid=22280: Sat Feb  3 16:45:49 2018
  write: io=361704KB, bw=6026.2KB/s, iops=1506, runt= 60022msec

 

sdb (30GB SSD 追加DISK) ext4

Seq-Read: (groupid=0, jobs=1): err= 0: pid=22576: Sat Feb  3 17:15:26 2018
  read : io=1024.0MB, bw=250496KB/s, iops=244, runt=  4186msec

Seq-Write: (groupid=1, jobs=1): err= 0: pid=22577: Sat Feb  3 17:15:26 2018
  write: io=1024.0MB, bw=37378KB/s, iops=36, runt= 28053msec

Rand-Read-512K: (groupid=2, jobs=1): err= 0: pid=22580: Sat Feb  3 17:15:26 2018
  read : io=1024.0MB, bw=104900KB/s, iops=204, runt=  9996msec

Rand-Write-512K: (groupid=3, jobs=1): err= 0: pid=22581: Sat Feb  3 17:15:26 2018
  write: io=1024.0MB, bw=32532KB/s, iops=63, runt= 32232msec

Rand-Read-4K: (groupid=4, jobs=1): err= 0: pid=22589: Sat Feb  3 17:15:26 2018
  read : io=407976KB, bw=6799.5KB/s, iops=1699, runt= 60001msec

Rand-Write-4K: (groupid=5, jobs=1): err= 0: pid=22598: Sat Feb  3 17:15:26 2018
  write: io=226936KB, bw=3782.3KB/s, iops=945, runt= 60001msec

Rand-Read-4K-QD32: (groupid=6, jobs=1): err= 0: pid=22600: Sat Feb  3 17:15:26 2018
  read : io=660252KB, bw=11000KB/s, iops=2750, runt= 60022msec

Rand-Write-4K-QD32: (groupid=7, jobs=1): err= 0: pid=22613: Sat Feb  3 17:15:26 2018
  write: io=361552KB, bw=6023.7KB/s, iops=1505, runt= 60022msec

追加DISKの書き込みが遅いのは気になりますが、まぁ、もともと絞りこんであって遅いのでまぁどうでもいいです。まぁ、話はだいぶそれましたが、OSは、このまま centos7(kernel 3.10.0-693.17.1.el7.x86_64) で動かすことにします。

 

■PHP7 の変わりに HHVM を採用

次に検討するのは、WEB,DB,PHPを何にするかです。一応、centos 標準だと以下のようになります。

apache(httpd) 2.4.6 + mod_ssl

php 5.4.16

mariadb 5.5.56

今のリポジトリは以下のようになっています。

# yum repolist
::
repo id                                                repo name                                    
base/7/x86_64                                          CentOS-7 – Base                              
epel/x86_64                                            Extra Packages for Enterprise Linux 7 – x86_64
extras/7/x86_64                                        CentOS-7 – Extras                            
google-cloud-compute                                   Google Cloud Compute                         
google-cloud-sdk                                       Google Cloud SDK                             
updates/7/x86_64                                       CentOS-7 – Updates                           

一応、構想としては、WEB は apache じゃなく、nginx にして、DB は、MariaDB Galera Cluster で、PHP 相当は、HHVMにしようかという思いがあります。ずいぶん前ですが、ローカル環境に2台の構成で、LB経由で負荷テストをしましたが HHVM の速度が驚くほど速く感動した覚えがあります。今は、PHP7 がリリースされて速度は速くなったと聞きます。

以下にいい比較記事がありました。

HHVM vs PHP 7 – The Competition Gets Closer!

https://kinsta.com/blog/hhvm-vs-php-7/

グラフを見ると、PHP7 もほとんど同じ速度ですが、CPU は HHVM のほうが節約できそうです。HHVM で行こうかなと思います。DBは、mariadb 5.5 でもいいんですが、2台構成の wordpress クラスタに実験的に運用してみようと思っていますのでお手軽に同期ができるDBとして使おうと思います。

 

■まとめ

以下のような構想です。

・WEB nginx

・DB  MariaDB Galera Cluster

・HHVM

・Gluster File System(glusterfs-server)wp-content/uploads の共有

LBは使わず、とりあえずはDNSラウンドロビンにて2台の WordPress サーバでそれぞれ振り分けるという感じです。可用性という観点は、まず置いておいて、その一歩手前までやってみようと思います。

この構成で興味があるのは、MariaDB の Cluster は本当に、1台で更新すれば2台目に同期されるのか?や、GlusterFS は実運用上、問題点はないかなどです。更新者は一人なので、同時書き込みの心配はほぼ無用なので、多少のラグがあっても問題はないのですが、実際に構成してみて、動作を確かめてみたいです。

 

たかが、WordPress を動かすだけに os から選定し、アプリを選定したりするのは恐ろしく一般的ではないとは思いますが、こういうマニア向けの記事もどこかで需要があるかもしれません。

WordPress目的でのレンタルサーバの候補2つ

前々回くらいから、WordPress を運用するレンタルサーバ(自宅サーバやクラウドを含めて)なにが一番よいかを検討してるところです。

さて、グーグルのクラウドの無料枠ですが、とりあえずここで運用するのも1つの手ですが、前回の計算によれば転送量と満足するインスタンスのスピードとトータルコストが無料枠を超えたときにちょっと辛そうです。

 

今回の要点は以下です。

・2900円のwordpress.com のビジネスプランはプラグインのインストールが可能で無制限の容量とメンテナンスフリーが魅力

・初期費用なく、月500円から始められる wpX クラウドも魅力

・無料枠の3万を使い切るまで、グーグルクラウドで運用し、その後上記に引っ越すのが一番よさそう

 

他、なにかいい方法はないかなとあれこれ検討した結果、以下の2つの候補が有力になりそうです。

 

まず1つ目。

wordpress.com の有料プランです。

https://ja.wordpress.com/pricing/

 

WordPress_com_プラン___WordPress_com_ストア

これ長らく、独自のプラグインが入れ込めず候補から外れていましたが、なんか2017年くらいからプラグインも入れられるようになったみたいです。そして、何より無制限の容量は魅力的。インフラも、AWS上に構築してある冗長構成の WordPress 基幹インフラを利用するのでメンテナンスフリーがなにより魅力的です。2900円は、決して高くなくむしろ安いくらいだと思います。

 

とは言っても、まだ月刊4000PV 未満の当サイトにはもてあますスペックであります。月間150万PV 以上に人気が出てきたときには引越ししようかなと思いますが、それまでは以下のクラウドが初期費用がなく安く始めらて魅力的ですね。

wpX クラウド
https://www.wpx.ne.jp/cloud/

 

WordPress特化のレンタルサーバー&クラウドサービス_wpXサービス比較ページ

これは1ドメインのみ運用で、メールアカウントは付いていませんが WEB だけ運用するにはちょうどいいプランです。初期費用なく500円から運用できるので、現在の最有力候補です。シェルは付いていませんが、とりあえずまぁなんとかFTP で事足りるので今度の休みに本格的に検討してみようかと思います。

 

1.無料枠を使い切るまでグーグルクラウドの東京リージョンでがんばる。

2.無料枠を使い切れば、wpX クラウドに引っ越す

3.月間PVが、150万PV以上になれば、wordpress.com のビジネスプランに引っ越す

 

という、構想です。

 

値段は、500円からスタートして月額1000円のスペックを超えるところまでここでがんばり、それ以上人気が出そうならば、先のWordPress.com のビジネスプランに移行という計画です。まぁ、そんなに人気が出るサイトを作れるかわかりませんが、、、、

 

ということで、そもそもこのブログをどうやったら人気になるかという根本的な事を考えないといけませんね。次の次の課題はそこにあることはわかっているのですが。

GCP f1-micro の UnixBench

前回の続きです。

今回は、f1-micro(vCPU x 1、メモリ 0.6 GB)の基本性能を UnixBench で計測してみました。ゾーンは、東京(asia-northeast1-a)です。

メモリが0.6GB なので一応スワップを作っておきました。

# dd if=/dev/zero of=/swapfile bs=1M count=1024
# chmod 600 /swapfile
# mkswap /swapfile
# swapon /swapfile
# echo ‘/swapfile                                 swap                    swap    defaults        0 0’ >> /etc/fstab

junkhack_gpl_jp_—_142×50

うーん、これはちょっと遅すぎます。ラズパイや、オレンジパイより遅い。こんなんだったら、ラズパイやオレンジパイを自宅サーバにしたほうがいいです。なので、これは選択外。

まぁ、AWS の ti.micro でも260台しかでませんから、それと比べると健闘していると言っていいかもしれません。

参考

AWSの各リージョン・AZごとにti.microのUnixBenchを取ってみた – Qiita
https://qiita.com/kou_bacchus/items/4616dd0031b4809898f0

次、g1-small(vCPU x 1、メモリ 1.7 GB)を計測してみます。

1.7_junkhack_gpl_jp_—_142×50

さっきのより速いですが、これでもラズパイ相当です。うーんですね。

とりあえず、このインスタンスを動かし続けて基礎的な値段を見てみます。こうなると、この前買ったノートPCの SSD に同じOSを入れてベンチマークを計測したくなりますね。

 

あと、無料枠のこともだいぶ理解が深まりました。Always Free の使用制限 というところに詳しく書いてありました。

Always Free の使用制限
https://cloud.google.com/free/docs/always-free-usage-limits

今回利用するのは、仮想サーバのGoogle Compute Engineの部分。

Google Compute Engine
スケーラブルで高性能な仮想マシン

1 f1-micro インスタンス(1 か月あたり、バージニア州北部を除く米国リージョンのみ)
30 GB の HDD(期間合計)、5 GB のスナップショット(期間合計)
1 GB の北米から全リージョン宛て下りネットワーク(1 か月あたり、中国およびオーストラリアを除く)

ということです。つまり、東京リージョンはNGで、アメリカにある仮想サーバへの接続となるので応答速度が少し遅れるということですね。

DISK容量はとりあえず十分で、あとはネットワークが1GB ということです。1万人の読者となるとトラフィックは余裕で1GB を超えますので無料枠からはみ出ることが想定。すごく大雑把なボリューム感としては、ユニークユーザ数が1万人ということは、総PVは、約2倍から3倍。平均したページサイズは、画像が多いので約5MB くらいで、2万 x 5MB が下りトラフィックです。約100GB で、これにCDN(Content Delivery Network)などのキャッシュ効果が5割~8割程度の削減として、約50GB から 20GB です。平均ページ容量を半分にした場合でも、1万ユニークユーザで総PVが2万月にあれば、CDN利用で 10GB から 25GB くらいになります。

 

現在は、総PVが4000程度、ユニークユーザは2100人ほどです。WordPress.com のサーバからのトラフィックは上の条件にはめて単純に計算すると、月に約20GB ほど流れています。wordpress.com は、Photon というCDNを使っています。表示したHTML のソースに以下のようなものがあると思います。

<link rel=’dns-prefetch’ href=’//s2.wp.com’ />
<link rel=’dns-prefetch’ href=’//s0.wp.com’ />
<link rel=’dns-prefetch’ href=’//s1.wp.com’ />

Jetpack というプラグインがこれを付けています。が、無料のWordPress ブログではこれらをON,OFF する部分は見当たりませんでした。

独立したWordPress ならば、Jetpack プラグインの設定で、「画像と写真をスピードアップ」というのがあるようでここで ON,OFF できるようですが。

 

そういうことで、ぐーぐるのAlways Free 無料枠では、1万人の読者を支える基盤にはちょっと無理がありそうかなという感触がつかめました。

 

しかし、自宅IoT のデータをちょびちょびと溜め込むような低トラフィックであれば有効活用できそうだということもわかりました。他にも工夫次第でいろんな用途に使えますね。なにせ、OS の中をまるっきり好きなようにいじれるわけですから。しかも、グローバルIPが1つついていますしね。

 

さて、今月も月末ですので忘れないうちに、ページビューとサイト訪問者のグラフを貼り付けておきます。

Stats_‹_junkhack_—_WordPress_com

あまり代わり映えしませんが、これからも仕事が忙しくても何か更新するライフワークにしていきたいですね。