問題タブ [chef-solo]
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.
chef-infra - 「テンプレート」シェフという名前のリソースまたはメソッドはありません
実際にchef-soloで最初のクックブックを書いてみて、自分のサイトを初期化するためにクックブックワードプレスを探しています。
しかし、数時間、このバグの解決策を見つけることができませんでした:
フラグメントについて:
Vagrant ファイルを使用:
面白いと思うのは、リソース「ディレクトリ」が正常に機能していることですが、「実行」を使用する場合と同じ問題があります。
ワードプレスのクックブックを使用し、必要なすべてのクックブックを追加し、この 2 つのリソースで問題なく動作しました。
私はシェフのバージョン11.10を持っています。Vagrant を使用して VirtualMachine を作成する
何か案が?何をすべきか助け/手がかりが必要です:/
ruby - ssh経由でchef-soloコマンドを実行できません
最初にサーバーにsshしてからコマンドを実行すると、正常に実行されます
しかし、このように実行しようとすると
エラーが表示されます:
これはなぜですか? また、この問題を解決するにはどうすればよいですか?
chef-solo - Chef でのブートストラップの問題
シェフを使用して基本的なインフラストラクチャをセットアップしました。これには、ローカル シェフ サーバー (ubuntu ベース)、ワークステーション、および ubuntu ベースのサーバー (ノードとして使用される) が含まれます。私のオフィス ネットワークでは、インフラストラクチャ全体がファイアウォールの背後にあることに注意してください。また、サーバーがインターネットにアクセスするために必要なプロキシ設定を行いました。ここに問題があります-使用してノードをブートストラップしようとすると-
次のエラーが表示されます
これに対する解決策を見つけることができませんでした。knife[:bootstrap_proxy] = "http://username:password@proxyIP:port/"
しかし、に追加できる設定に出くわしましたknife.rb
。(オフィスのプロキシの詳細を入力して)これを行った後、ブートストラップ中の接続が成功し、シェフ クライアントがノードにダウンロードされました。ただし、この設定はノードが使用するプロキシのみを定義します。それで、これはhttp_proxy = "http://username:password@proxyIP:port/"
で設定されることにつながりましたclient.rb
。しかし、サーバーですべてのプロキシ設定を既に行っているため、chef クライアントを起動できませんでした。そのため、手動でhttp_proxy and https_proxy
設定を削除client.rb
してコマンドchef-client
を実行すると、成功しました。2 つの質問があります -
1)なぜうまくknife[:bootstrap_proxy] = "http://username:password@proxyIP:port/"
いったのですか?ノードが使用する必要があるプロキシのみを定義するためです。
2) また、ノードのすべてのプロキシ設定が既に行われています。にプロキシ設定は必要ありませんclient.rb
。どうすればこれを達成できますか?
助けてください!
ruby - シェフはホスト名をチェックしますか?
Chef でノード (ホスト) 名を確認できないことが判明したため、次のことを実現する最善の方法を見つけようとしています。
アイデアは、ノード名 (または一致する変数) が true の場合、一意の値である ldap_access_node_filter を使用し、それ以外の場合はデフォルト値を使用するというものです。私は基本的に sssd 構成を構成していますが、ホストの 1 つは特別な LDAP アクセス フィルターを必要とします。
より良い方法があれば、私に知らせてください。
助けてください。
chef-infra - シェフが bash で killall を実行すると致命的なエラーが発生する
Chef のこのスニペットが失敗する理由について何か考えはありますか?
以下のスタックトレース:
chef-infra - ノードにインストールされているソフトウェア パッケージのバージョンを確認する方法を教えてください。
私はApacheクックブックを2.4 Apacheで動作するように調整しています。Opscode クックブックは、Apache 2.4 キーワードのリストから除外された LockFile キーワードを含む conf ファイルを生成しているため、現在失敗しています。
一般的な解決策を作成し、ソフトウェアのバージョンに応じて conf ファイルを作成したいと考えています。そのためには、既にインストールされているソフトウェアのバージョンを確認する必要があります。これと同じ質問が私を悩ませてきましたが、私はそれを避けることができました. 何度もお世話になっておりますので、お聞きしたいのですが、
クックブックで指定されていない場合、つまり利用可能な最新のものをインストールする場合、インストールされているパッケージ/ソフトウェアのバージョンを確認する方法は?
注: 基になるシェルにコマンドを渡すように言わないでください。もっと良い方法があるかどうか知りたいのですが... シェフの方法はありますか? ひょっとして、オハイと関係あるのかな?
編集:私は誤解しているようです。プラットフォーム層を抽象化するソリューションがあるかどうか (Ohai のように) を知りたいと思っていましgimme_version('apache')
た。case node['platform_family'] when... when... when
プラットフォーム固有のコードを内部に記述することは避けたいです。
chef-solo - Chef Solo と Berkshelf を使用する場合は自作を無視します
Chef Solo を使用して Vagrant マシンをプロビジョニングし、Berkshelf を使用してクックブックをインストールしています。Linux ホスト (Ubuntu) を使用しています。
mysql クックブックを使用したい。しかし、私が追加すると:
Berkshelf はhomebrew
推移的な依存関係としてインストールされます。Chef-solo はすべてをロードしますが、Linux を使用しているため失敗します。
homebrew
クックブックをインストールまたはロードするときにパッケージを無視する方法はありますか?
注:私は使用しようとしました
しかし、実行するberks install --without ignore
とエラーが返されます: