問題タブ [chef-recipe]
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.
amazon-ec2 - Amazon EC2 の Opscode シェフ
opscode シェフは初めてです。Web アプリケーションに opscode シェフを統合したいと考えています。Amazon EC2 で opscodeのWeb コンソールを使用してノードを作成しました。今、私は何をすべきか、クックブックやシェフの他の部分でどのように遊ぶべきかを知りたいですか? Amazon EC2 で作成したインスタンスにも接続できません。ホストされたシェフサーバーを使用しています。
ruby - Chefを使用してrubyでelasticsearchステータスチェックをコーディングするにはどうすればよいですか?
私は2つのことを達成したいと思います:1)無意味なpidファイルをクリーンアップして(elasticsearchが実行されていない場合)、それを開始します。2)続行する前にESが起動したことを確認します。
Chefがすぐに提供するものとRubyが許可するものの間で、それを実現するための構文のような擬似コードしか理解できませんが、実行されないので、本物を書くためのヘルプ/アドバイスが必要です。
(1)の擬似コード:
(2)の擬似コード:
chef-infra - レシピからの Chef データバッグの作成
レシピからデータ バッグを作成し、そのデータ バッグが既に存在する場合に例外を回避する方法は?
ドキュメントには、データ バッグの作成が次のように行われることが示されています。
これは、データバッグがまだ存在しない場合に機能しますが、データバッグが既に存在する場合に機能させて、シェフの実行を中断しないようにする方法は?
chef-infra - 異なるOSで動作するようにシェフのレシピ/クックブックを変更
私は Vagrant と Chef を初めて使用し、Scienfitic Linux を使用して VM をセットアップしたいと考えています。私が見つけたほとんどのクックブック (Nodejs または Mongodb 用) は Ubuntu でサポートされていますが、SL ではサポートされていません。これらの既存のクックブックを Ubuntu だけでなく SL で動作させる簡単な方法はありますか?
ありがとう
windows - chef-例外TypeErrorを再発生させます-nilを文字列に変換できません
こんにちは私はWindowsでchefの使用を開始し、クイックスタートガイドに従いました。私はchef-soloを使用していて、ホームディレクトリにテンプレートを書き出すだけの初心者向けクックブックで動作させましたが、何かをインストールするクックブックでは、「例外TypeErrorの再発生-nilをに変換できません」というエラーが発生します。問題がどこにあるかを示さない「文字列」。
7-zipをインストールしようとしているgithubにシェフのリポジトリがあります。
-l debugを使用して実行しようとしましたが、これは完全なstachトレースです。
私は今、nilを見つける方法に少し戸惑っています。
chef-infra - ディレクトリをリモートコピーするための Chef レシピ
このレシピを実行したいだけです:
シェフのコマンドRemote_Fileをディレクトリで動作させようとしましたが、それは私に与えます
Remote_Directory コマンドでは、アクセスしたいサーバーの場所を指定できません。
chef-infra - shef(シェフシェル)クライアントモードでrun_listのロードを強制することは可能ですか?
chefレシピのエラーをデバッグするとき、私は通常、問題のあるマシンにログオンして「shef-z」と入力するのが好きです。以前に正常に実行された場合は、登録されたrun_listに関連するすべての属性とレシピが自動的に読み込まれるため、問題のある行をすぐに試すことができます。
問題は、chef-clientが最初の実行で失敗した場合、run_listが空であり、shefが「このクライアントではクックブックはもう必要ない」と言ってキャッシュから(非常に必要な)レシピを削除することです。shefにrun_listの使用を強制する方法はありますか?
公式ウィキは次のように述べています。
「実行リストは、通常のchefクライアントの実行と同じ方法で設定されます。」
しかし、「-j」を試してみても役に立たないようです。
このブログ投稿で説明されているように、代わりにソロモード( "-s -j")を実行してみました。run_listをロードします(展開せずに、これは奇妙です)が、何かをしようとすると、次のようなものが表示されます。
「クックブックのTomcatが見つかりません。別のクックブックからTomcatをロードしている場合は、メタデータで依存関係を構成してください」。
私のレシピには3レベルの深さの数十の依存関係があるため、すべてのコードを手動でshefに貼り付けることは実際にはオプションではないことに注意してください。私の現在の回避策は、問題の可能性のあるすべての部分をコメントアウトして(そしてそこから手動で続行して)変更されたレシピをアップロードすることですが、より良い代替案が欲しいです。
chef-infra - 別のレシピが終了した後にのみシェフのレシピを実行する
別の料理本に 2 つのレシピがあります。2 番目のレシピが必要になるいくつかのファイルを配置するため、2 番目のレシピが実行を開始する前に、最初のレシピを完全に終了する必要があります。実行リストで 1 番目を 2 番目の前に配置しましたが、並列に実行されているように見えます。
最初のレシピが完了したときに、2 番目のレシピの実行をトリガーするにはどうすればよいですか? (それらは別のクックブックにあることに注意してください。)
ubuntu - Chefを使用してcrontabで環境変数を設定するには?
EC2 インスタンスの crontab からジョブを実行するように設定するレシピがあります。私が実行しているレシピの例を次に示します。
これはうまくいきます。この cron ジョブに加えて、crontab でいくつかの環境変数も設定したいと考えています。これを読むと、「path」属性を使えば可能のようです。ただし、これを実装する方法の具体的な例を見つけることができません。
私は試した:
しかし、これはうまくいきません。環境変数を crontab の上部に設定するにはどうすればよいですか? どんな洞察も大歓迎です!ありがとう。
chef-infra - レシピ内のシェフ検索で返されたノードの IP アドレスを取得する
シェフレシピ(ルビー)のノード検索で返されるIPアドレスを取得するにはどうすればよいですか?
数週間前、このコードは検索 API から最初のインスタンスの IP を返しました。
バージョン: シェフ: 10.14.2