github.com/imran-kn/cilium-fork@v1.6.9/Documentation/gettingstarted/cni-chaining-weave.rst (about)

     1  .. only:: not (epub or latex or html)
     2  
     3      WARNING: You are looking at unreleased Cilium documentation.
     4      Please use the official rendered version released here:
     5      http://docs.cilium.io
     6  
     7  *********
     8  Weave Net
     9  *********
    10  
    11  This guide instructs how to install Cilium in chaining configuration on top of
    12  `Weave Net <https://github.com/weaveworks/weave>`_.
    13  
    14  Create a CNI configuration
    15  ==========================
    16  
    17  Create a ``chaining.yaml`` file based on the following template to specify the
    18  desired CNI chaining configuration:
    19  
    20  
    21  .. code:: yaml
    22  
    23      apiVersion: v1
    24      kind: ConfigMap
    25      metadata:
    26        name: cni-configuration
    27        namespace: kube-system
    28      data:
    29        cni-config: |-
    30          {
    31              "cniVersion": "0.3.1",
    32              "name": "weave",
    33              "plugins": [
    34                  {
    35                      "name": "weave",
    36                      "type": "weave-net",
    37                      "hairpinMode": true
    38                  },
    39                  {
    40                      "type": "portmap",
    41                      "capabilities": {"portMappings": true},
    42                      "snat": true
    43                  },
    44                  {
    45                      "type": "cilium-cni"
    46                  }
    47              ]
    48          }
    49  
    50  Deploy the `ConfigMap`:
    51  
    52  .. code:: bash
    53  
    54     kubectl apply -f chaining.yaml
    55  
    56  Deploy Cilium with the portmap plugin enabled
    57  =============================================
    58  
    59  .. include:: k8s-install-download-release.rst
    60  
    61  Generate the required YAML file and deploy it:
    62  
    63  .. code:: bash
    64  
    65      helm template cilium \
    66        --namespace=kube-system \
    67        --set global.cni.chainingMode=generic-veth \
    68        --set global.cni.customConf=true \
    69        --set global.cni.configMap=cni-configuration \
    70        --set global.tunnel=disabled \
    71        --set global.masquerade=false \
    72        > cilium.yaml
    73      kubectl create -f cilium.yaml
    74  
    75  .. note::
    76  
    77     The new CNI chaining configuration will *not* apply to any pod that is
    78     already running the cluster. Existing pods will be reachable and Cilium will
    79     load-balance to them but policy enforcement will not apply to them and
    80     load-balancing is not performed for traffic originating from existing pods.
    81  
    82     You must restart these pods in order to invoke the chaining configuration on
    83     them.
    84  
    85  .. include:: k8s-install-validate.rst
    86