本ブログのプラットフォームであるAWSを移行しました

背景

無料枠が1年経って終了したので、AWSアカウントを刷新してリザーブドインスタンスに切り替えた。

EC2は2ノード。

片方はubuntuでmastodonインスタンス。※ https://co-mastdn.ga

もう片方はcentosでwordpressインスタンス(kusanagi、PHP-FPM、nginx)だ。※このブログ。

旧AWSアカウントから新AWSアカウントへの移行手順

※ダウンタイムがあります。

事前作業

1.新AWSアカウントを作成し、Billing Management Consoleにてアカウント IDをメモっておく

旧AWS作業

1.EC2のイメージの作成からAMIイメージを作成し、新AWSアカウントからアクセスできるように権限を付与する(AMIイメージを選択してイメージパーミッションの変更から権限付与できる)

新AWS作業

1.EC2のリザーブドインスタンスの画面で、クラス、お支払方法などで絞り込み、対象のリージョンとタイプに気を付けて購入する。(取り消せないので注意!)

2.AMIの一覧でプライベートイメージの中から該当AMIイメージを選択して作成を実行する

3.EC2の作成作業時に、購入済みのリザーブドインスタンスと同じリージョンとタイプを選択し、ストレージ、セキュリティグループ、タグなど適宜設定していく。

4.起動したらpemキーなどでSSHログインできるか確認し、初期セットアップを施す。※SSHポートに注意。

5.Route53にて、ドメインなども新AWS側に移管する。※NSレコードだけで良いケースもある。旧AWSに置いたままでも可能なケースも。

6.PHPやMYSQLなど起動していなければならないプロセスを確認する。

[centos@ip-xx-xx-xx-xx ~]$ ps -ef | grep php
root 900 1 0 13:58 ? 00:00:00 php-fpm: master process (/etc/php7-fpm.conf)
httpd 927 900 0 13:58 ? 00:00:01 php-fpm: pool www
httpd 928 900 0 13:58 ? 00:00:13 php-fpm: pool www
httpd 929 900 0 13:58 ? 00:00:01 php-fpm: pool www
httpd 931 900 0 13:58 ? 00:00:01 php-fpm: pool www
httpd 932 900 0 13:58 ? 00:00:01 php-fpm: pool www
httpd 933 900 0 13:58 ? 00:00:00 php-fpm: pool www
httpd 934 900 0 13:58 ? 00:00:02 php-fpm: pool www
httpd 935 900 0 13:58 ? 00:00:01 php-fpm: pool www
httpd 942 900 0 13:58 ? 00:00:00 php-fpm: pool www
httpd 943 900 0 13:58 ? 00:00:00 php-fpm: pool www
centos 3706 3682 0 15:21 pts/1 00:00:00 grep --color=auto php

7.ロードバランサーをつかっていたら、新AWS側でも作成する。ELBは作成後In Serviceになるまで、デフォルトで5分くらい時間がかかる。

期待される効果

2台構成(ELB1台)で、月2,000円強で運用してきました。
リザーブドインスタンスは12か月で186ドル(約18,463円1ドル110円の相場で「20,509円でした!」)の前払いなので、以下のようになります。

24,000円-18,463円=年間 5,537円のお得!計算間違い

24,000円-20,509円=年間 3,491円のお得!

 

まとめ

リザーブドインスタンスというネーミングなので、インスタンスを立てるイメージでいましたが、インスタンスIDを指定する必要は無く、割引が自動的に適用されるチケットの購入のイメージでした。

これなら環境ごとに割引率がバラバラになったりせず、使用期間に対して前払いすることで割安特典を受けられるので、どんどん利用していこうと思いました。

 

Microsoftは最強の剣と最強の盾を手に入れた

ギフハブがやられたようだな。

敵対的買収でもないので悲観することはないが、これまでMicrosoftが行ってきた買収になぞらえて、いろんな憶測が生まれるのも無理はない。

大喜利会場はこちら

金額的には中の上くらい

マイクロソフト、開発者向け共有サイト買収 8200億円

Githubを共有サイト扱いするのも笑えるけど、金額が少々お安いのでは?と思い過去の買収額を並べてみた。個人的に興味があった買収劇をピックアップ。

Googleに勝つための剣

「Google Code」、2016年1月25日に閉鎖へ GitHubへの移行を奨励

Githubの実際のサービスの堅牢性は評判がよく、CDNの分野において、彼のGoogle Codeが撤退を余儀なくされ、githubに軍配が上がったのが思い出される。

そして最強の盾

世界最大のDDoS攻撃はGitHubをわずか10分足らずオフラインにしただけだった

そして世界最強の防御をMicrosoftは得たのだから、間接的にMSプロダクトに影響を与えるのは容易に想像できる。

MastodonとWordPressとHackMD

趣味でいろいろ立ち上げてソースコードいじったり、DevOpsの練習したりしている。

Mastodon

文具丼

2017年4月に立ち上げた。

名前はその頃Facebookで文具ファンが観測範囲にちらほら見かけていたのでコミュニティを形成しやすいかと思って文房具にステータスを全振りした。

ところがMastodonカスタマイズがスムーズにできないながらも施して、本家Mastodonのバージョンが上がるたびにデフォルトに戻してしまっていて、そのうちカスタマイズをかぶせる手間がめんどくさくなってしまいデフォルトのままとなっている。

さいきんようやくRails&Reactの開発パターンが理解できてきたので、そのうちカスタマイズ運用していくかもしれない。

ユーザは80人くらいいるがアクティブは自分しかいないので盛り上げていきたい。
Twitterから投稿を流し込んでいるが、かえってユーザ離脱を引き起こしているならそっとフィードバックとして教えてほしい。

文具好き集まれ!

WordPress

kichij_org

shibuya.jsとかshibuya.rbにあこがれて、吉祥寺.orgのつもりでドメイン取ったが早7年。

とくにコミュニティ形成はできていない。ただSNS連携とかWordpressのプラグインの動作確認とかで使用してたり、Twitter Botをサーバに置いたりしている。

WordPressははてなダイアリーの記事を流し込んだり、エクスポートインポートの実験をしたりしているうちに、DBがふっとんで、いまは今年書いた記事くらいしか残っていない。(アーカイブは残っているのでそのうち流し込みたい)

あと、無駄にMediumと連動投稿したりしている。

そろそろ自前でブログを運用するコストよりもPaasでブログを利用するコストの方が下がってきた(Dev.toしかり)感じなので、Wordpressはそっとじするかもしれない。ドメインはなんか斬新なWebサービスを思いついたら差し替えるかもしれない。

HackMD

Nabe Proj.

最近、お熱のMarkdown投稿システム。パーマリンク発行するだけならNodejsでいいじゃんということで、シコシコいじっているところ。名前は弊社CEOのおなまえを拝借。herokuなので無料で運用できている。
まだまだいじり始めで、ぜんぜん計画とか思い浮かばないけど、ユーザ数とか投稿数とか分析できるようにしていきたい。HackMDだけじゃなく、ot.jsやreveal.jsで酒飲める人を探している。
esa.ioやdocbaseの中の人とかともお話ししてみたいと思っている。

以上、最近の趣味devopsでした。

NetworkedBlogs終了のお知らせ

NetworkedBlogsから悲しいお知らせが来ました。

お別れの "NetworkedBlogs"

私たちは何年にもわたってあなたにサービスを提供してきました。
私たちは何百万人もの人々が使用していたサービスを作り上げたことを光栄に思っています。

 NetworkedBlogsは週末の楽しみのためのプロジェクトとして始まり、もともとは 
"Blogs I Read"と呼ばれていましたが、すぐに成長し、結局はフルタイムで作業を
終えました。その後、FacebookのfbFundアクセラレータから資金を受け取り、その
後500StartupsとTMTから資金を受け取り、それを改善し拡張しました。

しかし、その人気にもかかわらず、私たちはNetworkedBlogを有益なビジネスにする
ことはできませんでした。私たちはサイトに広告を載せ、追加の機能を追加しました。
長年にわたり、さまざまな機能を試し、いくつかのアイデアを試しましたが、成功は
限られていました。最終的には約3年前にはうまくいかないと判断し、新しいユーザー
登録の受け入れをやめ、新製品Symphony Toolsに注目しました。しかし、私たちは
可能な限り、既存のユーザーにサービスを提供するためにサービスを実行し続けるこ
とに決めました。そして、今日、私たちは最終的にプラグを引っ張り、残りの機能を
無効にしています。

私は以下のように多くの質問に答えようとしますが、その他の質問がある場合は、最
下部のチャットボックスを使用してください(私たちがオンラインでない場合はメッ
セージを残してください)、またはwaleed@ninua.comまでメールしてください。

わたしにとって、「NetworkedBlogs」はFacebookページで発見したサービスでした。

https://www.facebook.com/networkedblogs

2010年くらいに自分のブログとFacebookをどうにかして連携したいと考えており、設定して使っておりました。

ブログを更新するとFacebookにも更新情報を連携できたことから重宝しておりましたが、その後いろんな連携方法が生まれ、いつしかnetworkedblogsのことは思いだせないようになったのだと思います。

それでも頭の片隅にはあったようで、こうして終了のお知らせを読むと、設定したのが昨日のように思い出されます。

生まれては消えていくWebサービス。いちいち振り返る暇が無いくらいのおびただしい数のWebサービスが通り過ぎていきました。

これも何かの縁と、networkedblogsをきっかけにいろいろ思い出させてもらったことをつづっておこうと思います。

Visual Studio Live Shareを試してみた

[速報]「Visual Studio Live Share」パブリックプレビュー開始。リモートでのペアプログラミング、ペアデバッギングを実現。Build 2018

マイクロソフトがVS Codeでペアプログラミング環境を構築できる拡張機能をパブリックベータ開始を発表した。

リモート環境同士のコードの同時編集にはこれまで、Cloud9がAWS化したり、PaizaCloudなどのIDEが登場していたが、VisualStudio Code上で利用できるこの機能拡張の登場でより強力なIDEがリモート学習などのシーンでも活躍することが容易に想像できる。

インストール方法

VisualStudio Codeの拡張機能タブで検索窓に「Visual Studio Live Share」と入力すると「VS Live Share」と表示されるので、インストールをクリックする。

※今回検証のため、手元の二台のPC上のVS Code両方に拡張機能をインストールしました。

再読み込みをクリックした後、ステータスバーの「Sign in」をクリックしてログインする。

Microsoftアカウントか、Githubアカウントを利用できる。

コラボレートする準備ができました。

ログイン後、コラボ元のVS Codeからステータスバーの「Share」をクリックしてセッションを作成する。

「Share」クリック直後、InfomationメッセージとしてFirewallを超えて自動で接続する旨のメッセージが表示されるので「OK」をクリック。

 

その直後に、接続元のVS Code側にクリップボードに招待リンクを含んだURLがコピーされたことを知らせるメッセージが表示されます。

以下のようなURLがコピーされているので、Slackやメールなどで、コピーされたURLを接続先のPCに送りましょう。

「https://insiders.liveshare.vsengsaas.visualstudio.com/join?xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx」

このURLをブラウザで開くと、コラボレーションのためのセッションに参加した旨が表示され、VS Codeが自動で開きます。

開いた後は、同じコードを開いてどこに相手のカーソルがあるかわかるので、同時に同じ行を編集することもできる。

▲kenta fujiwara アカウントによる編集行を、▼ fk_2000 アカウントによって追記している様子。※ステータスバーには自身のアカウントが表示されているので、相手が何を書いているかリアルタイムで把握できる様子がわかる。

また、VS Live Shareには、相手PCに自PCのポートを共有させる「Share Server」の機能が備わっている。すなわち、一緒に編集したコードを接続元のローカルWebとしてブラウザで参照できるので、開発環境として同じPCのWebサーバを使ったデバッグが可能となっている。

 

ステータスバーの自身のアカウント名をクリックすると、接続中のコラボレーターに対して何を行うかのメニューが現れる。

その中から「Share Server」をクリックすると自PCのデバック用のWebアドレスの入力が求められる。(ここでは仮に「localhost:80」を入力した)

入力後、Enterを押すと、コラボレーションセッションにローカルTCPが公開された旨を示すメッセージが表示され、接続先から接続元のWebサーバに接続でき、あたかもローカルWebを表示するようにデバッグできる。

他にも、ターミナルを共有したり、3人以上招待したるすることもできるが、ここでは省略する。

まとめ

接続元のVS Codeでワークスペースにフォルダを追加しておくことで、Share時にワークスペースごと共有することとなるが、接続元のワークスペースから削除すると下記のメッセージが表示され、コラボレーションのセッションごと切断される。チャットツールなどで連絡しながら作業を行っていれば突然切断となっても対処にしようがあるが、編集中の状態が保障できな状態にもなりかねないので、コラボ接続中のワークスペースの取扱いには注意したい。

参考

すでにプレビューβ中に試している記事がQiitaにあった。

Visual Studio Live Share preview をつかってみる

 

Scrimbaというサービスがやべー

https://scrimba.com/

なにがやばいって、VRが二次元から三次元への進化だとして、Scrimbaは高さじゃなくて時間軸を追加したサービスってこと。

これまで、プログラミングを動画で学習するなら、スクーやドットインストール、Paizaなどを参照したり、

それらを学習した後は、コードを書いてすぐに試したいので、JSFiddlejsdoitCodePenなどでさくっと試した。

ところがScrimbaというサービスは動画参照中に、プレイグラウンドを開くことができ、ひととおり動きを確認したら、また中断したところから再生ができるサービスなのである。

トップページにはコンテンツが並ぶが、「Staff picks」にスタッフのおすすめが並んでいる。

このサービスを知るきっかけとなったQiita記事が以下である。

Bootstrap4をマスターしたいか? ならばこのコースを修めるがよい

チュートリアルや習得コースに向いたこのサービスならば、日ごろの学習コストを下げつつ、自身でもどのように習得したかのキャストをすぐに作ることができそう。

あとは、これらのキャスト編集情報をgithubなどにpushできて、履歴情報やプロダクトのサービス向上につなげられるのではなどと妄想がたいへん捗った。

 

参考

CodePenだけじゃない!ブラウザー上でサクッとコードを書けるプレイグラウンド7選

yoursはじめてみた

yoursはじめてみた

yours.orgとは?

これから流行るであろう マイクロペイメントプラットフォーム です。
日本ではnote.muとか有名ですが、ブロックチェーン技術でペイメントできるのがyoursです。
簡単に有料コンテンツが作成できるのでこれから注目です。

 

Mediumも有料コンテンツが作れるようになるとうれしいのに。

春からおすすめのブログサービス

2018年の春がはじまりました。新社会人の方におすすめするブログサービスをご紹介させていただきます。
おすすめ順に書いていきます。

1. Medium

URL

https://medium.com/

メリット

  • なんといってもおしゃれ
  • 独自ドメインも対応している。

デメリット

  • デザインが変えられない。

2. WordPress(ここ)

URL

配布版WordPressSaaS版のWordPress

メリット

  • プラグインが充実。デザインテーマも豊富。
  • なんといってもソフトウェアとして配布されているので、オンプレでもクラウドでも自分で構築できる。
  • WordPress.comのSaaS版もある。
  • わたしはAWSに建てて、 Pluginの「Medium WordPress plugin」を使って上のMediumに同時投稿しています。

デメリット

  • メリットが大きすぎてなかなかデメリットを見つけられません。
  • 構築するにはPHPやその他の知識と経験が必要。(かんたんに立ち上げられるスクリプトも配布されている)
  • 普及しすぎていて脆弱性を狙う悪意のある攻撃が存在している。

3. note

URL

note ――つくる、つながる、とどける。

メリット

  • 有料記事として投稿できる。(マネタイズ化がシンプル)
  • 投稿操作がMediumに似ている
  • コードが書けるようになった

デメリット

  • デザインが変えられない。

4. LineBlog

URL

LineBlog

メリット

  • 投稿前に表示フォントが選べる
  • スマホアプリからしか投稿できない(スマホからしか投稿できないのでよりリアリティが増す)

デメリット

  • PC版が無い

5. はてなブログ

URL

http://hatenablog.com/

メリット

  • 独自ドメイン、はてなキーワード、はてなスターなど機能満載

デメリット

  • 強いてあげると「はてなー」などと揶揄される

番外編