あなたはインフラエンジニアですか?...

Post on 27-Jun-2015

395 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

あなたはインフラエンジニアですか?いいえ、私はソフトウェアエンジニアです。~ Let’s work fun by “Infrastructure as Code” !! ~

みなさん

AWSの仕事してるからって、 僕のことインフラの人(になりたい)だと

思ってませんか?

No

僕が今 やっていること 取り組んでいること

AWS環境構築・運用 時々、見積りとか資料作りとか

もちろんやってます。 黒い画面を見てることも多いです。

でも、本当にやりたいことは そうじゃない

AWSは手段であって、

目的ではない

やりたいことはただこれだけ、

良いアプリケーションを楽しく作りたい

それ以外のことは、 できるかぎりやりたくない

それ以外って?

それ以外って?

• 障害対応

それ以外って?

• 障害対応

• 環境構築・運用(※内容によっては楽しいこともある)

それ以外って?

• 障害対応

• 環境構築・運用(※内容によっては楽しいこともある)

• 手順書やドキュメントの作成、メンテナンス

それ以外って?

• 障害対応

• 環境構築・運用(※内容によっては楽しいこともある)

• 手順書やドキュメントの作成、メンテナンス

などなど、本質的には あまり価値の無い、つまらないこと

え?それがメインの仕事じゃないの?

その通りです。 それがやりたくないから、 積極的にやっているんです。

意味不明?

「やりたくないから」って、 やらなければ、改善の方法も見えてこないんです。

"「忙しいから」「わからないから」って、 何も変えなければ一生そのままなんです。

やり方さえわかれば、

それを「変える仕組み」が作れる!

"そして、「そのために…」と思えば モチベーションが上がる!

インフラレイヤにおいて、それを実現するのが

インフラレイヤにおいて、それを実現するのが

インフラレイヤにおいて、それを実現するのが

ならできる!

ならできる!

• 障害に強いシステム

ならできる!

• 障害に強いシステム

• 迅速なインフラ構築

ならできる!

• 障害に強いシステム

• 迅速なインフラ構築

• インフラの敷居を下げる様々なツールや機能

ならできる!

• 障害に強いシステム

• 迅速なインフラ構築

• インフラの敷居を下げる様々なツールや機能

• プログラムによるインフラの管理

ならできる!

• 障害に強いシステム

• 迅速なインフラ構築

• インフラの敷居を下げる様々なツールや機能

• プログラムによるインフラの管理

• 自動化!自動化!自動化!

ただ「AWSをみんなで使おう!」 って言ってもそう簡単にはいかない。

それに、 AWSで環境を作っただけでは、 アプリケーションは動かない

ならできる!

ならできる!

• ミドルウェア導入・設定の自動化

ならできる!

• ミドルウェア導入・設定の自動化

• 手作業によるミスの排除

ならできる!

• ミドルウェア導入・設定の自動化

• 手作業によるミスの排除

• サーバ環境のバージョン管理

ならできる!

• ミドルウェア導入・設定の自動化

• 手作業によるミスの排除

• サーバ環境のバージョン管理

• 抽象化!抽象化!抽象化!

つまり、アプリケーション以外は、

全て抽象化、自動化して、

誰でも簡単、効率的に 扱えるようにしたい。

それができれば、

やりたくないことは、 (ほとんど)やらなくて良くなる!

こんな感じ

EveryoneMe

EC2 Instance Contents

自動テスト

こんな感じ

EveryoneMe

EC2 Instance Contents

用途に合ったテンプレートを取得。 必要な変更のみを加えてコミット(push) 書き換えるのは基本的にJSONだけで良い。

自動テスト

こんな感じ

EveryoneMe

EC2 Instance Contents

用途に合ったテンプレートを取得。 必要な変更のみを加えてコミット(push) 書き換えるのは基本的にJSONだけで良い。

変更を検知

自動テスト

こんな感じ

EveryoneMe

EC2 Instance Contents

用途に合ったテンプレートを取得。 必要な変更のみを加えてコミット(push) 書き換えるのは基本的にJSONだけで良い。

変更を検知

テスト用EC2自動テスト自動テスト

こんな感じ

EveryoneMe

EC2 Instance Contents

用途に合ったテンプレートを取得。 必要な変更のみを加えてコミット(push) 書き換えるのは基本的にJSONだけで良い。

変更を検知

テスト用EC2

テストは既に通っているので、 妥当性のみを確認すれば良い

自動テスト自動テスト

こんな感じ

Region

Availability Zone

Availability Zone

EveryoneMe

EC2 Instance Contents

用途に合ったテンプレートを取得。 必要な変更のみを加えてコミット(push) 書き換えるのは基本的にJSONだけで良い。

変更を検知

テスト用EC2

テストは既に通っているので、 妥当性のみを確認すれば良い

自動テスト

一発構築・簡単管理!

自動テスト

今やっている・できていること

Me

EC2 Instance Contents

変更を検知

テスト用EC2

より抽象化された、扱いやすいものにするために 書き直し、及び新しいレシピを作成中

自動テスト自動テスト

絶賛リファクタリング中

まだちょっと安定してない

複数PJを効率よく回す方法を模索中

簡単なJSON or プログラムを 書くだけで誰でも簡単に インフラが扱えるように!

そうなったら、きっと毎日楽しく アプリケーションの開発だけに

集中できるはず! "

あと、効率が良くなるので、 たぶん儲かるはずw

みなさんにお願いしたいこと

仕組みを分かってくれとは言いません。 (もちろん、興味があれば一緒にやってほしいです!) "ただ、どんなアプリケーションでも カバーできるわけではありません。 "クラウドの特性や、 その上でアプリケーションを効率的に正しく動かすために 最低限必要なアーキテクチャへの 理解だけいただけると幸いです。 (キーワード:冗長化、分散処理、疎結合、ステートレス等)

ありがとうございました! 偉そうなこと言ってすいません…

top related