Install and configure a compute node for Ubuntu

This section describes how to install and configure the Kuryr-libnetwork for Ubuntu 16.04 (LTS).


This guide assumes Docker is already installed. Refer Get Docker for Docker installation.

Install and configure components

  1. Create kuryr user and necessary directories:

    • Create user:

      # groupadd --system kuryr
      # useradd --home-dir "/var/lib/kuryr" \
            --create-home \
            --system \
            --shell /bin/false \
            -g kuryr \
    • Create directories:

      # mkdir -p /etc/kuryr
      # chown kuryr:kuryr /etc/kuryr
  2. Clone and install kuryr-libnetwork:

    # apt-get install python3-pip
    # cd /var/lib/kuryr
    # git clone -b master
    # chown -R kuryr:kuryr kuryr-libnetwork
    # cd kuryr-libnetwork
    # pip3 install -r requirements.txt
    # python3 install
  3. Generate a sample configuration file:

    # su -s /bin/sh -c "./tools/" kuryr
    # su -s /bin/sh -c "cp etc/kuryr.conf.sample \
          /etc/kuryr/kuryr.conf" kuryr
  4. Edit the /etc/kuryr/kuryr.conf:

    • In the [DEFAULT] section, configure the path for the Kuryr vif binding executables:

      bindir = /usr/local/libexec/kuryr
    • In the [neutron] section, configure Identity service access:

      www_authenticate_uri = http://controller:5000
      auth_url = http://controller:5000
      username = kuryr
      user_domain_name = default
      password = KURYR_PASSWORD
      project_name = service
      project_domain_name = default
      auth_type = password

      Replace KURYR_PASSWORD with the password you chose for the kuryr user in the Identity service.

  5. Create an upstart config, it could be named as /etc/systemd/system/kuryr-libnetwork.service:

    Description = Kuryr-libnetwork - Docker network plugin for Neutron
    ExecStart = /usr/local/bin/kuryr-server --config-file /etc/kuryr/kuryr.conf
    CapabilityBoundingSet = CAP_NET_ADMIN
    AmbientCapabilities = CAP_NET_ADMIN
    WantedBy =

Finalize installation

  1. Enable and start the kuryr-libnetwork service:

    # systemctl enable kuryr-libnetwork
    # systemctl start kuryr-libnetwork
  2. After Kuryr starts, please restart your Docker service:

    # systemctl restart docker