『クラウド時代のエンジニアの役割〜AWSを使い続けて気づいたこと〜』#DevKan
2015.07.24にあった表題のDevLove関西の勉強会に参加してきました。
クラウドがアーキテクチャを変え、エンジニアの役割も変わる
佐々木拓郎さん NRIネットコム株式会社
www.slideshare.net
概要
クラウドファーストからクラウドネイティブへ
オンプレミスの提案だけだと「なんでクラウドの提案もないのか?」というようなことを訊かれるクラウドファースト時代になってきている。
データとその処理をサーバで変換する必要があった3-Tierのクラウドアーキテクチャから、データやストレージまたは計算処理(Lambda)に対して直接操作ができる2-Tierアーキテクチャが実現されつつある。
サーバの構築がほぼ不要で、パーツの組み合わせだけでサービスの構築が可能
Lambdaで計算処理はサーバレスでできるようになったが、APIとして利用するためにはサーバが必要だった。。。
Amazon API Gateway
が、「Amazon API Gateway」がLambdaやAWSの各サービスをHTTP/sのProxyとして呼び出せるAPI作成支援サービスとしてつい先日登場した。
とんでもないインパクトで、フレームワークの登場とにている→コードを記述する量がとんでもなく減る
クラウド時代のエンジニアの役割について
インフラなども含めてコード化できることが必須かつ、コード化される範囲が広がるので、その上に何を付加できるのかといったアーキテクチャの知識も必要になってくる
赤魔道士的な立ち位置
黒も白もつかえる器用貧乏 → クラウドという強力なアイテムがあると何倍も力が増幅される?
ガチガチではなく、変化を楽しんで対応出来る能力を身につけよう
アプリエンジニアからクラウド専用のインフラエンジニアになってみて
佐藤瞬さん NRIネットコム株式会社
www.slideshare.net
概要
AWSを触り始めて感じたのは、ドキュメントや手厚いサポートなどの「情報量の多さ・取得のしやすさ」
つまったのは、ネットワーク周り
ほとんどがプログラマブルに構築できる → コードか必須になってきている
AWS構築のコード化
CloudFormation 便利。テンプレートのJSONつらい (たしかにそう。。。)
kumogataでCloudFormationのテンプレートをrubyで記述
OSミドルウェアの構築
- Chef クライアントが必要
- Ansible Yamlがつらい
そこでItamaeです。ChefとAnsibleのいいとこ取り
デプロイのコード化
fabricとのこと。なぜcapistranoではないんだろう?
運用のコード化
hubotとslackでChatops。セキュリティの観点からあまり深いことはやらせていない
こちらの発表でも「API Gateway」の衝撃について触れられてました。
「楽しそう。でもインフラエンジニア廃業かな。。。」
これからのサービスの構築
まずサーバレスで構築(フロントエンド/モバイル+API Gateway/Lambda)
サーバレスでは厳しい面について、EC2上にアプリケーションサーバ
- ユーザ認証
- RDSとの接続
- クローズドなネットワーク
インフラエンジニアとしては、EC2上にアプリケーションを構築する上で、何がサーバレスで問題だったのか、どうやったら解決するか、アプリケーションにはどのような要件が必要かという現状を把握できることが必要。
感想
クラウドファーストだけでなく、クラウドを徹底的に活用すること前提の時代もすぐそこまで来ているのだなーと感じました。
自分はアプリエンジニア寄りなので、APIgateway及びLambdaは早く触らないといけないと思います。
Dockerの勉強会でも言われていましたが、技術に依存してしまうのではなく変化を楽しんで適応する能力が一番重要だとのことでした。
そのためにはどの方向から攻撃が来ても受け流せる猫足立ちを身につけないとですね。
インフラエンジニアでもフロントエンドを勉強し始めているとのこと。
ほんとに隣接した領域の知識も必要になってきている感じです。
お二人ともありがとうございました。
とりあえず紹介されていた本買ってみよう。