Category Archives: tech

さくらのVPSを自宅サーバ(KVM)へ移植

数年前のVPS全盛期な頃に、さくらやGMOなどで幾つかサーバを借りて運用を始めた。それ以前の専用物理サーバレンタルに比べれば非常に安価だったので、幾つものサーバを作り易かった。しかし、最近のパブリッククラウドにその機能を移植したことによって、私のVPSたちはその役目を終わる事になった。... 続きを読む

wordpress マルチサイト化 別ドメイン編

前回、検証機でのマルチサイト化に成功したので、同じ設定を本番機に適用する。その上で、サブドメインによるマルチサイトを別ドメインによる複数ドメインのマルチサイトに切り替える。稼働中のサーバに対して変更を実施する場合は、変更適用後に現行サービスの復帰を最優先する。検証機でマルチサイト化後に現状復帰のため必要だった作業は以下。... 続きを読む

wordpress マルチサイト化 サブドメイン編

久々にwordpressネタを。とある事情でもう1つサイトを作る必要が出てきた。別に何で作ってもよかったんだけど、最近はすっかりwordpressを使い込み始めているし、環境も揃っているから、wordpressでささっと作ってみる事にした。当初は律儀にもう1つwordpress環境を作るつもりだったけど、コードの二重修正とか両者の運用的な同期とか手間の方が大きそうなので、マルチインスタンス的なことが出来ないか調べてみた。... 続きを読む

DBサーバ 比較 MySQL vs MariaDB

人気のRDBであるMySQLが方針の問題でMariaDBと分かれた形で開発が進んでいる。今回構築しようとしている新環境で両方使うというのは出来れば避けたいので、どちらを利用するか選定する必要がある。自宅環境はともかく問題はGMOクラウド環境で内部通信の品質が期待できない点をどうするかが課題。... 続きを読む

BIND+MyDNS 構成 再考

何年も前の記事で、BINDとMyDNSの連携についてまとめたことがあった。その記事が未だに参照される事が多いので、今回は現在のDNS周りの考え方を整理しておく。結論から言うと、以前と考え方は大分変わり、BIND+MyDNSの構成は既にやめて、BIND単体での運用に切り替えている。MyDNSをコンポーネントから外した理由は幾つかあるのだが、最も大きな理由がオープンリゾルバの問題だ。数年前にオープンリゾルバの脆弱性を利用して悪質な攻撃の踏み台にされてしまう問題が起きた。それ以降リゾルバの利用に対し制限をかけて最低限の範囲でのみ使える設定に変更した。... 続きを読む

wordpress チューニング (6) nginx編

長々と続けてきた、wordpressチューニング。当初3秒だった処理速度も前回の改善で300msec前後と10倍ほどの高速化に至った。あと残されている改善余地はwebサーバくらいなので今回はnginxを見ていく。webサーバのチューニングにおいて、httpdそのものの処理速度はあまり問題にならないので、通信速度についての改善を考えてみる。nginxのレベルで通信速度をチューニングするとなると、最初に思いつくのはHTMLやcss等のテキストコンテンツの圧縮。設定はそれほど難しくなくnginx.confに以下のような設定を追加する。... 続きを読む

wordpress チューニング (5) plugin編

前回までで、当初3秒だったトップページの表示は400msec前後まで改善した。今回はwordpressのプラグインで処理速度を改善できないか見ていく。クラウド環境の場合、リモートのDB通信がボトルネックになることはわかっているので、出来ればwordpressのロジック内でDBの値をキャッシュ出来ると望ましい。reverse proxy等でページそのものをキャッシュする事も同じような効果を得られるが、その場合はログイン時の出し分けなどが難しくなってしまうことになる。... 続きを読む

wordpress チューニング (4) php編

前回、php-fpmということでサーバプロセスを中心に見てみたが、今回はphpそのものについてのチューニングを考える。今更だけど、phpは仕事で扱った事ないので基本的には門外漢。適当にぐぐってみたところ、opcacheという機能によるチューニングが筋よさそう。opcacheはphp5.5から使えるようなので、現在のphp5.4を一旦消し去って、remiリポジトリからopcacheも加えた形でphp5.5を入れ直す。... 続きを読む

wordpress チューニング (3) php-fpm編

前回のmysql編に続き、今回はphp-fpmを見ていく。apache時代はmod_phpもあったが、nginxの場合はphp-fpmを使う事になる。まあ、mod_php使った場合のリソースのばらつきもひどい有様だったので、リソースの効率的な再利用という意味でphp-fpmの選択は順当と考えている。php-fpmの設定はほぼデフォルトのままだったので改善余地がないか探る。... 続きを読む

wordpress チューニング (2) mysql編

前回のOS編はほぼ改善なしで、相変わらずトップページが3秒かかる状態。早速今回はDB周りで改善余地がないかを見ていこうと思う。まずDBがローカルかリモートかで変化するか確認したところ、mysqlをwordpressが動いているサーバと一緒にするだけで、処理時間が1秒超縮まり、2秒弱で処理できるようになった。もともとクラウドの内部通信は品質低いと思っていたが、これほどとは。。。... 続きを読む

wordpress チューニング (1) OS編

wordpressを自宅環境からクラウド環境に移設した。クラウド上でwordpressを本番稼働させながら、諸々の整備を進めているため、わりと頻繁にchef-clientを実行したりしているのだが、その際のHTTPレスポンスが著しく劣化しているような気がしていた。実際、chef-clientしつつブラウザで触ってみると、ほぼレスポンスできてないに等しい状態が数分続く事になっている(chefの処理も遅い)。... 続きを読む

DLNAサーバ 比較 mediatomb vs minidlna

ファイルサーバ(samba)を自前で用意しているため、DLNAサーバも自分で立てる必要がある。今まではDLNAサーバにmediatombを使って何とかやりくりしてきた。このツールはとにかく文字コードに対してセンシティブで運用が大変。ファイルシステムをUTF8にしてしまえば何て事はないのかもしれないが、移行前のファイルサーバは歴史が古くEUCだったため、とにかく苦労した。... 続きを読む

ひかりTV IPv6問題 スマートスイッチ対応

後日、問題が発覚したのでこちらを参照下さい(2016年4月追記)

前回の復習から。ひかりTVの放送波はIPv6 multicastを使って転送されてくるため、MLDスヌーピングに対応したスイッチを使わないと全ノードにbroadcastされる。実質的な性能影響を受けるのは、おそらく無線LAN機器くらいなので、普通に使う分にはそこさえ気を付ければ問題はないかもしれない。ひかり電話用ルータのようにNTTからレンタルしているブロードバンドルータは
MLDスヌーピングに対応している可能性がある(我が家はそうだった)。このルータに直結するような形でひかりTVチューナー(st3200)を扱うのであれば問題はない。... 続きを読む

Count per Dayのカウントを日本のみに

その後も必要に応じてちょこちょこwordpressのプラグインを追加している。それなりに作り直すとやはり気になるのがPVで、自分について言えばアクセスログでも確認できるんだけど、やはりカウンター的なものを設置したくなる。いろいろ調べてみた結果、見た目も含めて選んだのがCount per Day。自分の場合wordpressの運用は初めてではないので、何となく前も使ってたような。閉鎖する前に使っていたプラグインのリストをメモっておけばよかったな。... 続きを読む

raid運用の変遷

ファイルサーバやコンテンツサーバを出来合いのものを使うのが世の中の流れだが、以前、tera stationでデータロストの危機に陥った自分としては、ファイルサーバは絶対に自前で管理したい。tera stationの危機というのは、ディスク障害でなくマザーボード障害が起きてしまい、修理には関西への配送が必要な上、問題ない筈のディスクも搭載したまま送らねばならなかった。... 続きを読む

ひかりTV IPv6問題

前回、コスト削減の観点でスカパー光から移行したひかりTV。サービスそのものには満足しているんだけど、導入初日からネットワーク問題が発生した。ひかりTVチューナーst-3200のセットアップは簡単で、電源入れて手近なスイッチにLANケーブルを接続するだけ。起動して幾つかの設定を済ませると、すぐにCS放送を視聴できるようになった。... 続きを読む

GMOクラウドALTUS lxcの利用

前回、GMOクラウドにてcentos6もcentos7も作れるようになったので、今度はその仮想サーバ上でlxcが使えるか検証してみた。rpmでinstallしてlxcコンテナを作成、問題は外部との通信が行えるかどうかだ。GMOクラウドでは、申請すればホストと同じセグメントのprivate IPをもらう事ができる。理想は追加したIPをブリッジ接続した内部コンテナにアサインして外部と通信させる事。... 続きを読む

GMOクラウドALTUS kickstart install

前回、適当なテンプレートで1ノード作成して、外からsshできるようにした。次は好きなOSをkickstartなりで自動インストールしてsetupを進めていく。標準のOSテンプレートやISOだとcentos6系までしかないので、centos7を使いたければ自分で用意するしかない。GMOクラウドALTUSはcitrixのcloudstackがベースとなっているので仮想環境にxenを使っており、自力でOSをインストールする場合はxs-toolsというxen用のツールを入れる必要がある。さらっと見た限りcentos7用のツールはなさそうなので、centos7はNGかもしれない。管理コンソール『OSの種類』プルダウンメニューにはcentos7の項目があるからいいのかな。... 続きを読む

パブリック クラウド 比較 GMO vs IDCF vs NTTCom

個人的な月次ランニングコスト・チューニングのためにVPSの運用も見直した。今回からは柔軟性を上げるために内部通信可能な複数台での運用可否を重視したい。また、外部環境にスペックは求めないので、低スペックでもよいから1ノードが安価なこと。そうすると必然的に選択肢たりうるのはパブリッククラウド環境である。自宅環境との親和性を高めるためにもcentos7, lxc, vpn辺りが使えると尚よい。格安スペックを用意しているサービスは以下の3つ。... 続きを読む

コンテナ 比較 docker vs lxc

10年振りに新サーバを買ったので、自宅環境の設計を検討する。chefに代表される構成管理ツールの充実でゼロからの再構築が容易になった。その一方で物理サーバやKVM等の仮想サーバだと再構築の検証が重い。それ以外にも個人用途の貧弱なサーバの場合、KVMによるリソースの分断は管理的に面倒だったり、ノード数の制限が付きまとってしまう。... 続きを読む