web-dev-qa-db-ja.com

単純なWindows + Linuxサーバーのプロビジョニング? Chef / Puppet / Ansibleなど

私は主に開発者であり、パートタイムのDevOpsです。私のプロジェクトのためにあちこちでサーバーを管理します。

  • プロジェクトの今後のWeb /アプリ/データベースサーバーのプロビジョニングを自動化したい
  • WindowsサーバーとLinuxサーバー(VPS、クラウド、専用)の両方を組み合わせて管理しています

調査したChef/Puppet/Ansibleについて簡単に説明しました。そして私は何かを見つけたいと思っています:

  • 習得と理解が簡単です。複雑な技術を理解するために何週間も投資したくありません。
  • 理想的には、構成を保持するためにサーバー(「マスターサーバー」)を必要としません。
  • WindowsおよびLinuxサーバーのプロビジョニングをサポートします
  • 開始するための適切なドキュメントが付属しています

どのツールが最適かについて誰かアドバイスはありますか?

ありがとう

8
Andrew

私はあなたとほぼ同じ要件を持っており、このトピックについて多くの調査を行いました。間違いなくPuppet/Chefを使用できますが、学習曲線は高くなります。また、私が見たPuppet/Chefのレシピは、実際にはWindowsを完全にサポートしているものはほとんどないため、Linuxで使用できるWindows用に独自のレシピを作成する必要があります。

Linux管理の場合、Ansibleはすべてのニーズを満たします。使用、インストールが非常に簡単で、中央サーバーを必要としません。私はOpenSSHでCygwinをインストールすることにより、WindowsでAnsibleを使用することに成功しました。サーバーをbootstrap)するために、いくつかの単純なバッチ/ PSスクリプトを使用してCygwinのインストールと構成を自動化できます。その後、実行中の場合はAnsibleを使用できますPython。WindowsはAnsibleで実際にはサポートされておらず、もちろんバグがあるかもしれませんが、私はそれを正常に使用できました。開発者であれば、Ansibleを理解するのはかなり簡単です。問題が発生した場合のソースコード。開発者はバグに関しても非常に敏感です。パスに関連して見つけたバグを送信しましたが、1日で修正されました。Windowsでいくつかの問題が発生することは間違いありませんが、結局のところ、Chef/Puppetに投資する時間とお金がないとすれば、それでも簡単です。

編集:SaltStackがWindowsをサポートするようになりました。 Ansibleに似たYAMLファイルで動作するようです。今すぐWindowsをチェックする価値があります。

5
giulianob

私はPuppetとChefの両方を使用しました(申し訳ありませんが、ansibleはありません)。 Puppetが上記の要件を満たしていることを確信してお伝えできます。

  • 学ぶのは簡単です。あなたは1日か2日で基本を学ぶことができます。開始 人形のドキュメント
  • Puppetは、スタンドアロンだけでなくマスター/サーバーでも実行できます。好きなのを選びな。
  • Puppetは、ドキュメントに従ってLinuxとWindowsの両方を処理できます。私は個人的にWindowsでそれを試していません。
  • 人形のドキュメントは本当に素晴らしいです。また、JamesTurnbullによるPullingStrings with Puppetのような本は、非常に基本的なものから負荷分散などの高度なものまで、人形を正しく理解するのに役立ちます。

私はpuppetを使用して、物理サーバーとクラウドデプロイ(AWS)の両方を処理しましたが、非常に簡単で信頼性があります。

1
Aditya Patawari