2017-02-16 8 views
1

私たちが知っているように、sshでリモートマシンを接続してから、誰かがセットアップタスクを実行します。このタスクでは、$ HOME/.ansible/tmpフォルダ(デフォルト設定は$ HOME/.ansible/tmpの下にありますが、これはcompatible.cfgファイルで変更できます)。デフォルトで到達可能なテスト方法を変更する方法

一時フォルダの作成に失敗した場合、誰かが安全な認証や許可の失敗を報告し、リモートホストに到達できません。

しかし、私のリモートマシンはLAN経由でシリアルコンソールからアクセスできます。一時フォルダを作成できません。デフォルトの到達可能なテスト方法を変更できますか?

また、LAN経由でシリアルコンソール経由でリモートホストを管理する方法を教えてください。

ありがとうございました。

+0

もしtempディレクトリを作成することさえできない場合は、この機械。シリアルコンソールを使ってLAN上で在庫を設定する方法の例はありますか? – SztupY

+0

@SztupY、思い出してくれてありがとう。はい、私はこれが多くの有能な力に制限があることを知っている、私はちょうどホスト名を設定するなどのいくつかの基本的なコマンドを実行したい、ビジネスIPアドレスを設定し、その後、私は通常の方法でアクセスすることができます。 – zhaorong

+0

@SztupY、私の考えでは、シリアルコンソールをテストするためにexpectモジュールを使用したいと思います。ログオンしているかどうか、設定されているコンソールユーザーとパスワードで直接ログインしてください。 – zhaorong

答えて

0

あなたのリモートボックスはAnsibleによって管理されるように準備する必要がある場合は、2つの方法があります。

1)rawモジュール問題のボックスには、SSH経由でアクセス可能で、任意のコマンドを実行することができる場合。このメソッドは、たとえばUbuntu 16イメージにPython2をインストールして、Ansibleがsetupと他のモジュールを実行できるようにするために使用されます。

2)まずコントロールマシンのコマンド/スクリプトを使用してください。たとえば、raw tcp接続を使用してシリアルコンソール接続を使用する場合は、次のようにすることができます。

- hosts: box 
    gather_facts: no 
    tasks: 
    - expect: 
     command: nc box 1234 
     responses: 
      login: user 
      password: password 
      user: /path/to/bootstrap_script.sh && exit 
     delegate_to: localhost 
    - setup: 
    - other_ansible_module: 
+0

ありがとうございました。私はそれを後で試してみましょう、私はほとんど諦めます。 – zhaorong

関連する問題