日記帳

おもったことをかく。

11月の振り返り

新しい職場でスタートを切ったわけですが…一言で表すと、休職期間と比べるとあまり実りのなかった一か月だったという感想です。

正直なところ、新しい職場はそこまでレベルの高い仕事をしていないように思えてならず、毎日が退屈な仕事ことばかり。 日々の業務とは別に個人的に効率化を考えたり、整理されていない情報を整理したりといったことをやっていたりするのですが、 残念なことに効率の悪い仕事こそ自分の役割と捉えている人たちも多く、エンジニアとして疑問符のつく人もいます。

また派遣などと同じで複数の職場があるのですが、11月になるまでどこにどれだけ通うことになるのか頻度がわからず引っ越しもできないでいました。 ふたを開けてみたら片道一時間以上の職場に毎日通うことに。選べるという話はどこにいったのか。 環境にも慣れてなかったこともあってまともに勉強もできなかったなあ…

余裕があるうちに次の職場に移ることも検討すべきかも。

EC2 インスタンスのランニングコストを AWS Pricing Calculator で計算する

私の手元には PC とは別にハイパーバイザとして利用している購入したサーバがあり、python や ansible などの勉強をする際に利用しています。 そこそこ電力を消費するし外部公開しているサーバではないので、起動しっぱなしということもなく都度起動する運用になっているのですが、ふとこんな疑問が浮かびました。

「これをEC2インスタンスにしたらコストはどの程度変わるのだろう?」

AWS におけるコスト最適化に関しては明確に判明している私にとって経験不足の分野です。 システムアーキテクト アソシエイトを取得した際のスコアを確認したところコスト最適化の項目だけ合格ラインを下回っていました。 いままでに関わった最大のプロジェクトでは湯水のようにリソースを使用していたので身につかなかったのかもしれません。 そんなわけで、コスト最適化の初歩の初歩としてざっくりと計算してみることにしました。

以下の見積もりでは、サーバは常にフル稼働しているものと仮定します。 またネットワーク使用量などは考慮せず、単純にサーバインスタンスのスペックのみでコストを見積もります。

手元のオンプレサーバの場合

手元のサーバは DELL PowerEdge T130 というヤツで、ざっくりとしたスペックはこんな感じです。

  • 4C/4T CPU

  • 16GB RAM

  • 2TB HDD

お値段を調べたかったのですが、型落ちのためオンラインで購入できなくなってしまったので代わりに T140 を元にします。 www.dell.com 前述のスペックで見積もると割引なしでおよそ 23万でした。

また電源は 365W なので、ランニングコストはこれを一か月フル稼働したと仮定して計算すると月当たりおよそ 7100円になります。 常にフル稼働するわけではないので実質最大値でしょうが、一般家庭ではなかなか見ない光熱費になります。

EC2 インスタンス(オンデマンド)の場合

では同じようなスペックで EC2インスタンスを調達するといくらかかるのでしょうか? AWS ではコスト最適化のためのツールやサービスが多数用意されていますが、今回は AWS Pricing Calculator を利用します。

calculator.aws

最小要件として 4vCPU かつ 16GB RAM を指定すると、最も低コストな EC2 インスタンスとして t3a.xlarge が提案されました。 ひとまずオンデマンドインスタンスとすると、ランニングコストは 142.93ドル/月。 これに加えてストレージを用意します。スループット最適化 HDD で 2000GB 用意すると 108ドル/月 です。 結果として月のランニングコストは 250.93 ドルになります。円ドルの換算レートが 108円/ドルとして 27100円ほど。

EC2 インスタンスリザーブド)の場合

長期間 EC2 インスタンスを利用することがわかっている場合には、期間を指定し予約しておくことで全体コストを下げることができます。 さらに先払いを選択することで大幅なコスト削減も見込めます。 先程のオンデマンドインスタンスをスタンダードリザーブインスタンスに変更、3年間予約の上全額前払いにして料金を確認してみます。 すると費用は 2213 ドルとなり、仮にオンデマンドで3年稼働させると 142.93 * 12月 * 3年= 5145.48 ドルとなり50%以上のコスト削減になります。 長期間提供が決まっているサービスにはできる限りリザーブインスタンスを購入して利用しましょう。

その他

各種リソースをかなり多めに確保しているため、その分コストに跳ね返っています。 コスト最適化の観点では、最初から大量のリソースを確保するのではなく不足してから追加するのが望ましいとされます。 例えばストレージに関して、すぐに 2TB を利用する用途がないのであれば少なめに確保し都度拡張するようにするとコストが抑えられます。

当然ですが、AWS はマネージドな環境であるため手元にあるだけの環境と比べると割高になりますね。 個人ユースとビジネスユースで比較してもそれ自体にあまり意味はなかったかもしれませんが、コスト削減のイメージはしやすかったと思います。

AWS とは関係ない学習は手元の環境を用いるほうが安上がりということが再確認できてよかったです。

GCP ハンズオン: NLB と HTTP ロードバランサ

何をやっても三日坊主が常ですが、ブログに記録を載せておけば改善されるかなと学習内容を記録していくことにします。

休職・転職活動中に見つけた qwiklabs という非常に有用なサイトで時折ハンズオンで勉強をしています。

qwiklabs.com

www.qwiklabs.com

これは GCP / AWS のハンズオン学習サイトで、カリキュラム(qwiklabs 内ではラボと呼ばれています)ごとに都度新規の環境が用意され、その環境内でハンズオンを行います。 カリキュラム 1回ごとに料金がかかり、かつクラウド環境の利用に制限時間がありますが、都度新規の環境で作業できること、また個人でクラウド環境を用意した際に、使用しなくなったリソースを削除し忘れて余計な請求が発生してしまうということもないので、学習環境としては安心して使える優れものです。 カリキュラムの大半が英語ですが、日本語のものもあります。

最初から手順に沿ってハンズオンを進めてもよいですが、個人的には説明を読んだ後でカリキュラムをスタートすることをお勧めします。 作業手順に沿ってコマンドを実行するだけでは理解は進みませんし、前述の通りクラウド環境の利用に制限時間があります。 そのため手順や各ドキュメントにじっくり目を通して理解を深めてから手を動かすようにすると時間を有意義に利用できます。

さて本題。 本日は qwiklabs で次のハンズオンをやりました。

ネットワーク ロードバランサと HTTP ロードバランサを設定する

www.qwiklabs.com

前職でも GCP の経験がなかったので、いちから基礎を勉強していてその基礎コース内の最後のラボになります。 当然 LB の操作自体は経験はありましたが、今回のハンズオンで GCP の L7 ロードバランサである HTTP ロードバランサはリバースプロキシ的な動作で実装されているというのは目から鱗というか、言われてみれば確かにそうだと再認識させられました。

直近の疑問としては、インフラエンジニアとして L7 をどこまで気にすることになるか、という点があります。 URL マップにより処理を振り分けられるというのは、例えば example.com/ja と example.com/en でそれぞれ別のインスタンスグループに処理を割り振れるということです。 HTTP ロードバランサを適切に設定するためには URL レベルでサイトの構成を把握している必要があります。 文字通り上位レイヤでの把握が必要になるので、おおよそ L4 までが守備範囲のインフラエンジニア単独では適切な設計は難しいかも、という気がしています。

SysOps アドミニストレータ アソシエイトを目指して

この前のエントリで書きましたが、 AWS への知識を深めるためにソリューションアーキテクト アソシエイトを取得しました。 しかし勉強不足を実感したこともあり継続学習をすることに決めたのですが、何をすべきかわからないので今後の業務に役に立ちそうな SysOps アドミニストレータ アソシエイトの取得を検討しています。

aws.amazon.com

ソリューションアーキテクトと何が違うのかは公式の説明を読んでいただきたいところですが、ざっくりいうといずれも AWS が提供している各種サービスの概要を理解しているかどうかは問われますが、

  • ソリューションアーキテクトは 、問題に対して適切なソリューションを設計・選択できるか
  • SysOps アドミニストレータは、 AWS の特性を生かした運用ができるか

というように設計か運用かの重点項目が違うようです。 内容を細かく確認したわけではないですが、同じサービスでも運用に関して言えばより実践的な内容を問われるのが SysOps アドミニストレータのようです。 ソリューションアーキテクト プロフェッショナルを目指すのも手なのですが、直近の業務内容を考えると SysOps アドミニストレータが近そうなのでこちらがいいのかなと。

問題点としては、日本語の参考資料がほぼないことが挙げられます。 学習ガイドとして使える参考書があるといいのですが、ソリューションアーキテクトはともかく SysOps アドミニストレータに特化した書籍がみつかりません。 別に洋書を取り寄せてもかまわないのですが、AWS のサービスの更新速度が早く、すぐに陳腐化してしまいそうな点が懸念としてあります。 実際ソリューションアーキテクト アソシエイトは来年初頭に新試験になりますからね…

ひとまず 11月はこの勉強を進めることにして、12月には一回目のチャレンジができるといいかな。

ここ最近の出来事

記録を兼ねて、ほかの人に閲覧されても困らない程度でここ最近の出来事をつづっていきたいと思います。

退職した

いきなり重めの話ですが、9年間務めた会社を退職しました。 性格的なものもあるのですが、2年ぐらい前からストレスによる体調不良が現れるようになり、特にこの1年は頭痛や動悸に悩まされ続けました。 このままでは自分のスキルもまともに生かせないと考えて 2度休職して考えた結果社内環境の問題が大きく、このままずるずる残ってもいいことはないと判断して退職しました。 正直なところ待遇的なものはそれほど悪くなかったです。むしろいいレベルでした。 ただ社内の雰囲気が悪化していて、私の体調に関係なく何度も忠告しているにもかかわらず、全く対策を打たない上層部に対しては不信感しか感じられずこの会社には未来はないと感じていました。 ずるずる残ってそこそこいい給料だけもらう手もあったかもしれませんが、辞めたことに後悔はないです。

退職エントリで一つ記事書けますね…書くか。

転職した

そんなわけで11月から別の会社に勤めることになったのですが、1日目にしてヤバい雰囲気がプンプンしています。 休職中に転職活動をしていたわけですが、そのときは私の能力を買っていただいてスカウトしていただいた気持ちになっていました。 給与面や待遇面などは大幅ダウンしているので正直よくはないですが、前述の退職に関しての意思を尊重してくれていたので、許容しようかと思っていました。

ただ実際のところ、初日の手続やらオリエンテーションやらを受けた感想としては雑という印象がすべてでした。 前職では教育や部署の運営にも携わっていたので、この対応には苦笑しかなかったです。よくこれで人が定着するなあ… とある顧客の専任チームに配属されるらしいのですが、正直社内体制の見直しに携わりたい。

AWS ソリューションアーキテクト アソシエイトとりました

話が前後しますが、転職する前に AWS などクラウド環境を触ることになるような話を伺っていました。 もちろん前職でもバリバリ AWS は使用していたのですが、そのスキルを客観的に評価するような資格を取っていなかったので試しに受験することにして結果合格しました。

ただ、この受験で AWS のサービスに色々知らないことがたくさんあることに気づかされた格好になりました。 数多くのサービス追加に伴い新試験が 2020年に開始されるらしいので、プロフェッショナルを狙わずとも継続して勉強しなきゃいけないかなと思っています。 自分が記事書かなくとも色々なところに AWS の情報は落ちてはいるのですが、知識の定着を図るためにも二番煎じでいいので記事を書いていきたいというのがいまの気持ちだったりします。

ゲームのお話とか

堅苦しい話だけでもどうかと思うのでゲームの話もしておくと、最近はアズレンWLWにはまっています。

アズレンは2年弱のブランクがありましたが、カムバックログインボーナスなどで色々リソースがもらえたので楽させてもらってます。 このような育成ゲームはなにも考えずにできるので好きだったりもします。

ゲームセンター通いしてプレーしているのは QMAWLW で、特に WLW の協力モード (PvE) である冒険譚をメインでやっています。 ゲームセンターでは最近アクションゲームが少なく感じていて、ビデオゲームでは実質格ゲーが幅を利かせていて食傷気味だったので、それを解消するために始めたという感じです。 転職活動中はほぼ毎日プレーしてました。お金のことは気にしてはいけない。

最近だとこんな感じですね。書けそうなものは別途記事に起こしていきたいと思います。

復活

一年前に作成したアカウントを掘り起こして改めてブログを書いていくことにしました。

アウトプットするという経験を積んでいくべきだろうと思うことが多々あったのですが、どうやって解消していくべきか悩みの種でした。 ちょうど転職したばかりで気分を一新するにはちょうどいいタイミングであり、とりあえずは深く考えずブログを復活させて日記帳のように日々の思いを書き綴るなどしていきます。

いきなりきれいな文章を書けるわけではないので、色々書きなぐりつつまとめたら面白そうなネタが見つかったら情報まとめて連載するみたいなスタンスでできたらいいかな。