問題タブ [ansible]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ubuntu - ansible-playbook 実行時のエラー
Ubuntu Precise 64 に Ansible 1.2.3 をインストールしました。
実行ansible-playbook -i ansible_hosts playbook.yml
すると、次のエラーが表示されます。
の内容は次のansible_hosts
とおりです。
とplaybook.yml
:
どうすればこれを機能させることができますか?
ansible - Ansible の無期限の一時停止
Ansible Playbook を実行しようとしていますが、事実を収集した後、Ansible は 1 秒もかからずに最初のタスクで一時停止し、先に進みません。私が確認できることは何ですか?私はもう試した:
- 詳細モード (-vvv) ですが、有用な情報があまり表示されません。
- 接続が確実に機能するようにする (ansible all -m ping works)
- さまざまなコマンドを実行しています(-tを使用)..それらはすべて一時停止しますが
- コマンドを変更して「hello」をエコーするだけにします.. ansibleはまだ一時停止しています
list - ansibleインベントリファイルでリスト値を変数として指定するにはどうすればよいですか?
(ansibleインベントリファイル)のようなものが必要です:
ただし、ansible は「ロケール」をリストとして認識しません。
python - 開発中に Ansible pip で Python パッケージを更新する
私は、python virtualenv をセットアップするためのいくつかの Ansible play を作成しており、開発中にも python パッケージを更新してサーバーを再起動しています。pip でパッケージを更新する際に問題が発生しています。これがどのように行われるかはあまり気にしませんが、開発中に virtualenv の python パスにパスを追加してからサーバーを再起動することをお勧めしますが、Ansible でそれを行う方法はまだわかりません。
したがって、私の質問は、virtualenv のサイト パッケージにインストールするローカル git リポジトリをセットアップする方法、または正しい virtualenv を使用してリポジトリの場所を sys.path.insert にセットアップする方法です。
現在、私はやろうとしていました:
パッケージをインストールする前に、Authenicator のクラスの名前を Authen のような完全に間違った名前に変更しました。クラスは、新規インストール中に Authen を示します。次に、クラス名を正しい名前 (Authenticator) に戻し、バージョンを上げて実行します。
しかし、サイト パッケージ内の実際のファイルを調べた後も、更新されたファイルではなく Authen 名が表示されます。
開発中にローカル リポジトリを使用して、自分の環境で更新されたファイルをすぐに取得できるようにするにはどうすればよいですか? Ansible を使用して、これを繰り返し可能なプロセスにすることもできます。
これが私がAnsibleでやろうとしていることです。私の最初のプレイは、一度だけ実行したい環境をセットアップすることです。
${python_root} は私の python プロジェクトの場所であり、もちろん作業ディレクトリは新しい virtualenv セットアップです。
それからどういうわけか、virtualenv の python リポジトリを更新する開発プレイが必要です。これは私がこれまで持っているものですが、これも機能しません。
logging - ansible-playbook モジュール実行のログ/詳細を取得するにはどうすればよいですか?
以下を実行するとします。
それが成功したことは確かです。
リモート ホスト (MyTestHost) 上のスクリプトによってエコー/出力された "Hello World" はどこでどのように表示されますか? または、スクリプトのリターン/終了コード?
私の調査によると、プラグインを作成してモジュール実行のコールバックなどをインターセプトし、ログ ファイルを作成することが可能です。私はそれで時間を無駄にしたくありません。
たとえば、以下の stdout のようなもの (私は ansible-playbook ではなく ansible を実行していることに注意してください):
python - ansible API を使用してホストリストを出力する
ansible API を使用してホストリストだけを取得するにはどうすればよいですか。ansible python API を使用して、以下のコマンドに相当するものが必要です。
編集:
これは正しい方法ですか?
ansible - Ansible の定義済み変数のリストはどこで入手できますか?
Ansible には、プレイブックやテンプレート ファイルで使用できる事前定義された変数がいくつか用意されているようです。たとえば、ホストの IP アドレスはansible_eth0.ipv4.address
です。ドキュメントをグーグルで検索しても、利用可能なすべての変数のリストが見つかりませんでした。
誰かが私のためにそれらをリストしてくれますか?
amazon-web-services - ansibleを使用して、新しく作成されたebsボリュームからボリュームIDを取得します
ansible の ec2_vol モジュールを使用して ebs ボリュームを作成しました。ソース コードを確認したところ、ユーザー指定のパラメーターを使用して boto の create_volume() メソッドを内部的に呼び出していることがわかりました。ec2_vol モジュールの戻り値を登録し、新しく作成したボリュームの volume_ids を取得したい。
今のところ、私のプレイブックは次のようになっています
新しく作成されたボリュームのボリューム ID を取得する方法を知りたいです。run_instances() メソッドの戻りオブジェクトには、インスタンスのリストを含む属性インスタンスがあることがわかりました。しかし、create_volume() メソッドの戻り値に関する適切なドキュメントが見つかりませんでした。
どんな助けでも大歓迎です。
ありがとう、
deployment - Ansible ホストでコマンドを実行する
Ansible ホストでコマンドを実行することはできますか?
私のシナリオは、内部でホストされている (会社のファイアウォールの外からはアクセスできない) git サーバーからチェックアウトしたいというものです。次に、チェックアウト (tarballed) を本番サーバー (外部でホストされている) にアップロードしたいと考えています。
現時点では、チェックアウトを実行して tarball し、展開スクリプトを実行するスクリプトを実行することを検討していますが、これを Ansible に統合できればそれが望ましいでしょう。
vagrant - Vagrant: 仮想マシンの作成中に ansible プロビジョニングを実行していますか?
Vagrant を使用して、vagrant up が仮想マシンを作成するときにプロビジョニング Ansible スクリプトを実行することは可能ですか? インポート シーケンスの実行時にプロビジョニングしたい。データベースをインポートする非常に遅いステップがあります。それはべき等ではなく、初めて実行したいと思います。
と を使用してスクリプトを作成できますvagrant status
がvagrant up --no-provision
、もっと簡単な方法があるはずです。
また、最初の vagrant up の後に Ansible を実行することもできますが、コマンドを 1 つだけ実行してサーバーをゼロから作成したことを友人に自慢することはできません :-)