ノードとは、nova-computeを実行し、VMインスタンスをホストしているマシンを意味していると思います。この場合、私は正直に言って、プロジェクトを特定のノードにバインドしようとすることを心配しません-あなたが持っているリソースのopenstackプール全体をグローバルクラスターとして扱い、プロジェクトに割り当て、それらをスピンアップして破棄させます必要に応じて。
クラウド内のプロジェクトごとにマスターjenkinsが必要な場合は、公開されているイメージとしてjenkinsがプリインストールされたイメージを用意しておくと便利です。プロジェクトごとにスタンドアロンアイテムとしてjenkinsを実行している場合は、m1.mediumを使用するだけで十分な場合がありますが、m1.largeを使用することをお勧めします。それはすべて、各プロジェクトでjenkinsインスタンスが何をしているかによって異なります。
jenkinsマスターインスタンスの破棄と再作成の間もjenkinsデータを保持したい場合は、ボリュームを使用して、具体的に/ var / lib / jenkinsをマウントできますが、jenkinsの起動とボリュームの調整を管理する必要があります適切に取り付けられています。jenkinsインスタンスを破棄して再作成する必要がある場合は、jenkinsインスタンスに大きなベースディスクを割り当て、プロジェクトごとにデータをバックアップして復元する方が簡単な場合があります。
これを行う別の方法は、openstackクラウドの外部でマスターjenkinsを共有し、jclouds jenkinsプラグインを使用して、プロジェクトの必要に応じてjenkinsインスタンスとスレーブを起動することです。これは、ジェンキンスのプロジェクト間の分離を提供していません。これは、上記の質問に基づいてあなたの好みに合わない可能性があります。