Linuxサーバーの構成を自動化する方法は?


25

Linuxサーバーの構成を自動化する方法はありますか?FTPサーバーだけでなく、いくつかの新しいビルドサーバーのセットアップに取り組んでいます。できるだけ多くのプロセスを自動化したいと考えています。

これは、これらのサーバーのセットアップと構成を簡単に再現可能な方法で行う必要があるためです。このプロセスを可能な限り自動化すると、将来必要に応じて簡単に繰り返すことができると考えました。

基本的に、サーバーに必要なのは、OSといくつかのパッケージをインストールすることだけです。セットアップについて過度に複雑なことはありません。

それで、このプロセスを自動化する方法はありますか(または、少なくともある程度)?

編集:また、Kickstartを使用するとします。デフォルトのUbuntuリポジトリを削除し、ローカルにある.debファイルのコレクションからパッケージをインストールする方法はありますか?


どのディストリビューションをインストールしましたか?それは次のステップを決定するのに役立ちます
eyoung100 14

ただし、自動化タスクには時間がかかることに注意してください。10台未満のホストをインストールする予定の場合、タスクを実行する価値がない場合があります。
アルケマール14

最近、saltstackが提供する機能について学びました(Githubで最も貢献されたリポジトリ)。awsなどのサービスで新しいサーバーを作成し、構成、設定、ファイルの書き込み、リモートシェルアクセス、バルクシェルアクセスを展開するためのツールを提供しているので、ぜひご覧ください。アクセス制限も。あなたがやらなければならないことはほぼすべてのようです。新しいサーバーのセットアップをAnsibleに誓う仲の良い友達がいますが。
ThorSummoner 14

あなたとmattdmに+1を送りました。HotNetworkの質問でこのフォーラムが表示されるまで、このフォーラムが存在することを知りませんでした。聞いてくれてうれしくて、とてもよく答えられました
サイラスシーブルック14

回答:


36

はい!これは大したことであり、信じられないほど一般的です。そして、2つの基本的なアプローチがあります。1つの方法は、たとえばFedora、RHEL、またはCentOSのキックスタートで使用されるように、スクリプト化されたインストールを使用することです。Fedoraインストールガイド:Kickstart Installationsでこれを確認してください。単純なケースでは、これで十分かもしれません。(これを例として考えてください。他のディストリビューションにも同様のシステムがありますが、私はFedoraで作業しているので、それは私がよく知っていることです。)

他のアプローチは構成管理を使用することです。これは大きなトピックですが、Puppet、Chef、Ansible、cfengine、Saltなどに注目してください。この場合、非常に基本的な汎用キックスタートを使用して最小限のマシンをプロビジョニングし、構成管理ツールを使用してそれを適切な役割に移行します。

ニーズとインフラストラクチャが成長するにつれて、これは非常に重要になります。すべての変更に構成管理を使用すると、最初のインストールだけでなく、現実の世界との対話によって引き起こされる避けられない微調整と修正を導入するときにシステムの進化した状態を再作成できます。

このプロセスを可能な限り自動化すると、将来必要に応じて簡単に繰り返すことができると考えました。

あなたは絶対に正しい軌道に乗っています-これがプロのシステム管理の基本原則です。ミームイメージもあります。

すべてを自動化

多くの場合、最初のセットアップは適度に困難であり、一部のより高度なシステムには大きな学習曲線が存在する可能性がありますが、それ自体は永遠に費用がかかります。ほんの数個のシステムしかない場合でも、真夜中に大災害が発生した場合、または休暇中にシステムを再作成する際にどれだけの作業をしたいかを考えてください。


1
まことにありがとうございます!これらすべての調査を開始します。
user1617942 14

Cobblerについては言及しませんでした。
ブライアン14

@staticxはい、これは包括的なものではありません。プロビジョニングシステムには、Cobbler、Foreman、Satellite / Spacewalk、FAI、Razorの全世界がありますが、クラウドの分野にも進出していません。
mattdm 14

@ChrisKハ、私は同じことを言うでしょう;)
ウィリアム・エドワーズ14


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.