問題タブ [chef-infra]
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 - シェフがソースからプログラムをインストールして更新する
ソースからビルドしたプログラムがあります。このために、script
リソースを使用しています。インストールと更新のロジックを実装する良い方法は何ですか? 現在、組み込みのnot_if
条件付きでインストールを実装しています。
chef-infra - 「railsconsole」でRailsを起動するのと同じように、インタラクティブなChefクライアントを起動するにはどうすればよいですか?
chefワークステーションクライアントで、インタラクティブコンソールを起動して、役割/レシピをデバッグおよび確認するか、検索APIを使用します。
..。
Railsの場合と同様に、「rails console」を使用して、すべてのRails環境をirbにロードします。
どうやってするの?
chef-infra - ナイフブートストラップネイティブ拡張
を介してノードにchefをセットアップしようとしていますknife bootstrap IP
。ネイティブ拡張(mkmf)がビルドエッセンシャルを必要とするまでは、正常に機能しているようです。knifeがログインに使用するユーザーはrootであるため、knifeはbuild-essentialsをインストールできる必要があります。
これを自動化できるかどうか、またはブートストラップしてこれらのパッケージをインストールする前にすべてのマシンにログインする必要があるかどうかは誰にもわかりません。
ありがとう、
ロビン
chef-infra - シェフのナイフを介してシステムに加えられた変更を追跡するにはどうすればよいですか?
シェフが管理するノードへの変更を監査および追跡できるようにしたいと考えています。理想的には、変更をインシデントと関連付けることができるように、ノードに変更が加えられたかどうか、いつ行われたかを確認したいと考えています。
この種の生成を可能にする組み込み機能はシェフにありますか? それとも、この種のロギング/監査を追加できるアドオンでしょうか?
chef-infra - Mac 10.7.2 上の Chef、Vagrant でプロビジョニングが失敗する
Vagrant と Chef を使い始めたばかりですが、非常に奇妙なエラーだと思います。
単純な VM とシェフなしですべて問題ありませんが、いくつかのレシピを貼り付けると失敗します。
Vagrantfile から呼び出されるメイン レシピの現在の default.rb を次に示します。主にこのブログ/チュートリアルから
php apache2 と mysql のレシピは、opscode コミュニティ サイトから直接入手したものです。
これらのレシピの 1 つを入れるだけで、問題なく読み込まれます。場合によっては 2 つでも問題ありませんが、3 つすべてを入力すると、最後のいずれかでエラーが発生するようです。注文ラウンドを変更しましたが、エラーの原因は常に最後のラウンドです。エラーは次のとおりです。毎回同じですが、この場合、php は 3 つのうちの最後であり、インストールに失敗していることがわかります。
通常、私は VM を破棄し、新しい試行ごとに vagrant up を実行していますが、vagrant reload と vagrant provision を数回試しましたが、同じ結果が得られました。
また、これが正常かどうかはわかりませんが、私の Mac はプロビジョニング中にほぼ完全にロックされます。私は通常、2 つまたは 3 つの vmware VM を同時に実行できますが、あまり苦労しているように感じることはありません。
deployment - アプリの複数インストール - 対処方法
PHP、MySQL などで作成されたアプリがあります。このアプリには、beanstalkd、Solr、およびいくつかの PHP 拡張機能など、いくつかの依存関係があります。
顧客ごとに、他の顧客と共有されているサーバーまたはその顧客だけがいるサーバーにアプリを個別にインストールします。
今のところ、Puppet スクリプトを使用して新しい顧客をブートストラップし、何かが変更されるたびに手動で各顧客に行って git pull を作成したり、データベースを更新したりしています。
私たちが探しているのは、次の機能を可能な限り多く備えたツールです。
- すべての顧客とその現在のリビジョンを確認できる Web インターフェイス
- 新しいインストールをブートストラップする機能
- 既存のインストールを特定のリビジョンまたはブランチに更新する機能
新しいサーバーをブートストラップするためのツールを探しているわけではありません - 私たちは今でも手動で行っています。代わりに、既存のサーバーでクライアントのセットアップを自動化する方法を探しています。
これには Chef または Puppet で十分でしょうか? もっと適切なツールはありますか?
gcc - OpenSUSE 12.1 での yajl-ruby ビルドからの「内部コンパイラ エラー」
シェフクライアントの要件として、OpenSUSE 12.1 に yajl-ruby をインストールしようとしています。これまでのところ、次のメッセージが返されています。
適切なパッケージがインストールされます。
コンパイラの問題であるか、OpenSUSE 固有の問題である可能性があります。これまでのところ、どちらの道を歩むべきかはわかりません。
php - Vagrant and Chef:新しいバージョンのPHPをインストールするにはどうすればよいですか?
私はVagrantとChefの使用に比較的慣れていません。私は現在UbuntuLucid64を実行しており、デフォルトでPHP5.3.2をパッケージとしてインストールするOpscodePHPクックブックを使用しています。PHP 5.3.8または9を(ソースからまたはパッケージとして)インストールしたいのですが、正しく構成する方法がわからないようです。依存するクックブック(build-essential、xml、mysql)をコピーしました。これは私がこれまでに持っているものです:
しかし、エラーが発生します。スタックトレースの関連する行は次のとおりです。
更新: PHPレシピにMySQLについて心配しないように指示すると、正常にインストールされるようです...
...しかし、Apacheは実行しているPHPのバージョンを認識していないようです。php_info()
はPHP5.3.2を使用していると報告していますが、コマンドライン(php -v
)は5.3.9を正しく報告しています。
私は何が間違っているのですか?
chef-infra - インストールが失敗した場合、またはアップデートが利用可能な場合は、シェフのレシピをリロードします
これは非常に基本的なタスクですが、ドキュメントが見つかりません。chef-serverとchefを使用してEC2マシンを起動しています。それが失敗した場合は、レシピを修正してから、ノードを取り出して再作成せずに、そのマシンに役割とレシピを再インストールしたいと思います。それを行うコマンドが見つかりません。
マシンでchef-clientを実行すると、次のようになります。
ありがとう
ruby - Chefはapt(apt-get update)レシピを実行していません。Aptは100を返します
Vagrant、mac osx10.7.2でUbuntu11.04を実行します。chefサーバーを実行しています。
postgresqlコミュニティシェフレシピをインストールしようとすると、基本ロールが次のようになっているにもかかわらず、次のエラーが発生します(apt-getを更新するためにaptレシピを追加しました)。
シェフランをしようとしています:
サーバー内から手動で$sudoapt-get updateを実行した場合、問題なくchef-clientinstallpostgresをもう一度実行します。aptレシピが実行されない理由について何かアイデアはありますか?(apt-getのタイムスタンプファイルがubuntuで作成されていないため、実行されていないこともわかっています)。どんな助けでも大歓迎です。