0

ドローン ホストとフリートを備えた CoreOS クラスターがあります。ドローンのノード メニューには unix:///var/run/docker.sock しかありません。私が理解しているように、docker URL と証明書によって定義された他の docker ノードを追加できます。ただし、CoreOS クラスターを作成したら、それをスレーブのプロバイダーとして使用するのが理にかなっているようです。私は解決策を探しています

(1) CoreOS クラスターの構成が変更されるたびにノードを構成する必要がなく、

(2) 正しいリソース管理を提供します。

次の解決策を考えることができました。

  • CoreOS クラスター ノードで docker uris を公開し、それらすべてをドローンで直接構成します。この場合、CoreOs クラスターの変更を手動で追跡する必要がありました。リソース管理は、おそらくフリートの管理と競合するでしょう。
  • CoreOS クラスター ノードで docker uris を公開し、DNS ラウンド ロビン ベースのアクセスを提供します。これは資源管理のひどい方法のようであり、足と競合する可能性が最も高いでしょう。
  • CoreOs ノードに Swarm をインストールします。リソース管理は、おそらくフリートの管理と競合するでしょう。
  • フリートまたは RKT に docker uri を公開させると、フリート/RKT がコンテナーを実行するノードを決定します。問題は、これを行う方法が見つからなかったことです。
  • Drone.io でフリートまたは RKT を使用します。同じ問題。出来ますか?

Drone.io と CoreOs を使用して、すべての要件に対応するソリューションを提供する方法はありますか?

4

1 に答える 1

0

私が理解しているように、docker URL と証明書によって定義された他の docker ノードを追加できます。ただし、CoreOS クラスターを作成したら、それをスレーブのプロバイダーとして使用するのが理にかなっているようです。

ドローンの最新バージョンは、ビルド エージェントをサポートしています。ビルド エージェントはサーバーごとにインストールされ、中央のドローン サーバーと通信してビルドをキューからプルし、実行して結果を送り返します。

docker run                                              \
    -e DRONE_SERVER=http://my.drone.server              \
    -e DRONE_SECRET=passcode                            \ 
    -v /var/run/docker.sock:/container/path/docker.sock \
    drone/drone:0.5 agent

これにより、サーバー レベルでエージェントを登録または管理することなく、その場でエージェントを追加および削除できます。

私はこれがあなたが概説した基本的な問題を解決するはずだと信じていますが、それがあなたが望むフリートとコアオスとの統合のレベルを提供するかどうかはわかりません. おそらく、coreos の専門家が私の回答を補足してくれるでしょう。

于 2016-08-21T01:20:08.423 に答える