私たちのチームは、さまざまな Solaris および Linux サーバーを所有しており、インストールとカスタマイズされたインストールの場所の共通レイアウトを作成したいと考えています。基本的に、root
盲目的にどこにでもインストールできるアクセス権は与えられていませんが、多くのアプリをローカルまたはディレクトリ フォルダーにインストールするのに十分なアクセス権はあります/opt/
が、ほとんどのサーバーでインストールする必要があります。
私が実現したいのは、たとえば、選択したサーバーがx-1.3.0
サーバーにインストールしないカスタマイズを含め、サーバー全体にインストールする共通のツール セットを同期するための共通ソリューションをセットアップすることです。y-prod
さらに、サーバー間で .ssh キーを設定および/または同期して、パスワードなしで相互に通信できるようにすると便利です。さまざまな .profile、.bashrc、および共通セットアップに必要な追加の .dot ファイルについても同様です。
root
私たちのチームにはこれらのサーバーへのブラインド アクセス権は与えられていませんが、ローカル/home/
または/opt/
フォルダーにインストールできるため、理論的にはサーバー設定の大部分をスクリプト化できるはずです。これを手動で行うことや、Ruby または Python でスクリプト化することは難しいとは思いませんが、すでにこれを実行するツールがあれば、この特定のタスクに関して巨人の肩に立つことは素晴らしいことです。
答え1
答え2
私は傀儡ただし、ルート アクセスがないと、システム パッケージのインストールでできることはほとんどない (ただし、そのことについては話していなかったかもしれません) という警告があります。
多くの人が考えているにもかかわらず、あなたはできるPuppet をユーザー アカウントから実行するのはそれほど苦労しません。何かを手動で開発するよりもはるかに苦労が少ないことは確かです。おそらく、インストール パッケージを配布する形式を処理するカスタム パッケージ プロバイダーを作成するのが最善でしょう。その方が、あちこちに詰め込む/opt
よりもクリーンです。exec
答え3
すぐに思いつくのは、2 つの選択肢です。
1) 「リファレンス」マシンを使用して初期インストールを行い、その後 /opt ツリー全体を rsync します。または
2) IT グループにソフトウェアをインストールする場所に NFS 共有を設定するよう説得し、それをターゲット マシンに NFS マウントします。
どこかの適切な NFS サーバー上にスペースを確保できると想定している場合は、2 番目のオプションをお勧めします。