GNU/Linux >> Linux の 問題 >  >> Linux

PowerShell の 1 対多のリモート処理に相当する Linux

まとめ

  • Ansible は、PowerShell に代わる強力な DevOps ツールです
  • グラフィカル インターフェースとしての RunDeck は便利です
  • RunDeck+Ansible を一緒に実行する人もいます

clusterssh

リモート コマンドを複数のサーバーに送信する場合、初心者には clusterssh をお勧めします

clusterssh をインストールするには Debian の場合:

apt-get install clusterssh

別の clusterssh チュートリアル:

<ブロック引用>

ClusterSSH は、XTermand SSH などの標準的な Linux ツールの Tk/Perl ラッパーです。そのため、ライブラリが存在するほぼすべての POSIX 準拠の OS で実行されます。Linux、Solaris、および Mac OS X で実行しました。Perl ライブラリ Tk (Debian または Ubuntu では perl-tk) と X11 が必要です。 :xterm と OpenSSH に加えて、プロトコル (Debian または Ubuntu では libx11-protocol-perl)。

アンシブル

複数のシステムを管理するためのリモート フレームワークに関しては、Ansible は Puppet の非常に興味深い代替手段です。より無駄がなく、SSH 経由で動作するため、専用のリモート エージェントは必要ありません (RedHat にも買収されています)

Playbook は、コマンド ライン オプションよりも複雑です。

ただし、Ansible の使用を開始するには、簡単なインストールと、クライアント リストのテキスト ファイルのセットアップが必要です。

その後、すべてのサーバーでコマンドを実行するには、次のように簡単です:

ansible all -m command -a "uptime"

また、出力は非常に適切にフォーマットされ、ルール/サーバーごとに分離されており、バックグラウンドで実行中にファイルにリダイレクトして後で調べることができます。

単純なルールから始めることができます。Linux で成長し、インフラストラクチャが大きくなるにつれて、Ansible の使用はより興味深いものになります。そのため、PowerShell よりもはるかに多くのことができます。

例として、私が書いた Linux サーバーをアップグレードするための非常に単純なプレイブック:

---
- hosts: all
  become: yes
  gather_facts: False
  tasks:
   - name: updates a server
     apt: update_cache=yes
   - name: upgrade a server
     apt: upgrade=full

また、包括的なポリシーを簡単に記述できる多くのモジュールが定義されています。

モジュール インデックス - Ansible ドキュメント

また、コミュニティによって既に作成された ansible ポリシーを検索するためのリポジトリの興味深い公式ハブ/「ソーシャル」ネットワークもあります。アンシブル ギャラクシー

Ansible も広く使用されており、FreeRadius セットアップ用に私が作成したこのプロジェクトのように、github で多くのプロジェクトを見つけることができます。

Ansible は無料のオープン ソース フレームワークですが、有料の Web パネル インターフェイスである Ansible Tower も備えていますが、ライセンスはかなり高価です。

現在、RedHat が買収した後、tower には AWX として知られるオープン ソース バージョンもあります。

おまけとして、Ansible は Windows サーバーを管理することもできますが、そのために使用したことはありません。

また、ネットワーク機器 (ルーター、スイッチ、およびファイアウォール) を管理することもできるため、自動ターンキー ソリューションとして非常に興味深いソリューションになります。

Ansible のインストール方法

ランデッキ

繰り返しになりますが、使いやすいが Ansible ほど強力ではないリモート フレームワークについては、Rundeck をお勧めします。

これは非常に強力なマルチユーザー/ログイン グラフィカル インターフェイスであり、日常の一般的なタスクの多くを自動化し、システム管理者やヘルプデスクの担当者に簡素化されたビューを提供することさえできます。

コマンドを実行すると、出力がサーバー/タスクごとに分類されたウィンドウも表示されます。

複数のジョブをバックグラウンドでシームレスに実行でき、後でレポートと出力を表示できます。

RunDeck のインストール方法

Web インターフェースとして Ansible+RunDeck を実行している人がいることに注意してください。すべてのケースがそのために割り当てられるわけではありません。

言うまでもなく、Ansible や RunDeck を使用することは、インフラストラクチャ ドキュメントのフォームまたは一部として解釈でき、時間の経過とともにアクション/レシピ/プレイブックを複製および改善することができます。

最後に、中央コマンド サーバーについて言えば、このタスクに合わせて 1 つ作成します。実は専門用語は跳び箱です。 「ジャンプ ボックス」を正しく設定すると、セキュリティが向上します。


インタラクティブに実行したい場合は、 terminator を使用できます これにより、コマンドを複数の端末にブロードキャストできます。

参照:複数のタブ/シェルで同じ Linux コマンドを同時に実行するにはどうすればよいですか?


pssh も使用できます (または parallel-ssh )、ホストのリストに接続し、すべてのホストでコマンドを並行して実行する SSH クライアントです。

$ parallel-ssh -i -H "host1 host2" uname -a
[1] 11:37:12 [SUCCESS] host2
Linux host2 3.19.0-25-generic #26~14.04.1-Ubuntu SMP Fri Jul 24 21:16:20 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
[2] 11:37:12 [SUCCESS] host1
Linux host1 3.19.0-25-generic #26~14.04.1-Ubuntu SMP Fri Jul 24 21:16:20 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

Linux
  1. LinuxにAnsibleをインストールしてテストする方法

  2. Linuxシステム管理者向けのAnsibleの謎を解き明かす

  3. Ansibleを使用してLinuxユーザーを作成する方法

  1. Linuxインタビューの質問トップ25

  2. Kali Linux に PowerShell をインストールする

  3. Kali Linux 2020.2 リリース (KDE &PowerShell)

  1. LinuxでAnsibleの役割を開発するための8つのステップ

  2. OracleLinux8にAnsibleをインストールする方法

  3. Linuxはロボコピーに相当しますか?