Posted at

新人でも出来たRancher + AWS体験

More than 1 year has passed since last update.

弊社で開催されたRancherもくもく会に参加してきました。

RancherとかAWSとかよくわからないクソ新人でも、ちょー簡単にいんたーねっつに公開できたのでびっくりです。

※最初に書いておきますが、セキュリティとか全然わからずうおーってやってるので、できたーって思ったらEC2のインスタンスぶっ壊してください。

多分大丈夫だと思いますけど責任とれないです…。


できたこと


  • ブラウザでアクセスできるサービスがぽちぽちするだけで複数つくれた

    (このままじゃ実用はできないけど)


事前準備


  • Githubのアカウント取得(認証に必要)

  • AWSのアカウント取得

  • AWSのEC2FullAccess権限を持ったIAMユーザーを作成してアクセスキーとシークレットキーをゲットしておく


ていうかそもそもRancherって

Rancher JPによると


Rancher とは米国 Rancher Labs 社が主体として開発しているオープンソースのコンテナ管理プラットフォームです。

商用環境を想定し複数ホストから構成されるクラスタの管理、稼働するコンテナのライフサイクル管理、 様々なアプリケーションのテンプレート管理といった機能を有しています。

また、既存のコンテナオーケストレーションツールである Docker Swarm, Kubernetes, Mesos などをサポートしており Rancher を利用することでコンテナサービスにおけるインフラストラクチャ〜アプリケーションといった 幅広いスタックを容易に管理することが可能になります。


よくわからない単語しかない。

適当にまとめるとこんな感じっぽい。

・ RancherはコンテナをWebUIから作成、削除、起動、停止とか管理できる

・ クラウド上にRancher環境を楽ちんに構築できる

あと、docker単体だと

・CUIなので面倒

・ネットワークの接続とかつくるのも大変

・権限管理とかめんどい

ってなんか色々面倒らしいけど、その辺よしなにやってくれるし、GUIでつかえるし、ロードバランサーとかビルトインされてて強いらしい。

そもそもdockerがわから(ry


流れ


  1. try.rancher.comにアクセスする

  2. ホストを追加する

  3. カタログからスタックを追加する

  4. ブラウザからアクセス


try.rancher.comにアクセスする

https://try.rancher.com

本来であれば、どこかのLinuxにRancherをインストールしてホストとならないといけないところを、ここがRancherホストの代わりをやってくれるらしい。

そして日本語が選べる!

スクリーンショット 2017-02-01 22.46.54.png

てきとうにGithubで認証すると次の画面へ。


ホストを追加する

スクリーンショット 2017-02-01 22.49.19.png

ホストを追加しろという警告に従ってホストを追加する。

スクリーンショット 2017-02-01 23.04.55.png

今回はEC2を選択。

リージョンはとりあえずap-northeast-1で、用意しておいたアクセスキーと秘密キーを入力して次へ。

間違ってもAWSのrootのアクセスキーとか渡さないでください…。

IAMでちゃんと権限を制限したユーザーのアクセスキーを渡しましょう。

スクリーンショット 2017-02-01 23.10.20.png

(VPC/サブネットを見せていいのかすらわからない初心者)

VPC/サブネットは適当に上の方えらんでーって言ってたので適当に上の方を選ぶ。

ここ変えるとどうなるんですかね…。

スクリーンショット 2017-02-01 23.17.14.png

セキュリティグループはそのまま。

ちなみに公開されるポートは


From the rancher server to TCP port 22 (SSH to install and configure Docker)

If you are using the IPsec networking driver, from and to all other hosts on UDP ports 500 and 4500

If you are using the VXLAN networking driver, from and to all other hosts on UDP ports 4789


スクリーンショット 2017-02-01 23.22.42.png

名前は適当にrancher-hostにでもしとく。

数もてきとうに2つくらい作っちゃう。(EC2インスタンスの数です)

ほかはデフォルトで。

AWSの無料枠に気をつけて…気をつけて…。(この設定だと大丈夫)

そして作成!!!!

スクリーンショット 2017-02-01 23.25.25.png

スクリーンショット 2017-02-01 23.32.18.png

無事に生まれました。


カタログからスタックを追加

スクリーンショット 2017-02-01 23.35.55.png

いっぱいあるけど、弊社がアレしてるowncloudをとりあえずいれてみる。

スクリーンショット 2017-02-01 23.37.49.png

ありました。詳細を見るをクリック。

スクリーンショット 2017-02-01 23.39.32.png

デフォルトでそのまま作成してみる。

スクリーンショット 2017-02-01 23.42.31.png

調子にのってwordpressも入れちゃう。

ポートはかぶらないよう適当にかえる。

スクリーンショット 2017-02-01 23.56.19.png

無事追加できました。

別にホストが1つでもいい感じにコンテナ乗っけてくれます。

でも、このままではつながらないです。


セキュリティグループの編集

AWSのセキュリティグループrancher-machineを編集して、ポートを開けます。

スクリーンショット 2017-02-02 19.58.30.png

先程追加したowncloud(80)とwordpress(8888)を追加。

マイIPにしとけばとりあえずいいかな…。


ブラウザからアクセス

スクリーンショット 2017-02-02 20.00.53.png

ここのホストIPとポートでアクセス。

スクリーンショット 2017-02-02 20.01.24.png

動いてる!すごい!

スクリーンショット 2017-02-02 20.11.20.png

wordpressも行けました。


感想

こんなにかんたんにできるなんて、すごい時代ですね…。

でも、このままじゃ使えないですよね…。


疑問

・例えばこのままowncloudにデータを突っ込むとどこに保存されるのか?S3のバケット??どこで見れるの…。

・保存するとして何GBまでいけるの?どこで変えられるの…。

・セキュリティとか大丈夫なの?デフォルトのセキュリティグループrancher-machineでも特に問題ない…?

すごいけど実際使うってなったとき、どういう設定にすればいいのかイマイチよくわかんないなーって感じです。