2016-07-28 9 views
1

ポッドごとのネットワーキング用のcalicoでkubernetesクラスタを設定しているので、サービスを外部に公開することがベストプラクティスであると思います。Calicoを使用してkubernetesでサービスを公開するためのベストプラクティス

私はエッジルータ/ファイアウォール(私の場合はvyos)に内部ポッドIP(172 ...)をBGPし、ファイアウォール/ルータ上でSNATを実行します。しかし、ポッドごとに1つのパブリックIPを公開する必要があります。

プロ:パブリックIPを使用する必要がありません 欠点:ポッド変更には更新されたfirwallルールが必要ですか?

または2番目:提供されたパブリックネットワークを取得し、ポッドに使用するIPプールとしてcalicoに渡します。 詐欺:インターネットに公開されない内部サービスに多くのパブリックIPが無駄になります

誰かが私を啓発したり、正しい方向に向けることができますか?

ありがとうございます!

答えて

1

カリクは、クーベルネットでサービスを公開する特別な方法を提供していません。サービスを公開するには、標準Kubernetesサービス、ノードポートなどを使用する必要があります。将来的には、Caliberが(サービスIPを公開するなどの)Kubernetesのためにkube-proxyが現在行っている機能のいくつかを提供する可能性がありますが、現在、Calicoは低レベルのネットワークAPIレイヤーにのみ適合しています。 Kubernetesの統合におけるCalicoの真の強みは、新しいKubernetes NetworkPolicy APIを使用してネットワークセキュリティポリシーを定義できることです。

出典:私はCalicoのコア開発者の一人です。

+0

こんにちはFasaxc、まず、お返事ありがとう、カリコでの作業のために、私はそれが素晴らしいプロジェクトだと思います。 私の質問は、CoreOS Fest '15のビデオから見たものです。Spike CurtisはCalicoをインフラストラクチャに直接接続して、データセンターの外にあるルートを広告して、人々がまっすぐに接続できるようにすると述べました。正しく行われます。 [Video at 13:05](https://www.youtube.com/watch?v=44wOK9ObAzk&feature=youtu.be&t=13m05s) –

+0

OpenStackやRaw Dockerを実行していた場合は、公開されるIPのセットが1つあります。違いは、Kubernetesにはサービスインフラストラクチャがあり、これはポッドIPの前に位置しています。私たちはクーベルネットからこの機能を引き継いだわけではありませんが、まだそれは "カリコソイド"ですが、将来的には可能性があります。今、サービスIPなどでk8sの経験が必要な場合は、Calicoの前でkube-proxyを実行する必要があります。 – Fasaxc

+0

@Fasaxcなぜcalicoとkubernetes 1.7を使用すると私はipBlockを使用できないのですか? –

関連する問題