page_adsence

2018年2月24日土曜日

デブサミ2018に行ってきました

去年に引き続き、デブサミに行ってきました。
山手線が混んでいて、行くだけで疲れましたが・・・。
今いる会社はレポートさえ書けば平日でもこういったイベントに行かせてくれるので非常にありがたいです。
早速聞いてきたセッションの概要と感想を書いていきたいと思います。

技術選定の審美眼

結論

技術の変化は振り子ではなく螺旋である。
その差分を読み取る能力と、それを可能にした技術が重要。
すべてを習得するのは不可能なので、スルーするかしないかを決める。
コスト構造が変わるものはスルーしない。

感想

初めて和田卓人さんのセッションを聞きました。
自分はそんなに聞き取り能力高くないのですが、非常にわかりやすいセッションだった気がします。
このスライドに関しては初演ということもあり、時間切れで最後まで聞くことはできませんでしたが、
非常に面白かったですし、新しい技術が次々出てくる時代で、どうやって取捨選択すればいいのかを迷っていた自分にはとてもよい内容でした。

データを活かす組織の作りかた、事業に寄り添う分析・機械学習基盤の育てかた

結論

データ分析・機械学習基盤を作るための3ステップ
- まずは存在するデータを分析してみる
- 難易度低めところに部分的に導入してみる
- 考えを広げ、価値のあるデータの集め方や、それらを使って新しい価値の想像をしたりといい循環が回るようにする

感想

もともとデータを活かす文化が会社にはあって、それを土台にしつつデータ分析基盤を作ったというような印象。
当然データ基盤だけ作っても意味はないので、データを使う文化を作っていくのはとても大変そうだけど、一番大事なことかなと。

Spinnakerで実現するデプロイの自動化

結論

学習コストは高いけど結構便利。
Blue/Greenデプロイ出来てないなら試してみて。
バグがあったり、コンポーネント間の関係が複雑で原因特定大変だけど、いいツール。

感想

Spinnakerというツールはここで聞くまで知らなくて、面白いツールあるんだなーと。
まだまだバグがあるみたいですが、活用事例が出始めているので、これから使ってみてもいいのかなと思いました。

マルチクラウドで構築する大規模解析サービス~戦略とポイントについて

結論

各クラウドベンダーの特徴を把握して、いいとこ取りが出来ればマルチクラウドはあり。
クラウド間の差分を吸収する統一的なインターフェースを利用することで、利用者がマルチクラウドであることを意識しないといけないケースを減らす。
ハマりどころがあるので、注意が必要。

感想

マルチクラウドって複数クラウドベンダーをちょっとずつ使っているのかと思いきや、AWSとGCPで同じような形で構成していて、どっちかのクラウド環境が落ちても、もう片方のクラウド環境で対応することが出来て、高可用性を実現しているとのこと。
最初の環境構築の部分はすごく大変そうだけど、構築してしまえば結構いけそうな感覚が持てた。
デプロイにはSpinnaker使っていて、意外と行けているらしい。

将棋プログラムPonanzaにおける強化学習、ディープラーニングとその先

感想

ちょっと内容が難しすぎて、機械学習をまだ勉強できてない身では難しすぎて全然話についていけなかったです・・・。
とりあえずAlphaGoZeroすごいってことと、将来的にはAIを作るAIが出てくるのではっていうことでした。

総括

選んだセッションのせいというのがあるとは思いますが、結構Dockerを本番環境まで当たり前のように使っている会社が多くなってきたなーという印象を持ちました。
Dockerは手元の開発環境で使うにはお手軽で非常に便利なのは実感出来ているのですが、セキュリティとかをどう考えればいいのかがよくわかっていなくて、未だに本番環境では使えていません。
この辺はもっと勉強しないといけないなーと。

去年に続き今年もデブサミに参加したのですが、やっぱり人がすごいいっぱいいてめちゃくちゃ疲れました・・・。
でも、新しい発見とか勉強になったセッションもあったので、年一で刺激を受けるにはいい場所だと思います。
来年も行けるかどうかはわからないですが、とりあえず来年のデブサミまで一年間頑張って勉強していこうと思います。
それでは。

2018年2月14日水曜日

Amazon Linux 2のイメージを使ってみる

背景

現在業務でAmazon Linuxを使っているのですが、Amazon Linux 2に移行したらどうなるのかなーと思ったのと、
個人的に会社の環境をコンテナ化していったらどうなるかなーというのを試してみたかったのがきっかけ。
そのためにまず Amazon Linux 2 のイメージを落としてみようと思いました。

とりあえず調べてみる

どうやらAmazon Linuxのイメージの取得方法は2種類あるらしい。
最近DockerHubから落とせるようになったって話題になっていたので、DockerHubから落とせるのは知っていたのですが、
AWS ECRからも落とせるみたいですね。

それぞれ、ダウンロードする為に必要なものは下記の通り。

  1. AWS ECR からDockerイメージをダウンロードする方法
    -> AWSのアカウントが必要

  2. DockerHubから取得する方法
    -> DockerHubのアカウントが必要

AWS ECRからダウンロードするのはAWSのアカウントが必要になるので、会社で試しにやってみたのですが、結構面倒でした。
DockerHubで落としてくる方が断然楽なので、こちらをオススメします。

やってみる

DockerHubのアカウントの発行に関しては、事前に済ませている前提で進めます。

  1. ターミナル上でDockerHubにログインする

    docker login
    

    ログイン時のユーザー名を入力する

    Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one.
    Username: (DockerHubのユーザー名。メールアドレスではない。)
    

    ログイン時のパスワードを入力する

    Password: (DockerHubのログイン時に使用するパスワード)
    

    認証情報が合っていればログインに成功した旨が表示される

    Login Succeeded
    
  2. DockerHubからimageをpullしてくる

    docker pull amazonlinux
    
  3. Amazon Linux 2 のコンテナに入ってみる

    docker run -it amazonlinux /bin/bash
    
  4. OSの確認

    # cat /etc/os-release
    NAME="Amazon Linux AMI"
    VERSION="2017.09"
    ID="amzn"
    ID_LIKE="rhel fedora"
    VERSION_ID="2017.09"
    PRETTY_NAME="Amazon Linux AMI 2017.09"
    ANSI_COLOR="0;33"
    CPE_NAME="cpe:/o:amazon:linux:2017.09:ga"
    HOME_URL="http://aws.amazon.com/amazon-linux-ami/"
    

以上でAmazon Linux 2のイメージをダウンロードしてくることが出来ました。
AWS ECRからダウンロードするのは面倒だけど、DockerHubから落としてくるのはめっちゃ楽でした。
あと、Amazon Linux 2って言っているけど、ec2-userがいるわけでもないし、普通にalpineのイメージと大差ない感じでした。
まぁベースイメージとしてはこんな感じなのかなぁという気がしないでもない。