web-dev-qa-db-ja.com

単一のetcdクラスターを持つ複数のCore-OSクラスター?

すべて1つのetcdクラスターにリンクされた異なるコアOSクラスターを作成することは可能ですか?はいの場合、どのように?

複数のクラスターを作成する必要があるシナリオがありますが、1つのetcdクラスターを保持したいと思います。現在、私はすべてのインスタンスを同じクラスター内に持っていることになります。個別のクラスターがあることを確認するにはどうすればよいですか?

各インスタンスのetcd2サービスに(クラウド構成内の)ドロップイン環境ファイルがあり、初期クラスターに関する詳細が含まれているというアプローチに従っています。

1
Hazim

CoreOSのクラスターはフリートによって管理されており、その方法を確認したい場合は、「非表示」etcdキー/_coreos.com/fleetの下を確認してください。

$ etcdctl ls /_coreos.com/fleet
/_coreos.com/fleet/machines
/_coreos.com/fleet/engine
/_coreos.com/fleet/lease
/_coreos.com/fleet/unit
/_coreos.com/fleet/job
/_coreos.com/fleet/state
/_coreos.com/fleet/states

フリートが使用するキープレフィックスをなんらかの方法で変更できる場合は、同じetcdを使用して別々のクラスターを作成できるはずです。

フリートのcloud-configセクション は、etcd_key_prefix設定を介してこれをサポートします。 デフォルト これは/_coreos.com/fleet/なので、先頭と末尾にスラッシュを付けて同様の値に設定すると、問題なく実行できます。

私はこれを試していませんが、これがあなたのために働くかどうか聞いてみたいです。 cloud-config設定が機能する場合、各マシンには、/run/systemd/system/fleet.service.d/20-cloudinit.conf環境変数を含むFLEET_ETCD_KEY_PREFIXのような構成が必要です。次に、etcdctlを使用してキーを表示し、fleetctl操作が機能していることを確認できるはずです。

1
Paul Dixon