The contrail-api-cli
command-line utility interacts with the OpenContrail
API server that allows searching for or modifying API resources
as well as supports the unix-style commands. For more information, see the
Official contrail-api-cli documentation.
This section contains the following topics:
To install contrail-api-cli:
Log in to any OpenContrail controller node. For example, ntw01
.
Install the Python virtual environment for contrail-api-cli
:
apt-get install python-pip python-dev -y &&\
pip install virtualenv && \
virtualenv contrail-api-cli-venv && \
source contrail-api-cli-venv/bin/activate && \
git clone https://github.com/eonpatapon/contrail-api-cli/ && \
cd contrail-api-cli;sudo python setup.py install
To access the OpenContrail API:
Use the keystonerc
file with credentials and endpoints:
source /root/keystonerc
source /root/keystonercv3
Connect to the OpenContrail API using the following command:
contrail-api-cli --host 10.167.4.20 --port 9100 shell
Or you can use your OpenStack credentials. For example:
contrail-api-cli --os-user-name admin --os-password workshop \
--os-auth-plugin v2password --host 10.10.10.254 --port 8082 --protocol http \
--insecure --os-auth-url http://10.10.10.254:5000/v2.0 --os-tenant-name admin shell
Note
ln
command, define a schema in the --schema-version 3.1
parameter. The known versions are the following:
2.21, 3.2, 3.0, 1.10, 3.1.The contrail-api-cli-extra
package contains the contrail-api-cli
commands to make the OpenContrail installation and operation process easier.
The commands are grouped in different sub-packages and have different purposes:
clean
: detect and remove bad resourcesfix
: detect and fix bad resourcesmigration
: handle data migration when upgrading OpenContrail to
a major versionmisc
: general-purpose commandsprovision
: provision and configure an OpenContrail installationTo install the contrail-api-cli-extra package:
Run the following command:
pip install contrail-api-cli-extra
The most used contrail-api-cli-extra
sub-packages are the following:
contrail-api-cli_extra.clean
- since the sub-package allows removing
resources, you must explicitly load the contrail_api_cli.clean
namespace
to run the commands of this sub-package.
Example of usage:
contrail-api-cli --ns contrail_api_cli.clean <command>
# usage
contrail-api-cli --host 10.167.4.21 --port 9100 --ns contrail_api_cli.clean shell
This package includes the clean-<type>
command. Replace type
with
the required type of cleaning process. For example:
clean-route-target
clean-orphaned-acl
clean-si-scheduling
clean-stale-si
contrail_api_cli_extra.fix
- allows you to verify and fix misconfigured
resources. For example, fix multiple security groups or association of a
subnet with a virtual network (VN) in a key-value store.
If this sub-package is installed, it launches with contrail-api-cli
automatically.
Example of usage:
fix-vn-id virtual-network/600ad108-fdce-4056-af27-f07f9faa5cae --zk-server 10.167.4.21
fix-zk-ip --dry-run --zk-server 10.167.4.21:2181 vitrual-network/xxxxxx-xxxxxxx-xxxxxx