2018-01-01から1年間の記事一覧

TungstenFabric のビルド方法

TungstenFabric をビルドしてみたときのメモとなる。ベースとして、以下のレポジトリの記載を使用している。 https://github.com/Juniper/contrail-dev-envビルドするソースのタグとしては、r5.0.1 を使用した。 ビルド環境としては、aws 上のEC2 インスタン…

TungstenFabric r5.0.1 (kolla queens) のインストール

nightly build とは別に、TungstenFabricの stable版 (r5.0.1, https://hub.docker.com/u/tungstenfabric/ ) が出たので、kolla queens 用のinstance.yaml を貼っておく。EC2 インスタンスは以下のリンクと同様、centos7.5(ami-3185744e, t2.2xlarge, disk 2…

tungsten-fabric の prometheus連携

tungsten-fabric では、analytics ノードを使って、可視化/アラーム等を設定できるが、既存の監視システムがある場合は、APIを使ってパフォーマンス量を取得し、そちらで可視化を行う方が便利なケースがある。サンプルとして、prometheus に取り込むケースを…

TungstenFabricのoVirt連携

(公式には連携対象に含まれていないが) oVirt と TungstenFabric の連携を試してみたので記載しておく。 https://github.com/tnaganawa/ovirt-tungstenfabric-integration動作として、oVirt の neutron 連携機能を使用している。 https://www.ovirt.org/docu…

TungstenFabricのsupport-info

TungstenFabric の動作を解析するとき、必要となる情報についてまとめておく。まず、ファイルシステム上にある情報として、 /var/log/contrail, /etc/contrail 内の各ファイルと、各コンテナについての docker logs で、 各コンテナの状態について、ある程度…

configdbのデータ冗長の動作

Tungsten Fabric (以下、TF) ではデータベースとしてcassandra を使っているが、この部分の冗長の動作を確認してみている。環境としては、こちらのリンク (http://aaabbb-200904.hatenablog.jp/entry/2018/04/28/215922) の k8s+TF をベースに、TF controlle…

transparent service chain

Tungsten Fabric では、以前記載したL3 のサービスチェイン (http://aaabbb-200904.hatenablog.jp/entry/2017/10/29/223844) に加えて、L2のVNFのサービスチェインにも対応している。 http://www.opencontrail.org/building-and-testing-layer2-service-imag…

TF gatewaylessの経路をVyOSに配布

Tungsten Fabric (以下、TF) のgatewayless では、vrouter 上に存在し、ip fabric forwarding が有効になっているvmi (通常は、コンテナを想定) について、その経路を、bgp (family inet) で配布する機能がある。 https://github.com/Juniper/contrail-specs…

プロキシ環境下でのTungsten Fabricインストール

プロキシ環境で、Tungsten Fabric (以下、TF) をインストール出来るか、について確認した際のまとめとなる。 ※ 確認時には、k8s との組み合わせで試したので、openstack インストールの場合には、また別の設定が必要になるかもしれない。 ※ ベースの手順とし…

analytics機能無しでのインストールを行った場合の動作

Tungsten Fabric の analytics は、アラーム、可視化などの多くの有用な機能を提供するが、既に監視の仕組みが別途あるような場合には、analytics 無しで、control / vrouter 等の機能だけを、使いたいケースもあるかもしれない。この場合を想定して、contro…

contrail-status, nodemgr, analytics

Tungsten Fabric では、contrail-status というコマンドで、各コンポーネントのステータスを確認することが出来る。 こちらの動作と、実際に、ステータス情報を提供するnodemgr について、ざっくりとまとめていく。 合わせて nodemgr 等からの情報を集約管理…

gatewayless, distributed snat

Tungsten Fabric の4.1 以降では、gatewayless という機能が加わっている。 https://github.com/Juniper/contrail-specs/blob/master/gateway-less-forwarding.md通常、Tungsten Fabric では、外部とのアクセスを行うためにはexternal router (L3VPNの機能が…

fw-policy, k8s labelによるタグ制御

Tungsten Fabricの4.1以降では、webui にSecurity, Tags といったタブが追加されている。 このタブは、fw-policy の設定に使用可能で、仮想ネットワーク間のアクセス制御や、vm間のアクセス制御に使用できる。 https://github.com/Juniper/contrail-controll…

metadata ip address

Tungsten Fabric で vm/container 等を作った後、直接vm/containerにログインを行い、動作を確認したい場合がある。 この場合、vrouter上の各vmiに割り振られる、metadata ip address が使用できる。 ※ k8sであれば、kubectl execも使用可能metadata ip addr…

L2-only virtual-network

Tungsten の仮想ネットワークは、通常、L3の動作を含んだものとなる。 例えば、vrouter が提供するgwのipに対しては、仮想ネットワーク内のvmからは、常にping が飛ぶ状態となっている。ただし、Tungsten の仮想ネットワーク定義は、これ以外に、L2だけを提…

vlan subinterface

Tungsten Fabric では、VNFからvlanタグがついたパケットが送出された場合に、別の仮想ネットワークにパケットを入れる、という制御が実施できる。多数のVRFで同じVNFを共有する場合、等に活用できるのではなかろうか。 ※ 設定方法としては、以下の動画の通…

k8sのrollout機能

kubernetes では、rollout という機能で、無停止でのアプリケーション更新を実施できる。(deployment定義時に使用可能) https://kubernetes.io/docs/concepts/workloads/controllers/deployment/今回は、TF上のdeploymentで上記を行った場合に、アプリケーシ…

TF上でpacemakerを動かしてみたときの動作

Tungsten のarp対応ロジックは、HAクラスタ等で使われる gratuitous arp にも対応している。 https://github.com/Juniper/contrail-controller/wiki/Contrail-VRouter-ARP-Processingサンプルとして、k8s上のcentos7で、pacemakerを動かして動作を確認してみ…

TungstenFabricとVyOSのBGPaaS

Tungsten Fabric の機能の一つに、BGPaaS という機能がある。※ ユースケースとしては以下を参照 https://blueprints.launchpad.net/juniperopenstack/+spec/bgp-as-a-service https://blueprints.launchpad.net/juniperopenstack/+spec/bgp-as-a-service-v2 …

Tungsten Fabricのインストール(k8s, kolla, k8s&kolla)

Tungsten Fabric のインストールをAWS上で試してみたので、その時のメモとなる。インストール時の組み合わせとしては、 1. k8s 2. kolla openstack 3. k8s & kolla openstack の3パターンで実施している。 ※ このうち、3番目の組み合わせは、最近できた仕組…

AWS上でのHA構成(k8s)

以下の文書に従い、Tungsten controller の 3-node 構成を試してみたので、その際のメモとなる。(k8sを使用) https://github.com/Juniper/contrail-docker/wiki/Provision-Contrail-CNI-for-Kubernetes-with-High-Availability-(HA)事前準備として、t2.large…

Tungstenで、よく確認するソースコード

schema-transformer tungsten の動作を確認する上で、よく確認するソースコードをあげていこうと思う。個人的に一番よく眺める、と思っているファイルは、schema-transformer 内の以下のファイルになる。 https://github.com/Juniper/contrail-controller/bl…