This tutorial describes the first steps to use Mantychore. we are going to add a router and we will do the first operations to manage it (In this case, we only do a simple operation, to configure an IP)
Creating resources
The first step in Mantychore is the resource virtualization. In this step, it is added a new device to the Mantychore system. For this action, it is necessary to create a file to describe what features and capabilities this virtual resource will be able to have.
For this tutorial, can you use this template as example (for more information, the wiki has a section to describe each parameter). The command will be:
resource:create /home/carlos/Escritorio/resource.descriptor
Resource descriptor: to get more information about how it works, you can use this link.
Resources states
A resource is in a set of states which it permits do or not a set of operations. This picture describes these states:
Mainly, a resource will activate all its capabilities if it is started. For this reason, the next step will be start our resource:
resource:start router:junos20
Adding protocols
Each resource have to be linked to the necessary protocols which are used to connect with the physical device (the real router which we want to virtualize). In this case, we will use a netconf protocol to connect with the router:
protocols:context router:junos20 netconf ssh://myuser:mypassword@193.1.190.254:22/netconf
Description of the connection parameters:
- router:junos20 - specify resource type (router) and resource name (junos20). It specifies what resource will use this protocol
- netconf - name to describe which protocol it will be used
- ssh://myuser:mypassword@1.1.1.1:22/netconf - URI to describe connection parameters.
The format is:
[transport://user:password@ip:port/subsystem]
The parameters are quite easy to understand. The subsystem param specifics any special necessary parameter to specify in the connection.
Doing operations with the resource
Now, we have a started resource with a set of available operations. These operations will be send to the real device. In this case, we will be execute an ip configuration:
chassis:setInterface router:junos20 fe-0/1/2.0 192.168.1.1 255.255.255.0
To get the configuration result:
chassis:listInterfaces router:junos20
Removing a resource
Finally, if you don't need more our resource, you can stop and remove it. First, we need to stop it:
resource:stop router:junos20
The resource will deactivate all its capabilities and it will be reset. After, we will destroy it and we will delete any resource information in Mantychore.
resource:remove router:junos20