技術関連の覚書

案件でやったり自宅で試したことの覚書

EC2でサーバを作る手順

AWSでサーバを立てて見る手順

ネットワークの構築

ネットワーク構築(VPC)*1

AWSマネジメントコンソールの「ネットワーキング&コンテンツ配信」にある「VPC」をクリック

f:id:boctok-ctpoba:20170712230828p:plain:w300

VPCダッシュボードの「VPC」を選択

f:id:boctok-ctpoba:20170712230559p:plain:w300

VPC 接続の作成」を押下

f:id:boctok-ctpoba:20170713090904p:plain:w300

VPCを作成する

項目 入力値
名前タグ 任意の名前
PIv4 CIDR ブロック 10.0.0.0/16
IPv6 CIDR ブロック IPv6 CIDR ブロックなしを選択
テナンシー デフォルト

入力したら「はい、作成する」を押下

f:id:boctok-ctpoba:20170713091224p:plain:w300

インターネットゲートウェイの作成*2

ダッシュボードで「インターネットゲートウェイ」をクリック

f:id:boctok-ctpoba:20170713094238p:plain:w50

「インターネットゲートウェイの作成」を押下

f:id:boctok-ctpoba:20170713094759p:plain:w300

インターネットゲートウェイを作成する

項目 入力値
名前タグ 任意の名前

入力したら「はい、作成する」を押下

f:id:boctok-ctpoba:20170713095436p:plain:w300

この時点でまだアタッチされていないのでアタッチする

f:id:boctok-ctpoba:20170713100207p:plain:w300

前に作成したVPSを選択して「はい、アタッチする」を押下

f:id:boctok-ctpoba:20170713100907p:plain:w300

サブネットの作成*3

ダッシュボードの「サブネット」をクリック

f:id:boctok-ctpoba:20170713101302p:plain:w300

「サブネットの作成」を押下

f:id:boctok-ctpoba:20170714000641p:plain:w300

サブネットを作る

項目 入力値
名前タグ 任意
VPC 登録したVPCタグ
アベイラビリティーゾーン 任意
IPv4 CIDR ブロック 10.0.10.0/24

入力したら「はい、作成する」を押下

f:id:boctok-ctpoba:20170714001253p:plain:w300

ルートテーブルの作成

「ルートテーブル」を選択

f:id:boctok-ctpoba:20170715232417p:plain

「ルートテーブルの作成」を押下

f:id:boctok-ctpoba:20170716001546p:plain:w300

項目 入力値
名前タグ 任意
VPC 作成したVPCを選択

入力したら「はい、作成する」を押下

サブネットの関連付け

下の方にあるタブから「サブネットの関連付け」を選択

f:id:boctok-ctpoba:20170716235925p:plain:w300

「編集」を押下

f:id:boctok-ctpoba:20170716235208p:plain:w300

先ほど作成したサブネットを選択して「保存」を押下

f:id:boctok-ctpoba:20170717000359p:plain:w300

インターネットゲートウェイの設定

タブから「ルート」を選択

f:id:boctok-ctpoba:20170717000751p:plain:w300

「編集」を押下

f:id:boctok-ctpoba:20170717000850p:plain:w300

「別のルートを追加」を押下

f:id:boctok-ctpoba:20170717001022p:plain:w300

項目 入力値
送信先 0.0.0.0/0
ターゲット 作成したインターネットゲートウェイ*4

入力したら「保存」を押下

f:id:boctok-ctpoba:20170717001330p:plain

ルートテーブルの確認

ダッシュボードで「サブネット」を選択した後作成したサブネットにチェックを入れる

ルートテーブルタブを選択して内容を確認する

インスタンス構築(EC2)

ホーム画面の「コンピューティング」にある「EC2」を選択

インスタンスの作成」を押下

f:id:boctok-ctpoba:20170717002317p:plain:w300

AMIからAmazon Linux AMIを選択

f:id:boctok-ctpoba:20170717002529p:plain:w300

インスタンスタイプ「t2.micro」を選択して「次の手順:インスタンスの詳細の設定」を押下

f:id:boctok-ctpoba:20170717003006p:plain:w300

項目 設定値
インスタンス 1
ネットワーク 作成したVPC
サブネット 作成したサブネット
自動割り当てパブリック IP 有効化
テナンシー 共有-共有ハードウェアインスタンスの実行

「ネットワークインターフェイス」の「IPの追加」を押下して 「プライマリIP」に「10.0.10.*5を設定

入力したら「次の手順:ストレージの追加」を押下

f:id:boctok-ctpoba:20170717150247p:plain:w300

値はデフォルト値のまま(サイズ=8G、ボリュームタイプ=SSD)「次の手順:タグの追加」を押下

f:id:boctok-ctpoba:20170717152844p:plain:w300

「タグの追加」を押下

f:id:boctok-ctpoba:20170717154523p:plain:w300

キーと値を設定して「次の手順:セキュリティグループの設定」を押下

f:id:boctok-ctpoba:20170717155929p:plain:w300

セキュリティグループ名を任意に設定してデフォルトのセキュリティグループをに チェックして「確認と作成」を押下

f:id:boctok-ctpoba:20170717161426p:plain:w300

「起動」を押下してキーペアの作成

f:id:boctok-ctpoba:20170717165612p:plain:w300

ダッシュボードで「キーペア」を選択し、「キーペアの作成」を押下 任意の名前をつけて「作成」を押下

f:id:boctok-ctpoba:20170717164929p:plain:w300

公開鍵がダウンロードされるので任意のディレクトリ(通常 ~/.ssh の下)に移動して読み取り専用に変更 chmod 400 公開鍵.pem

インスタンスの状態がrunningになったら

f:id:boctok-ctpoba:20170717215507p:plain:w300

ssh -i 公開鍵.pem ec2-user@パブリックIPのアドレス

で接続してみる

*1:Virtual Private Cloud

*2:インターネット経由でVPCに接続するためのゲートウェイ

*3:VPC内での分割したネットワーク。ネットワークを分割することで他のサブネットに影響を与えにくくすることで安全性を高める。

*4:フォーカスすると候補が出てきます

*5:は任意の値、1はダメだった

無茶振りへの対応

技術と離れるかもしれないけど、マネジメントとしてはちょっと書き残しておこうかなと言うことを

客先から1週間前倒しでお願いしますという無茶振りを水曜日に言われた時の話

リーダーから、休日出社して欲しいと言われましたが、期限は金曜日 休出したところで完成するのは月曜日になります 休出して遅れ出したと怒られるので無意味なことはやりたくはありません

普通なら間に合わないんですが、やり方があまりに効率悪いと思っていたので 間に合わせろというのであれば、お客さんにも手伝ってもらう手はずをつけない限り無理という提案をしました。

リーダーが動いてくれたと言うよりはお客さんの方も上から言われてのことで 無理はわかってるからできるだけ協力すると言ってくれたので実現できた感じもあります。

今回の納品物はドキュメントで、更に修正担当は他のチーム。 自分のチームに関わるところをチェックして実装と相違がないか確認して各担当に渡すというものでした。

これまでの手順 すべて紙の上で行って赤入れされたものをレビュー記録表に記入して担当者に渡します。

  1. 内部で打ち合わせてチェック

  2. 修正後、内部で再びチェック

  3. 内部レビューでOKが出た後客先に提出してレビュー

  4. 客先からNGがあれば修正、これを1からやり直す

  5. 客先OKとなったものを納品

ちなみにレビューは紙です

今回の手順

間に合わせるために内部レビューと客先レビューを一緒にしてしまえばいいので 会議室にノートPCを持ち込み

  1. チェックする人とお客さんは紙に慣れているので印刷物を用意して読んでもらった上で指摘部分を出してもらう

  2. 洗い出したものは、全てレビュー記録表にその場でお客さんと合意した内容で書き込み

  3. レビュー記録表を各担当の窓口に渡す

この方法にしてどうにか木曜日にレビューを終わらせて金曜日の納品に間に合わせることができました。

ただ、今は普通は後者のやり方のではないかと思いますが、全社のやり方も少なくはないかもしれません。

どうすれば早く終わるかというのは精神論ではなくいかに無駄な作業を省くかにあります。

ウォーターフォールが悪いというわけではなく、ウォーターフォール開発で失敗する多くのパターンは テスト工程をテストの実施時間しか取らないこと。

テストしてバグが見つかれば当然、修正が必要ですが、大昔、まだソースを紙に書いてキーパンチャーが入力していた時代の話(私も聞いたことしかありません) 机上でのチェックで全てバグは取り除かれていて、テストは完全に動くことをお客さんに提示するため というものだったようです。 だから、バグが出ると大騒ぎになる、隠すといったことがあったようです。

テストというのは、本番までにバグをなくすための作業なんですけどね。

そんな大昔のやり方を今も守り続けているところもあるので、そういうところに対しては文明の利器 自動テストなんてものはその信頼性とかを問われます。

登場してから15年以上経ち、やり方も公表されていて成功例も数多くあるのでそれを見せてあげることが良いのかなと思います。

ITについては伝統を守ることはあまり良い言葉ではないですね。

第2回 Alteryx User Group in 東京

【7/3】第2回 Alteryx User Group in 東京 - connpass

こちらに行ってきましたが、当日仕事で予定外の急ぎの仕事が舞い込み会場に到着した頃にはこの話が終わる頃でした。

第2回Alteryx User Group in 東京で「新製品&新機能紹介」の発表をしました #alteryx_ug | Developers.IO

前回のじょんすみすさんの話はこちらです

Alteryxユーザグループ第1回勉強会でLT発表しました | #alteryx #alteryx_ug | Developers.IO

BIツールはなかなか使う機会がないですが、やはり今後需要は伸びると思うので抑えておきたいです。

最後の藤さんのハンズオンでしたが、残念ながら私のPCにはAlteryxは入ってませんでした。

操作自体は簡単そうなのでどこかで試せるといいなと思う勉強会でした。

Developers.IO 2017に行ってきました(3)

14時 実案件で見るデータ分析用AWS基盤の構築方法

Developers.IO 2017セッション「実案件で見るデータ分析用AWS基盤の構築方法」を発表しました #cmdevio2017 | Developers.IO

元々はGlueの話の予定がまだ東京リージョンで公開されず急遽変わりました。

Redshiftは自分で試すには高額なサービスなので話だけでも聞きたいなと思っていたので良かったのですが、 やはり触ったことのないサービスはイメージしづらい。

ドキュメント読んで復讐が必要だなあ。

17時 Amazon Elasticsearch Service の使いドコロ

Developers.IO 2017セッション「Amazon Elasticsearch Service の使いドコロ」で話しました #cmdevio2017 | Developers.IO

私はElasticsearchは入れてみてちょっとした検索ならしたことがあって、全文検索の仕組みはなんとなくわかる程度です。 MySQLでも全文検索の機能があったりするので使ってる人もいるのかな。

RDBMS製品にも付いてたりします。

案件ではsolrは使ったことはあるんですけどね。

もうちょっと本格的にやってみようと思うセッションでした。

この後は FestivalIO

飲みながらのスポンサー企業の方のセッションがありました、

Developers.IO 2017に行ってきました(2)

みんな早いな いくつかすでにレポートブログが上がってました。 お弁当の内容、クラスメソッドの企業案内などランチセッションの話は書いてる方が多かったので別の見方で行ってみます。

それから、昨日書き忘れてましたが、クラスメソッドのロゴが変わったそうです。

classmethod.jp

昨日の続きで、12時からのランチセッションです。

だそうです。 ごちそうさまでした。

この後の懇親会でもお酒や食べ物が出てきたので食費だけでもかなりお得です。

横田社長のセッションですが、マーケティング部嵩原部長との掛け合いも楽しかったです。

横田:女性比率が上昇、特にマーケティング部が多いです 嵩原:別に侍らせてるわけじゃないですよ

クラスメソッドにはベルリン、バンクーバと海外にも拠点があること これは時差がおよそ8時間の場所を選び、リモートで作業しているため日本で夜間になる作業も国外で日中に行うため 横田社長いわく 「私は、徹夜でゲームをするのは好きですが、夜勤は嫌いです」とのことでした

肝心なこと

これからのUIとしてAlexa事業部を作った話。 今の子は(横田社長の子供の話でした)パソコンの画面をスワイプしたり、テレビのリモコンに話しかけたりするくらい スマホがあるのが当たり前の時代に生まれ、自分たちはもう古い世代だと(私はそれより古い世代だったりします) そんな世の中でもお年寄りは手紙や電話が中心の通信をしているというので、そのような人たちも使えるインタフェースVUI(Voice User Interface)に着目したということでした。

AWS Pollyなど優秀な音声変換もあるし、OK GoogleやHey Siriなど音声変換はすでにあるので今後その精度を上げて 誰もが使えるインタフェースになっていくでしょう。

chatOpsからvoiceOpsへと変えていく動きもありますし。

13時 Developers.IO 2017セッション「A1. クラメソの請求を支える技術 〜40歳中年エンジニアの生存戦略〜」#cmdevio2017 | Developers.IO

月3〜5件くらいの請求が300件超に急増して営業も事務もほとんど請求の作成に追われる事態になっていた。 これを解決した結果

しがないOLのはじめてのMySQL | Developers.IO

となったようです。

後半は40歳中年エンジニアの生存戦略

何でもできる人なんていない 開発だけがエンジニアの仕事ではない

一時期フルスタックエンジニアと言う言葉が流行りましたが、これだけ多様化してくると何でもできる人というのは化物でしょう。 もちろん、なんとなくわかることは大事ですが。

自分も、全体を通せば一通りやっては来ましたが何でもできるとは違うなと思います。 ある意味ではフルスタックですが、どれもそれなりなエンジニアかなと思って過ごしてましたが なんか救われた気がしました。

また次の日に持ち越しです

Developers.IO 2017に行ってきました

dev.classmethod.jp

こちらに行ってきました。

最初の挨拶はマーケティング部部長の嵩原さん 当日は朝雨で、主催のクラスメソッドはリモートワーク、フレックスタイムという勤務体系のため台風などでは出社しない社員も多いようで、「今日は雨なので社員が来ないんじゃないかと心配してました」と言うような冗談も出てきましたがかなり緊張していたようです。

最初のセッションは大部屋でのAWS事業部長佐々木大輔さん ブログのプロフィールではAWSエンジニア兼宴会部長と書かれていますが、AWS認定資格ダブルプロ以外にJFA公認C旧コーチ、サッカー及びフットサル4級審判とった資格も持っているようで少年サッカーチームで教えているそうです。 ワークライフバランスを重視した社風の現れでしょうか

セッションで話した内容はこちらを見たほうが早いくらい詳細に書かれています。 Developers.IO 2017セッション「基調講演:History of AWS, Still Halfway through」で話しました #cmdevio2017 | Developers.IO

その中でも、最後のこれからの僕達で語っていたアウトプットの連鎖というのはいい言葉だと思います。 私がこの仕事を始めた頃は、 仕事は盗んで覚えろ 1度聞いたことは聞きに来るな そのくらい自分で調べろ と言われることが普通でした。

確かに、苦労して覚えたことは忘れないというのもありますが、仕事となるとそれでは間に合わないこともあります。 誰かのアウトプットで情報共有をして、それに少し工夫を加えて更に発展させるほうがみんな幸せになっていくかなと最近思うようになってきました。

何度も同じことを聞く人、工夫しないで言われたことしかできない人は今もダメだと思いますが、教えるにしても仕事を取られないように肝心なところは教えない、自分にしかできないことを作るといった風潮は昔はありました。

これだけ世の中に色んな情報が出回ってる現代ではそれは無意味なことで、むしろ自分が最初に言い出したことを自慢にするくらいのほうがいいと思います。

ブログからの抜粋

アウトプットは連鎖し、繋がっていきます。
たくさんのエンジニアが、自分がインプットした知識を消化しアウトプットすることで、また別のエンジニアがそのアウトプットをインプットして、そうしてエンジニアの世界はどんどん盛り上がっていくはずです。でも今はまだ道半ばです。もっともっとみんなでアウトプットして、アウトプットを連鎖させて、エンジニアが楽しい世界にしていきたい。僕はそう思います。
今日のイベントのハッシュタグは #cmdevio2017 です。ぜひSNSやブログでフィードバックしてください。そして皆さんが今日のイベントで何か得て頂けたのならば、それもSNSやブログでアウトプットしてほしいです。
僕たちみんなで、エンジニアの世界を盛り上げていきましょう。

他にもセッションがたくさんあったので、続きはまた

スパムメールを受け取ったので

メアドから違うことはわかるんですが、ここはあえて本文にツッコんでみます

アマゾンから

差出人:Amazon Jp Service@Amazon.Jp 件名:アカウントが一時停止

残念ながら、あなたのAmazon-Jpアカウントは無効になります。

これは、さまざまな理由で発生します。たとえば、日本国外のユーザーがあなたのアカウ 
ントに接続している場合。

日時:行進 06, 2017,
国:七面鳥
オペレーティング·システム:Windows

あなたが最近Amazon-jpアカウントにサインインしておらず、誰かがアクセスした可能性 
があると思われる場。

ここであなたの情報を更新してください。


https://amazon.co.jp/ 
<http://vitalelectrocomp.com/shop/system/helper/lp2045cd4/jss/>

リンクをクリックできない場合は、下記のアドレスをコピーしてブラウザに貼り付けてく 
ださい:

ご不明な点がございましたら、お気軽にお問い合わせください。

宜しくお願いします、

「更新」ってなんだと思ったけど、Marchか.. 「七面鳥」って国があるんですねと思って調べてみたら turkey country=トルコだった いつの間にトルコから…

Apple Storeから 差出人:AppIe lnc IpunesJerpunes@nindya-matapimpong.com 件名:あなたの体のアカウントを確認してください。

** <http://www.apple.com/apple-touch-icon.png>

Apple Store

拝啓、
私たちは、あなたのアカウント情報の一部が誤っていることをお知らせしたいと思いま 
す。私たちは、あなたのアカウントを維持するためにお使いのApple ID情報を確認する必 
要があります。 下のリンクをクリックしてアカウント情報を確認してください。:

*マイアカウント確認 >* <http://bit.ly/applesect>


私たちは24時間以内にあなたからの応答を受信しない場合は、アカウントがロックされま 
す。 Appleチーム
My Apple ID|サポート|プライバシーポリシー
Copyright © 2017 Apple Inc. 全著作権所有。

<http://bit.ly/2iZykxN> <http://bit.ly/2iZykxN> __

    _Apple inc_  | _Customer Support_  | _FAQ_  | _Gift Cards  | __Contact Us_

Apple 差出人:Apple badik@thanglongtabac.vn 件名:お使いのApple IDはiCloud上にログインするために使用されてきました



            
        推定の :     
        お使いのApple ID (*メールアドレス*) WebブラウザからのiCloudにロ
    グインするために使用されてきました。  
        
    日時: 2016年11月19日, 13:21 PST
    ブラウザ: Firefox
    オペレーティング・システム: Windows
        
        上記の情報は見覚え場合は、このメッセージを無視することができます。     
        あなたはiCloud上に最近署名していないと、誰かがあなたのアカウントにアクセス
    したかもしれないと思うなら、あなたのApple IDのパスワードをリセットすることを
    お勧めします ここで <http://appleid.apple.com.sign-ref.info/> または、下のリ
    ンクをクリックして.

    Manage Apple ID > <http://appleid.apple.com.sign-ref.info/>    
        敬具  
        Appleサポート   

    Apple ID <http://appleid.apple.com.sign-ref.info/>| サポート
    <http://appleid.apple.com.sign-ref.info/>| 個人情報保護方針
    <http://appleid.apple.com.sign-ref.info/>
    Copyright © 2016 Apple Inc. 1 Infinite Loop, Cupertino, CA 95014, United
    States. <http://appleid.apple.com.sign-ref.info/>無断複写・転載を禁じます。

OSはまず、Windowsは使ってないんですが… アップルもアメリカの会社ですが、日本法人もあるのでもう少しまともな日本語書くでしょう…

いずれにしても、メアド見れば一発で偽物とわかるものでした