Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Gestion du cRPD

Construire des topologies

Vous pouvez l’utiliser open-vswitch pour configurer des topologies et se connecter à des conteneurs Docker. Cela contrôle la création des ponts, la dénomination des interfaces et l’adressage IP.

Pour construire une topologie :

  1. Téléchargez et installez l’utilitaireopenvswitch-switch.

    root@ubuntu-vm18:~# apt-get install openvswitch-switch

  2. Accédez au chemin suivant :

    root@ubuntu-vm18:~# cd /usr/bin

  3. Télécharger ovs-docker avec wget :

    root@ubuntu-vm18:~# wget "https://raw.githubusercontent.com/openvswitch/ovs/master/utilities/ovs-docker"

  4. Changez de mode :

    root@ubuntu-vm18:~# chmod a+rwx ovs-docker

  5. Créez le conteneur crpd01.

    root@ubuntu-vm18:~# docker run --rm --detach --name crpd01 -h crpd01 --net=bridge --privileged -v crpd01-config:/config -v crpd01-varlog:/var/log -it enterprise-hub.juniper.net/crpd-docker-prod/crpd:19.2R1.8

  6. Créez le conteneur crpd02.

    root@ubuntu-vm18:~# docker run --rm --detach --name crpd02 -h crpd02 --net=bridge --privileged -v crpd02-config:/config -v crpd02-varlog:/var/log -it enterprise-hub.juniper.net/crpd-docker-prod/crpd:19.2R1.8

Mise en réseau des conteneurs Docker

Les conteneurs Docker sont connectés à l’aide de ponts définis par l’utilisateur. Pour obtenir de la documentation détaillée sur le pont Docker, voir Utiliser les réseaux de pont.

Pour créer le réseau Docker :

  1. Créez un pont my-net.

    root@ubuntu-vm18:~# docker network create --internal my-net

    L’argument --internal empêche le pont d’être connecté au réseau hôte, ce qui est souhaitable dans certains cas. Une fois qu’un pont est créé, il peut être attaché ou détaché aux conteneurs.

  2. Connectez les deux conteneurs à l’aide du pont.

    root@ubuntu-vm18:~# docker network connect my-net crpd01

    root@ubuntu-vm18:~# docker network connect my-net crpd02

    Cela crée eth1 avec un sous-réseau 172.18.0.0/16 sur crpd01 et crpd02.

Supprimer un pont

  1. Retirez un pont.
    root@ubuntu-vm18:~# docker network rm my-net
  2. Déconnectez le pont des conteneurs.
    root@ubuntu-vm18:~# docker network disconnect my-net crpd01
    root@ubuntu-vm18:~# docker network disconnect my-net crpd02

Création d’un pont OVS

Pour créer un pont OVS et connecter le docker à deux conteneurs crpd01 et crpd02 :

  1. Créez un pont reliant les crpd01 et crpd02.

    root@ubuntu-vm18:~# ovs-vsctl add-br crpd01-crpd02_1

  2. Ajoutez des interfaces au pont.

    root@ubuntu-vm18:~# ovs-docker add-port crpd01-crpd02_1 eth1 crpd01

    root@ubuntu-vm18:~# ovs-docker add-port crpd01-crpd02_1 eth1 crpd02

  3. Configurez une adresse IP sur l’interface.

    root@ubuntu-vm18:~# docker exec -d crpd01 ifconfig eth1 10.1.1.1/24

    root@ubuntu-vm18:~# docker exec -d crpd02 ifconfig eth1 10.1.1.2/24

  4. Configurez une adresse IP vers l’interface de bouclage.

    root@ubuntu-vm18:~# docker exec -d crpd01 ifconfig lo 10.255.255.1 netmask 255.255.255.255

    root@ubuntu-vm18:~# docker exec -d crpd02 ifconfig lo 10.255.255.2 netmask 255.255.255.255

  5. Connectez-vous à crpd01.

    root@ubuntu-vm18:~# docker exec -it crpd01 bash

  6. Vérifiez les détails de l’interface.

    root@crpd01:/# ifconfig

  7. Vérifier la connexion avec crpd02

    root@crpd01:/# ping 10.1.1.2 -c 2

Configuration d’OSPF

  1. Configurez crpd01 pour configurer le protocole OSPF.

    root@ubuntu-vm18:~# set policy-options policy-statement adv term 1 from route-filter 10.10.10.0/24 exact

    root@ubuntu-vm18:~# set policy-options policy-statement adv term 1 then accept

    root@ubuntu-vm18:~# set routing-options router-id 10.255.255.1

    root@ubuntu-vm18:~# set routing-options static route 10.10.10.0/24 reject

    root@ubuntu-vm18:~# set protocols ospf export adv

    root@ubuntu-vm18:~# set protocols ospf area 0.0.0.0 interface eth1

    root@ubuntu-vm18:~# set protocols ospf area 0.0.0.0 interface lo.0

  2. Configurez crpd02 pour configurer le protocole OSPF.

    root@ubuntu-vm18:~# set policy-options policy-statement adv term 1 from route-filter 10.20.20.0/24 exact

    root@ubuntu-vm18:~# set policy-options policy-statement adv term 1 then accept

    root@ubuntu-vm18:~# set routing-options router-id 10.255.255.2

    root@ubuntu-vm18:~# set routing-options static route 10.20.20.0/24 reject

    root@ubuntu-vm18:~# set protocols ospf export adv

    root@ubuntu-vm18:~# set protocols ospf area 0.0.0.0 interface eth1

    root@ubuntu-vm18:~# set protocols ospf area 0.0.0.0 interface lo.0

  3. Connectez-vous à crpd01.
    docker exec -it crpd01 bash
  4. Vérifiez les détails de route OSPF.

    root@crpd01:/# cli

    root@crpd01> show ospf neighbor

    root@crpd01> show ospf route

    root@crpd01> show route

  5. Vérifiez les routes.

    root@crpd01> exit

    root@crpd01:/# ip route

    root@crpd01:/# ping 10.255.255.2 -c 2

Suppression des interfaces et des ponts

Pour supprimer les interfaces et les ponts :

  1. Supprimer les interfaces :

    root@ubuntu-vm18:~# ovs-docker del-port crpd01-crpd02_1 eth1 R1

  2. Supprimer les ponts :

    root@ubuntu-vm18:~# ovs-vsctl del-br crpd01-crpd02_1

Affichage des processus de conteneur dans un cRPD en cours d’exécution

Pour consulter les processus de conteneur :

Exécutez la docker exec commande pour afficher les détails sur les processus (applications, services et statut) s’exécutant sur un conteneur.

root@ubuntu-vm18:~# docker exec crpd01 ps aux

Accès à cRPD CLI et Bash Shell

Pour accéder au cRPD à l’aide de cli et de shell bash :

  1. Exécutez le docker exec -it crpd1 cli pour lancer junos CLI.

    root@ubuntu-vm18:~# docker exec -it crpd01 cli

  2. Exécutez le docker exec -it crpd1 bash pour lancer l’shell Junos.

    root@ubuntu-vm18:~# docker exec -it crpd01 bash

Mise en pause et reprise des processus dans un conteneur cRPD

Vous pouvez mettre en pause ou reprendre tous les processus dans un ou plusieurs conteneurs.

Pour mettre en pause et redémarrer un cRPD :

  1. Exécutez la docker pause commande pour suspendre tous les processus dans un conteneur cRPD.

    root@ubuntu-vm18:~# docker pause crpd-container-name

  2. Exécutez la docker unpause commande pour reprendre tous les processus dans le conteneur cRPD.

    root@ubuntu-vm18:~# docker unpause crpd-container-name

Suppression d’une instance cRPD

Pour supprimer une instance ou une image cRPD :

Note:

Vous devez d’abord arrêter et supprimer une instance cRPD avant de supprimer une image cRPD.

  1. Exécutez la docker stop commande pour arrêter le cRPD.

    root@ubuntu-vm18:~# docker stop crpd-container-name

  2. Exécutez la docker rm commande pour supprimer le cRPD.

    root@ubuntu-vm18:~# docker rm crpd-container-name

    Note:

    Inclure --force pour forcer la suppression du cRPD en cours d’exécution.

  3. Exécutez la docker rmi commande pour supprimer une ou plusieurs images cRPD du moteur Docker.
    Note:

    Inclure --force pour forcer le retrait d’une image cRPD.

    root@ubuntu-vm18:~# docker rmi crd-Image-name

Consultation des statistiques et des journaux Docker

Pour consulter les statistiques et les journaux :

  1. Exécutez la docker stats commande pour surveiller l’utilisation des ressources.
  2. Exécutez la docker logs crpd-container-name commande d’extraction des journaux de conteneur.

Consultation des conteneurs actifs

Pour consulter les conteneurs actifs actuels et leur statut :

Exécutez la docker ps commande ou la docker container ls liste des conteneurs actifs.

root@ubuntu-vm18:~# docker container ls

root@ubuntu-vm18:~# docker ps

Arrêter le conteneur

Pour arrêter le conteneur :

Vous pouvez arrêter le conteneur à l’aide de la commande suivante :

root@ubuntu-vm18:~# docker stop crpd-container-name