kl-labo / young

0 stars 14 forks source link

030 ansible #46

Closed shindooo2 closed 8 years ago

shindooo2 commented 8 years ago

成果物をひと通り作成しましたので、プルリクさせていただきます。

murayama333 commented 8 years ago

タカシブル。レビューしました。

文章良い感じやったから、編集なしでマージしました。

Ansibleも未経験でしたが、タカシブルのドキュメントを参考に、 Mac + Ubuntu に Apacheインストール、Apache起動まで確認できました。

playbookの構成定義もYAMLで定義できるんすね。 シンプルで良いかんじでした。

最近は仮想環境でLinuxサーバ構築することが多いですが、 Vagrantでも簡単なミドルウェアのセットアップ(プロビジョニング?)できるし、 Dockerでミドルウェアのコンテナ化(村山語)してインフラも準備できるし、 Chefとか、Ruby界隈だとCapistranoとか、 何を使うのが正解なんでしょうね。

ちなみに大西さんはHeroku使うそうです。Gitでデプロイするだけってさ。

trash717 commented 8 years ago

大西きましたよ。

Bitbucket→wercker→Heroku ッて感じでデプロイさせてるね。

werckerは、Bitbucketなどのコミット監視して、決まった作業をすることが出来るサービスね。 ※調べたらすぐ見つかるからぐぐってね。

案件で使ってるやりかた以下です。 【前提】 リポジトリに以下ブランチを作成してる。 feature/xxxx ブランチ #開発作業用ブランチ masterブランチ #ステージング用 releaseブランチ #本番リリース用

例1)検証環境へデプロイ 開発ブランチからmasterブランチへマージ  →werkerがmasterブランチをフック   →Heroku(ステージング環境)のmasterブランチにマージ    →Herokuデプロイされる

例2)本番環境へデプロイ masterブランチ(または開発ブランチ)から、releaseブランチへマージ  →werkerがreleaseブランチをフック   →Heroku(本番環境)のmasterにpush    →Herokuデプロイされる

って感じかな。 Herokuならではって感じですね。 AWSには、普通にCapistrano使っってるよ!

shindooo2 commented 8 years ago

レビューありがとうございました。

たしかにサーバ構築周りのツールもいろいろあって悩ましいです。 同種のツールを規模・用途で使い分けたり(中小規模はAnsibleで大規模はChef?)、 ツールの組み合わせを考えたり(Vagrant × Ansible × Docker? Chef × Capistrano?) する必要があるんでしょうね。

それも含めて今後もいろいろ調べていきたいと思います。

大西さん とりあえずwerkerぐぐりました。CIの外部サービスってけっこうあるんですね。あまり知りませんでした。 実際の案件でスマートに運用されているようで興味深いです。さすがスマートさん。