問題タブ [facter]
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.
ruby - Facter::Util::Uptime:Module の未定義メソッド get_uptime (NoMethodError)
puppet ノードをセットアップしようとしていますが、rubygems が動作していないようです。
独自のバイナリ(/usr/lib/ruby/gems/1.8/gems/facter-1.5.8/bin/facter)を介してcliでfacterを実行すると、正常に動作しますが、インストールされたバイナリを介して実行するとrubygems (/usr/bin/facter) の場合、以下がスローされます。
rubygems を削除して再インストールし、gem を再インストールしようとしましたが、何もうまくいかないようです。
パペットを実行しようとすると同じエラーがスローされるため、何かがどこかにキャッシュされていると想定しています。
何か案は?
python - 「事実」のPython版?
サーバーデータの収集を検討しており、それらのサーバーには Python 2.6 がプリインストールされています。さて、Rubyのfacterに対するPythonの「バインディング」ではなく、Rubyの「facter」に対応するPythonライブラリが存在するのだろうか。
私はそれについてグーグルで検索しましたが、何も見つかりませんでした。誰かこれについて何か考えがありますか?
ruby - Puppet/Facter "ファクト fqdn を取得できませんでした": 修正または回避する方法は?
私はパペットについて学んでいて、自宅の VM で実験しようとしています。私はまだ人形サーバーを使用しておらず、ローカルで実行しているだけです。問題なく動作しますが、実行するたびpuppet apply ...
に数秒の遅延が発生し、その後メッセージが表示されます
私はメッセージが遅延にリンクされていると仮定し、それを取り除きたいと思っています (遅延 - 私はメッセージと一緒に暮らすことができます)。解決策をグーグルで検索すると、それが DNS ルックアップに何らかの形で関連しているように見えますが、他に何も見つけられず、驚くべきことです。私が望むのは、自分の vm にマニフェストをすばやく適用して実験できるようにすることだけです。どうすればスピードアップできますか?
更新:デバッグ出力に追加情報は表示されませんが、次のようになります。
更新: puppet のフォロワーが非常に少ないため、「ruby」タグを追加しました。これが ruby に属さない場合、またはより適切なタグを知っている場合は、お知らせください。
再更新: puppet についてさらに学習した結果、このメッセージは、Puppet が実行されているシステムに関する「事実」を盗み出す「Facter」と呼ばれるコンポーネントからのものであることがわかりました。いくつかの構成オプションを見つけて、「certname」、「node_name」、および「node_name_value 」をいじりましたが、遅延をなくすことができませんでした。Facterにfqdnを無視するように指示する方法、またはFacterがUbuntu 11.10 vmでfqdnを見つけられるようにする方法を具体的に知っている人はいますか?
進捗:
これが私のルーターで、Tomato 経由で Dnsmasq を実行しています。
strace
これは5秒間ブロックされ、それぞれに対して2回呼び出されましたfacter
:
VM を NAT ネットワークからブリッジに変更したため、ネットワーク上に IP があり、arp
すぐに戻ります。(私はネットワーキングの第一人者ではないので、なぜこれが機能したのかわかりませんが、試してみるのが合理的なように思えました。) しかしfacter
、実行にはまだ合計で約 4 ~ 5 秒かかり、「ファクト fqdn を取得できませんでした」と報告されます。facter -d
最後まで、「ドメインの値はまだnilです」のいくつかの発生を示しています。私はまだ何かが完全に正しくないと考えています。
ruby - 一部のネットワーク ファクトでパペット ファクトが遅い
vagrantとpuppetについて学んでいます。vagrant lucid32 (Ubuntu 10.04) を使用すると、パペットが非常に遅いように見えます。fqdn の問題(質問 7780322)を修正しましたが、それでも非常に遅いです。
問題 (の一部) を factorer までたどりました。ipaddress の問い合わせは非常に迅速ですが、ipaddress_eth0 には 20 秒かかります。
ipaddress_lo を探すのも遅いです。
これをデバッグする方法について、誰かが解決策や提案を手伝ってくれますか? Rubyは初めてですが、喜んで学びます。
ありがとう。
ruby - ファクトのための人形カスタムファクト
カスタムファクトモジュールを作成しようとしています:
ルビーにとって非常に新しい...これで何かをするための適切な構文は何でしょうか?
amazon-ec2 - Puppetエージェントデーモンがファクトファクトを読み取っていません(EC2、cloud-init)
私はファクトからファクトを読み取るためにpuppetを使用しており、それに基づいてモジュールに異なる構成を適用しています。
問題:
人形エージェントはこの事実を見ていません。puppet agent --test
インタラクティブに実行すると、期待どおりに機能します。スクリプトから非対話的に実行する場合でも、正常に機能するようです。エージェント自体だけが台無しになっています。
プロセス:
UbuntuベースのアプリスタックをEC2にデプロイしています。userdata(#cloud-config)を使用して、/ etc/environmentに環境変数を設定します。
次に、すぐに#cloud-configで、/ etc/environmentをソースします。次に、i apt-get install puppetのみ(#cloud-configステップのシーケンスのあいまいさを排除するためにpackage:puppetの使用をやめました)
インスタンスが起動したら、ファクトが利用可能であることを確認します。実行facter tl_role
すると「開発」が返されます。次に/var/ log / syslogを確認しますが、パペットエージェントはこの事実を認識していないようです。カタログをコンパイルできず、値が表示されるはずの場所に何も(空白)ないため、これを知っています。この事実に応じて変数が設定されます。
ただし、puppet agent --test
インタラクティブに実行すると、カタログが正常にコンパイルおよび実行されます。#cloud-configスクリプトからこれを実行しても(puppetをインストールした直後)、問題なく機能します。
この事実を人形エージェントが利用できるようにするにはどうすればよいですか?エージェントサービスを再起動しても違いはなく、カスタムファクトを認識しません。インスタンスを再起動しても違いはありません。
ここにいくつかのコードがあります:
EC2ユーザーデータ:
主な人形のマニフェスト:
そして、$ sitedomainが想定されている場所でエラーが発生したため、$tl_roleが設定されていないように見えます。
何か案は?これは私の脳を爆発させています...
ruby - puppet Facter で複数のカスタム ファクトを返す
ユーザーを人形の事実としてシステムに追加しようとしています。私は ruby プログラマーではありません。次のコードは適切にユーザーを生成しますが、ユーザーの uid はすべて同じです (パスワード ファイルの最後のエントリの uid)。uid が範囲外の場合、未知のシンボル エラーが発生することが予想されます。Facter.add が最後に 1 回だけ呼び出された場合、uid と同じ、最後のユーザーが 1 人しか存在しないことが予想されます。他の人もそうせずに反復する方法がわかりません...
突っついたところ、ほぼ同じ問題を抱えている他の人を見つけましたが、これが解決策でした(これは私にとってもうまくいきました):
...しかし、私は違いが何であるかを理解していません。Facter.add ブロックへの呼び出しがバッファリングされ、ループの最後で一度に実行されるように動作し、Etc がすべての passwd をロードするため、配列への user.uid インデックスとタイミングは関係ありません。それは手続き型言語にとって奇妙なことですが...
arrays - puppetは、定義で2つの変数をマージします
複数のサブインターフェイスと複数のアプリが独自のサブインターフェイス IP で実行されているため、facter
変数を使用してループを反復しようとしています$name
ここに私のインターフェースがfacterコマンド出力にあります
私のマニフェストファイル
一部の方法$ipaddress_eth0_$name
では機能しません:(この変数を解析していません.2つの変数を結合するにはどうすればよいですか?