ガイアックス様、ログミー様、ありがとうございます。
「本」をテーマにしたSaaSを企画する
「本」をテーマにしたSaaSを企画する
数年前まで業務に必要な本以外全く本を読まない人間でしたが、今では月10冊は買って読んでいます。読んでいることをアピールしたい訳では無く、自分の会社もありますし、今の生活は維持したいですし、読まざるを得ない状況だからです。夜読むか、休日の朝にカフェに行って一気に消化しています。
読んだ本をどうしているか
1〜2ヶ月に1回、まとめて実家に持って帰って倉庫に保管しています。自宅は複業の事務所を兼用している関係で一番利便性を重視した場所を選んでいるので、代わりに広さを諦めた「ワンルーム」です。収納スペースはそんなに無いのです。
これが面倒だし、実家に放置しておくのも勿体ないなぁと思っています。(個人的な不満..)
図書館に寄贈する?
解決策として図書館に寄贈する手があります。これもなんだか勿体ないなと思います。せっかくなので、僕が読んだ本を次にどんな人が読んだのか、どんな感想だったのか知りたくないですか?(僕は知りたい)
本をコミュニケーションツールにする
野菜じゃないですが、本にトレーサビリティを付加したらどうなのかと思った訳です。本を誰が読んでいって、どんな感想だったかを、本自体では無くクラウド上で管理する。本を読んだ人同士が繋がれる
次に、どこに本を置けばベストなのか考えました。図書館、公民館、コミュニティセンターなどパブリックすぎる場所だと、見ず知らずの人同士なので繋がるにもハードルが高いです。
では学校、会社とかに置かせてもらったら一番良いかなと思ったわけです。顔は知っているけど、深くは知らない違う部署、違う学科の人同士くらいなら、繋がりやすいかなと。あとはシェアオフィスやコワーキングスペースもありですね。
構想を図にしてみる
インフラ:AWS
専用サイト開発:Ruby on Rails
スマホアプリ開発:Swift(iOS) /Kotlin?(Android)
CloudWatchと監視の話
CloudWatchと監視の話
AWSの各種リソースの状況を監視できるサービスです。
オンプレだとNagiosやZABBIXなどで監視サーバーを立てるしかありませんでしたが、AWSではある程度の監視ならこのCloudWatchで事足ります。Nagiosのあの難解なテキストでつくられたconfigを慎重に触ることを考えるとおそろしく楽ですね..
コンソールを開いてみる
CloudWatchのコンソール画面に移動します。
ダッシュボード
ダッシュボード→EC2をクリックします。
EC2インスタンスのCPU使用率、Disk Read/Writeバイト数、NetworkのIOなどがグラフで見られます。
メモリの使用量は「カスタムメトリクス」を作成しないと監視できません。
EBS(Elastic Block Storage)の状況です。EBSとはEC2インスタンスにアタッチして使用するボリュームのことでした。
CloudWatch Logs
「ログ」というメニューからは、CloudWatch Logsという機能が使えます。
EC2インスタンスにエージェントをインストールして、各種ログを収集してくれる機能です。例えば/var/log配下のログなど、インスタンスにログインしなくともここからログを検索したりできます。
メトリクス
メトリクスメニューからは、監視している要素が1つずつ見られます。
アラーム
メトリクスに対して閾値を決めて、アラームを設定したりできます。
複業の話
別記事で書きますが、複業の方で管理するWebサイトが一気に増えてきたので(有り難いことです)監視をZABBIXで行おうとしています。うちはWebデザインだけの会社ではないので、インフラの監視や改善提案もやります。
いずれはMackerelなどの外部のSaaS監視サービスに移行したいですが、今はコストをかけられないので自社で監視したいと思います。移行した後も監視サービスの二重化になるので損にはなりませんし(通常片方を止めておけばコスト面は問題無い)
当たり前ですけど、外部のサービスって止まれば監視できなくなるので、依存したくないです。Mackerelさんの基盤はAWSのようなので、同じ基盤同士で監視するのって結構リスクあると思います(同じリージョン上で障害があった場合システムも監視も止まる)
自社で違うリージョンとかに予備の監視システムを構築しておく。くらいのことはした方が良いと思いますけどね。
記事数が100を超えました
クラウドも、Webデザインも、写真撮影や空撮も、何も知らない、全く出来ない状態でスタートしています。出来るようになるまで続けるだけです。出来ないのは続けていないからです。
AWS WAFを使ってみる
AWS WAFを使ってみる
前回紹介したAWS WAFで、アクセス元IPアドレス制限を行ってみたいと思います。
WAFコンソールを開く
新しくなってました。
構造も変わっていて、本で学んだことが半分くらいムダになりましたが、クラウドの世界では良くあることなので仕方無いです。まずはやってみます。
ACL(Access Control List)を作成する
Create Web ACLをクリックします。
Rsource Type:CloudFront destributions
Nameに "test_ACL"(任意)を入力します。
Web配信に使っているCloudFrontを指定します。
このような画面が出るので、そのままNextをクリックします。
ルールは後で追加するので、Default ActionでBlockを選択してこのままNextをクリックします。
Nextをクリック
Nextをクリック
Create web ACLをクリックします。
web ACLができました。
IP setsを作成する
IP setsは、ルールを作成する際に指定するIPの集まりです。
IP setsのメニューで、自分のPCのグローバルIPを指定したIP setsを作成します。
test_ACLのAdd rulesで、先ほどのIPをブロックするルールを作成します。
ブロックされたかを確認する
ブラウザのアドレスバーに以下のように入力します。
https://(CloudFrontのDNS名)/index.html
403 ERRORが表示されて、アクセスができないはずです。
Web ACLを削除してみて、アクセスができることも確認してみてください。
コンソール画面が変更されていて戸惑いましたが、操作しながら文章書いて、画像取得と加工と記事化を20分でできました。インプットしながらアウトプットする癖をつけると、後々楽になります。複業でPhotoshopをガンガン使っているので、ちょっとした画像加工も自動化して楽してます。
AWS WAFとは
AWS WAFとは
AWSにはWAF(Web Application Firewall)という機能があります。オンプレでもハードウェアとしてのWAFやプロバイダーが提供するWAFがありますが。それと同等のサービスが用意されています。
Firewallとは何が違うのか
Firewallはネットワーク層(IPアドレス、NWアドレス、ポート番号)でアクセスを制御しますが、WAFはアプリケーション層で制御できます。
今はSaaSなどのWebアプリケーションが全盛ですので、WAFによる対策は必須とも言えます。
何をしてくれるのか
代表例ですが、以下のような攻撃を防いでくれます。ユーザーによるルール設定が必要です。
(1)クロスサイトスクリプティング(XSS)・・・Webサイトの入力要素にスクリプトを埋め込まれ、意図しないページに誘導されて情報を抜き取られる
(2)SQLインジェクション攻撃・・・Webサイトの入力要素にSQL文を埋め込まれる。コードに欠陥があった場合にSQL文が実行されデータベースの情報が抜き取られたり改竄、消去されたりする
(3)CMSの脆弱性に対する攻撃・・・WordPressなどCMSの脆弱性を突いてくる攻撃
どうやって設定するのか
AWS WAFのコンソールよりルールを設定して、前回までで説明したCloudFrontと紐付けて使用します。次回はこれを試してみたいと思います。
インフラエンジニアは何をしているのか
インフラエンジニアは何をしているのか
今日は、僕が本業としている「インフラエンジニア」とは何なのかを書きたいと思います。これを書いている理由は、業界外の方になかなか仕事内容が伝わらないからです。
来年度から大学の非常勤講師ということで、学生さんと関わることも今より多くなりますし、少しでも興味を持っていただければと思い、書き残しておきます。
「電気」の使われ方と対比する
電気でいうところの、発電所と送電網にあたるところです。コンピューター、通信の世界だとサーバー、クラウドサービス、インターネット、それを家庭につなぐプロバイダーの辺りまでが「インフラ」です。
プログラマーではない
今だとWebサービスとかスマホアプリがメインですが、そのサービスを動作させているプログラムを書いている訳ではありません。プログラムが安定して動く、動き続けるようなベースの仕組みを設計、維持管理しています。
発電所や送電網を設計、維持管理しないといけない電気の供給の仕方と似てますね。
ホームページも作っていない
よく言われますが、本業ではホームページを作っていません。デザインもしていないです。要は「目に見える部分」って、本業ではやっていないのです。
その辺りは、30歳過ぎて自主的に行ったデザインの専門学校+独学で習得しました。理由は、インフラを武器にしても、個人でなかなか仕事を取れないからです。どこかの受託ならともかく、一人で上流から請けようとするとデザイン含むフロントエンド側を知っておかないと無理ですね。
どんな人に向いているのか
元電力会社のインフラエンジニアである僕の父が良く言ってましたが「当たり前」を維持する仕事なので、あまり他人から褒められる仕事ではないです。「多くの人がいつでも利用してくれている」ことに、自分自身で面白みを見いだせる人に向いていると思います。
これを書いていると個人的活動の「イベントをプラットフォーム化する」こととかにも繋がっているのかなとふと思いました。ある意味それも「インフラ」で、基盤を整備することが好きなのかもしれない..
インフラエンジニアの求人
今は、就職して以来最大のインフラエンジニア不足で、需要に対して全然足りていません。首都圏では7倍以上とか。多くのスタートアップのサービスでクラウドを使ったり、オンプレからの移行案件が急に増えたからですね。
一番必要とされていそうな、SIerのインフラ部隊や、データセンターで作業したりしているエンジニアが全然動かないですね。インフラエンジニアを目指す人種って、良くも悪くも現状維持・安定志向で、チャレンジングな人が少ないからではないかと思ったりしています。既にルールがあり型にはまった方が仕事やりやすい人が多い印象。
昔は、人材紹介会社に行っても VBとVCが使えないからと門前払いとか良くありましたが、今は全く違いますね。しばらく仕事には困らないと思いますので、興味のある学生さんは業界の全体像合わせてお話できますので、お声がけください。
生活スタイルの変化について
生活スタイルの変化について
今年も残すところあと僅かです。今年を振り返ってやはり一番の変化があったことは生活スタイルの変化です。
現状
本業の通勤時間がリモートワークでゼロになったこと、法人として複業を始めたことで、このような日々を送っています。情報収集、ブログ、読書は本業にも複業にも関係あるし、境界が曖昧ですね。
空いた時間は、ほぼ本を読む時間です。本業の方の勉強もありますけど、技術的なところは複業にも関わってきますし、とにかく読まないと周りについていけないのが現状で、10冊/月は読んでいます(ある意味追い込まれている..)
本の種類は、技術的な本に加えて、後述の「まちづくり」「教育」関連です。
毎日定常的に仕事が発生するような「作業的」な複業はしていなくて、してない日の方が多いです。複業(副業)で違う会社に勤務している方もいますけど、仕事を選択できなくなりますし、仕事量も調整できなくなりそうで僕はやらないですね。
絶対本業に影響出そうだし、しんどそうなので、僕は複業では「やる仕事とやらない仕事」を決められる状態にしています。フリーランスでも良いですけど、法人にしているのは法人の勉強をしたいからです(法人税が授業料的な..)
あんまり理解されないですけど、写真編集とか動画編集は気分転換になりますね(右脳を使うから?)
1年前
1年前は殆ど読書してないですね。会社で買ってきた本を読むことはありましたけど、家では読まなかった。というかSESな仕事だと知見を広げなくても仕事はできますし。今みたいに本を大量に買う余裕が無かったのもあります。身体の状態に意識を向けていなかったので、睡眠も短め。こうしてみると通勤時間って結構な面積を占めてますね(もったいない)
課外活動の部分が長いですが、この時間で創作活動をしたり、イベントのお手伝いをしたりしていました。Web制作、写真/動画編集などを覚えたのもこの時間ですね。そして沢山の企業や人と繋がった。ここが今の複業に大きく繋がっています。
来年は
本業では、引き続きインフラエンジニアとして働いてクラウドの知識を深めようと思います。複業の方は「まちづくり」「教育」の2つのテーマに絞って活動していきます。業界はITにしろ何にしろ、地方で自力で仕事を見つける上で、この2つはキーワードかなと思います。