Instalar cRPD en Docker
Esta sección incluye los siguientes temas:
Antes de instalar
Antes de instalar cRPD como servicio de enrutamiento para lograr la funcionalidad de enrutamiento en un entorno de contenedor Linux, asegúrese de:
-
Verifique las especificaciones de requisitos del sistema para que el servidor Linux implemente cRPD, consulte Requisitos para implementar cRPD en un servidor Linux.
Instalar y verificar Docker
Instalar y configurar Docker en una plataforma de host Linux Para implementar el entorno de contenedor de Linux, consulte Instalar Docker para obtener instrucciones de instalación en los sistemas operativos host Linux compatibles.
Compruebe la instalación de Docker. Consulte Depurar aplicación cRPD.
Para instalar el Docker más reciente:
root@ubuntu-vm18:~# curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
OK
root@ubuntu-vm18:~# lsb_release -cs
focal
root@ubuntu-vm18:~# add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
Hit:1 http://us.archive.ubuntu.com/ubuntu focal InRelease Get:2 http://us.archive.ubuntu.com/ubuntu focal-updates InRelease [128 kB] Get:3 https://download.docker.com/linux/ubuntu focal InRelease [57.7 kB] Hit:4 http://us.archive.ubuntu.com/ubuntu focal-backports InRelease Get:5 https://download.docker.com/linux/ubuntu focal/stable amd64 Packages [50.2 kB] Get:6 http://us.archive.ubuntu.com/ubuntu focal-security InRelease [128 kB] Get:7 http://us.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages [3,563 kB] Get:8 http://us.archive.ubuntu.com/ubuntu focal-updates/main Translation-en [550 kB] Get:9 http://us.archive.ubuntu.com/ubuntu focal-updates/main amd64 c-n-f Metadata [17.7 kB] Get:10 http://us.archive.ubuntu.com/ubuntu focal-updates/restricted amd64 Packages [3,236 kB] Get:11 http://us.archive.ubuntu.com/ubuntu focal-updates/restricted Translation-en [453 kB] Get:12 http://us.archive.ubuntu.com/ubuntu focal-updates/universe amd64 Packages [1,230 kB] Get:13 http://us.archive.ubuntu.com/ubuntu focal-updates/universe Translation-en [295 kB] Get:14 http://us.archive.ubuntu.com/ubuntu focal-security/main amd64 Packages [3,195 kB] Get:15 http://us.archive.ubuntu.com/ubuntu focal-security/main Translation-en [472 kB] Get:16 http://us.archive.ubuntu.com/ubuntu focal-security/restricted amd64 Packages [3,117 kB] Get:17 http://us.archive.ubuntu.com/ubuntu focal-security/restricted Translation-en [436 kB] Fetched 16.9 MB in 8s (2,172 kB/s) Reading package lists... Done
root@ubuntu-vm18:~# apt update
Hit:1 https://download.docker.com/linux/ubuntu focal InRelease Hit:2 http://us.archive.ubuntu.com/ubuntu focal InRelease Get:3 http://us.archive.ubuntu.com/ubuntu focal-updates InRelease [128 kB] Hit:4 http://us.archive.ubuntu.com/ubuntu focal-backports InRelease Get:5 http://us.archive.ubuntu.com/ubuntu focal-security InRelease [128 kB] Get:6 http://us.archive.ubuntu.com/ubuntu focal-security/main amd64 c-n-f Metadata [14.3 kB] Fetched 270 kB in 1s (198 kB/s) Reading package lists... Done Building dependency tree Reading state information... Done 67 packages can be upgraded. Run 'apt list --upgradable' to see them.
root@ubuntu-vm18:~# apt install docker-ce
Reading package lists... Done Building dependency tree Reading state information... Done The following additional packages will be installed: containerd.io docker-buildx-plugin docker-ce-cli docker-ce-rootless-extras docker-compose-plugin pigz slirp4netns Suggested packages: aufs-tools cgroupfs-mount | cgroup-lite The following NEW packages will be installed: containerd.io docker-buildx-plugin docker-ce docker-ce-cli docker-ce-rootless-extras docker-compose-plugin pigz slirp4netns 0 upgraded, 8 newly installed, 0 to remove and 67 not upgraded. Need to get 122 MB of archives. After this operation, 440 MB of additional disk space will be used. Do you want to continue? [Y/n] y Get:1 http://us.archive.ubuntu.com/ubuntu focal/universe amd64 pigz amd64 2.4-1 [57.4 kB] Get:2 http://us.archive.ubuntu.com/ubuntu focal/universe amd64 slirp4netns amd64 0.4.3-1 [74.3 kB] Get:3 https://download.docker.com/linux/ubuntu focal/stable amd64 containerd.io amd64 1.7.22-1 [29.5 MB] Get:4 https://download.docker.com/linux/ubuntu focal/stable amd64 docker-buildx-plugin amd64 0.16.2-1~ubuntu.20.04~focal [29.9 MB] Get:5 https://download.docker.com/linux/ubuntu focal/stable amd64 docker-ce-cli amd64 5:27.2.1-1~ubuntu.20.04~focal [15.0 MB] Get:6 https://download.docker.com/linux/ubuntu focal/stable amd64 docker-ce amd64 5:27.2.1-1~ubuntu.20.04~focal [25.6 MB] Get:7 https://download.docker.com/linux/ubuntu focal/stable amd64 docker-ce-rootless-extras amd64 5:27.2.1-1~ubuntu.20.04~focal [9,577 kB] Get:8 https://download.docker.com/linux/ubuntu focal/stable amd64 docker-compose-plugin amd64 2.29.2-1~ubuntu.20.04~focal [12.5 MB] Fetched 122 MB in 4s (29.5 MB/s) Selecting previously unselected package pigz. (Reading database ... 71975 files and directories currently installed.) Preparing to unpack .../0-pigz_2.4-1_amd64.deb ... Unpacking pigz (2.4-1) ... Selecting previously unselected package containerd.io. Preparing to unpack .../1-containerd.io_1.7.22-1_amd64.deb ... Unpacking containerd.io (1.7.22-1) ... Selecting previously unselected package docker-buildx-plugin. Preparing to unpack .../2-docker-buildx-plugin_0.16.2-1~ubuntu.20.04~focal_amd64.deb ... Unpacking docker-buildx-plugin (0.16.2-1~ubuntu.20.04~focal) ... Selecting previously unselected package docker-ce-cli. Preparing to unpack .../3-docker-ce-cli_5%3a27.2.1-1~ubuntu.20.04~focal_amd64.deb ... Unpacking docker-ce-cli (5:27.2.1-1~ubuntu.20.04~focal) ... Selecting previously unselected package docker-ce. Preparing to unpack .../4-docker-ce_5%3a27.2.1-1~ubuntu.20.04~focal_amd64.deb ... Unpacking docker-ce (5:27.2.1-1~ubuntu.20.04~focal) ... Selecting previously unselected package docker-ce-rootless-extras. Preparing to unpack .../5-docker-ce-rootless-extras_5%3a27.2.1-1~ubuntu.20.04~focal_amd64.deb ... Unpacking docker-ce-rootless-extras (5:27.2.1-1~ubuntu.20.04~focal) ... Selecting previously unselected package docker-compose-plugin. Preparing to unpack .../6-docker-compose-plugin_2.29.2-1~ubuntu.20.04~focal_amd64.deb ... Unpacking docker-compose-plugin (2.29.2-1~ubuntu.20.04~focal) ... Selecting previously unselected package slirp4netns. Preparing to unpack .../7-slirp4netns_0.4.3-1_amd64.deb ... Unpacking slirp4netns (0.4.3-1) ... Setting up slirp4netns (0.4.3-1) ... Setting up docker-buildx-plugin (0.16.2-1~ubuntu.20.04~focal) ... Setting up containerd.io (1.7.22-1) ... Created symlink /etc/systemd/system/multi-user.target.wants/containerd.service → /lib/systemd/system/containerd.service. Setting up docker-compose-plugin (2.29.2-1~ubuntu.20.04~focal) ... Setting up docker-ce-cli (5:27.2.1-1~ubuntu.20.04~focal) ... Setting up pigz (2.4-1) ... Setting up docker-ce-rootless-extras (5:27.2.1-1~ubuntu.20.04~focal) ... Setting up docker-ce (5:27.2.1-1~ubuntu.20.04~focal) ... Created symlink /etc/systemd/system/multi-user.target.wants/docker.service → /lib/systemd/system/docker.service. Created symlink /etc/systemd/system/sockets.target.wants/docker.socket → /lib/systemd/system/docker.socket. Processing triggers for man-db (2.9.1-1) ... Processing triggers for systemd (245.4-4ubuntu3.20) ...
root@ubuntu-vm18:~# docker version
Client: Docker Engine - Community Version: 27.2.1 API version: 1.47 Go version: go1.22.7 Git commit: 9e34c9b Built: Fri Sep 6 12:08:15 2024 OS/Arch: linux/amd64 Context: default Server: Docker Engine - Community Engine: Version: 27.2.1 API version: 1.47 (minimum version 1.24) Go version: go1.22.7 Git commit: 8b539b8 Built: Fri Sep 6 12:08:15 2024 OS/Arch: linux/amd64 Experimental: false containerd: Version: 1.7.22 GitCommit: 7f7fdf5fed64eb6a7caf99b3e12efcf9d60e311c runc: Version: 1.1.14 GitCommit: v1.1.14-0-g2c9f560 docker-init: Version: 0.19.0 GitCommit: de40ad0
Descargue el software cRPD desde Docker Registry
El software cRPD está disponible como un archivo de Docker cRPD en el registro de Juniper Docker.
Puede descargar el software de dos maneras:
-
Registro de Juniper Docker
-
Página de descarga de software de Juniper
-
Antes de importar el software cRPD, asegúrese de que Docker esté instalado en el host Linux y de que Docker Engine se esté ejecutando.
-
Asegúrese de registrarse en el soporte de Juniper antes de descargar el software cRPD.
Una vez que el motor de Docker se haya instalado en el host, realice lo siguiente para descargar y comenzar a usar la imagen cRPD:
Para descargar el software cRPD mediante el registro de Juniper Docker:
Descargar el software cRPD desde la URL de Juniper
Crear volúmenes de datos
Para crear volúmenes de datos:
Para iniciar cRPD en modo de red de host:
-
En el modo de host, se comparte el espacio de nombres de red. Por ejemplo, si se define una interfaz dentro de un pod, la misma interfaz también es visible en el host. Los contenedores de Docker usan el espacio de nombres de red de host. Ejecute el comando para iniciar cRPD en el modo de red de host:
root@ubuntu-vm18:~# docker run --rm --detach --name crpd01 -h crpd01 --privileged --net=host -v crpd01-config:/config -v crpd01-varlog:/var/log -it crpd:24.2R1.14
Configurar memoria
Puede limitar la cantidad de memoria asignada al cRPD especificando el tamaño de memoria en el siguiente comando:
-
root@ubuntu-vm18:~# docker run --rm --detach --name crpd01 -h crpd01 --privileged -v crpd01-config:/config -v crpd01-varlog:/var/log -m 2048MB --memory-swap=2048MB -it crpd:24.2R1.14
Configurar cRPD mediante la CLI
cRPD proporciona configuración de línea de comandos de Junos y comandos operativos para el servicio de enrutamiento. Proporciona subconjuntos de configuración de protocolos de enrutamiento que permiten que el nodo participe en la topología y el enrutamiento.
Puede configurar interfaces desde el shell de Linux. La configuración de la interfaz solo está disponible para las direcciones ISO.
Para configurar el contenedor cRPD mediante la CLI: