OSM client: Difference between revisions
Garciadeblas (talk | contribs) No edit summary |
Garciadeblas (talk | contribs) No edit summary |
||
Line 1: | Line 1: | ||
{{MARKDOWN}} | |||
The OSM client was introduced with OSM Release TWO to provide a python-based API and CLI to OSM. It provides you a number of APIs to upload, onboard, instantiate, terminate, including a recent addition to scale the network service. | The OSM client was introduced with OSM Release TWO to provide a python-based API and CLI to OSM. It provides you a number of APIs to upload, onboard, instantiate, terminate, including a recent addition to scale the network service. | ||
## Installation ## | |||
OSM client comes bundled with OSM installation, so if you successfully installed OSM . In addition you can also install it in a different computer. | OSM client comes bundled with OSM installation, so if you successfully installed OSM. | ||
In addition you can also install it in a different computer. | |||
```bash | |||
# Ubuntu pre-requirements | |||
sudo apt install python-pip libcurl4-gnutls-dev libgnutls-dev | |||
# CentOS pre-requirements | |||
# sudo yum install python-pip libcurl-devel gnutls-devel | |||
sudo -H pip install python-magic | |||
# Install OSM client from You could install the latest from master in this way: | |||
sudo -H pip install git+https://osm.etsi.org/gerrit/osm/osmclient@v5.0.2 | |||
# You could also install the latest client from master branch in this way: | |||
# sudo -H pip install git+https://osm.etsi.org/gerrit/osm/osmclient | |||
``` | |||
## Usage (client commands) ## | |||
Once installed, type “osm” to see a list of commands. If installed in a host different from where OSM is running, at minimum you will need to specify the OSM host, either via an environment variable or via the osm command line (see “osm --help” for info). | Once installed, type “osm” to see a list of commands. If installed in a host different from where OSM is running, at minimum you will need to specify the OSM host, either via an environment variable or via the osm command line (see “osm --help” for info). | ||
export OSM_HOSTNAME="127.0.0.1" | export OSM_HOSTNAME="127.0.0.1" | ||
**Usage:** | |||
``` | |||
osm [OPTIONS] COMMAND [ARGS]... | |||
``` | |||
**Options:** | |||
``` | |||
--hostname TEXT hostname of server. Also can set OSM_HOSTNAME in | |||
environment | |||
--sol005 / --no-sol005 Use ETSI NFV SOL005 API (default) or the previous SO | |||
API. Also can set OSM_SOL005 in environment | |||
--user TEXT user (only from Release FOUR, defaults to admin). | |||
Also can set OSM_USER in environment | |||
--password TEXT password (only from Release FOUR, defaults to | |||
admin). Also can set OSM_PASSWORD in environment | |||
--project TEXT project (only from Release FOUR, defaults to admin). | |||
Also can set OSM_PROJECT in environment | |||
--so-port TEXT hostname of server. Also can set OSM_SO_PORT in | |||
environment | |||
--so-project TEXT Project Name in SO. Also can set OSM_SO_PROJECT in | |||
environment | |||
--ro-hostname TEXT hostname of RO server. Also can set OSM_RO_HOSTNAME | |||
in environment | |||
--ro-port TEXT hostname of RO server. Also can set OSM_RO_PORT in | |||
environment | |||
--help Show this message and exit. | |||
``` | |||
**Commands:** | |||
``` | |||
config-agent-add adds a config agent | |||
config-agent-delete deletes a config agent NAME: name of the... | |||
config-agent-list list config agents | |||
netslice-instance-create creates a new Network Slice Instance | |||
netslice-instance-delete deletes a Network Slice Instance (NSI) | |||
netslice-instance-list list all Network Slice Instances (NSI) | |||
netslice-instance-op-list shows the history of operations over a... | |||
netslice-instance-op-show shows the info of an operation over a Network | |||
Slice Instance(NSI) | |||
netslice-instance-show shows the content of a Network Slice Instance | |||
(NSI) | |||
netslice-template-create creates a new Network Slice Template (NST) | |||
netslice-template-delete deletes a Network Slice Template (NST) | |||
netslice-template-list list all Network Slice Templates (NST) in the... | |||
netslice-template-show shows the content of a Network Slice Template | |||
(NST) | |||
netslice-template-update updates a Network Slice Template (NST) | |||
nf-list list all NF instances Options: --ns TEXT NS... | |||
nfpkg-create creates a new NFpkg | |||
nfpkg-delete deletes a NFpkg | |||
nfpkg-list list all NFpkg (VNFpkg, PNFpkg, HNFpkg) in... | |||
nfpkg-show shows the content of a NF Descriptor | |||
nfpkg-update updates a NFpkg | |||
ns-action executes an action/primitive over a NS... | |||
ns-alarm-create creates a new alarm for a NS instance | |||
ns-create creates a new Network Service instance | |||
ns-delete deletes a NS instance | |||
ns-list list all NS instances Options: --filter... | |||
ns-metric-export exports a metric to the internal OSM bus,... | |||
ns-monitoring-show | |||
ns-op-list shows the history of operations over a NS... | |||
ns-op-show shows the info of an operation | |||
ns-scale scales NS NS_NAME: name of the NS instance to... | |||
ns-scaling-show shows the status of a NS scaling operation... | |||
ns-show shows the info of a NS instance | |||
nsd-create creates a new NSD/NSpkg | |||
nsd-delete deletes a NSD/NSpkg | |||
nsd-list list all NSD/NSpkg in the system | |||
nsd-show shows the content of a NSD | |||
nsd-update updates a NSD/NSpkg | |||
nsi-create creates a new Network Slice Instance | |||
nsi-delete deletes a Network Slice Instance (NSI) | |||
nsi-list list all Network Slice Instances (NSI) | |||
nsi-op-list shows the history of operations over a... | |||
nsi-op-show shows the info of an operation over a Network | |||
Slice Instance(NSI) | |||
nsi-show shows the content of a Network Slice Instance | |||
(NSI) | |||
nspkg-create creates a new NSD/NSpkg | |||
nspkg-delete deletes a NSD/NSpkg | |||
nspkg-list list all NSD/NSpkg in the system | |||
nspkg-show shows the content of a NSD | |||
nspkg-update updates a NSD/NSpkg | |||
nst-create creates a new Network Slice Template (NST) | |||
nst-delete deletes a Network Slice Template (NST) | |||
nst-list list all Network Slice Templates (NST) in the... | |||
nst-show shows the content of a Network Slice Template | |||
(NST) | |||
nst-update updates a Network Slice Template (NST) | |||
pdu-create adds a new Physical Deployment Unit to the | |||
catalog | |||
pdu-delete deletes a Physical Deployment Unit (PDU) | |||
pdu-list list all Physical Deployment Units (PDU) | |||
pdu-show shows the content of a Physical Deployment Unit | |||
(PDU) | |||
project-create Creates a new project NAME: name of the... | |||
project-delete deletes a project NAME: name or ID of the... | |||
project-list list all projects | |||
project-show shows the details of a project NAME: name or... | |||
ro-dump shows RO agent information | |||
sdnc-create creates a new SDN controller | |||
sdnc-delete deletes an SDN controller NAME: name or ID of... | |||
sdnc-list list all SDN controllers | |||
sdnc-show shows the details of an SDN controller NAME:... | |||
sdnc-update updates an SDN controller | |||
upload-package uploads a VNF package or NS package FILENAME:... | |||
user-create Creates a new user USERNAME: name of the user | |||
user-delete deletes a user NAME: name or ID of the user... | |||
user-list list all users | |||
user-show shows the details of a user NAME: name or ID... | |||
vcs-list | |||
vim-create creates a new VIM account | |||
vim-delete deletes a VIM account NAME: name or ID of the... | |||
vim-list list all VIM accounts | |||
vim-show shows the details of a VIM account NAME: name... | |||
vim-update updates a VIM account | |||
vnf-list list all NF instances | |||
vnf-monitoring-show | |||
vnf-scale executes a VNF scale (adding/removing VDUs)... | |||
vnf-show shows the info of a VNF instance | |||
vnfd-create creates a new VNFD/VNFpkg | |||
vnfd-delete deletes a VNFD/VNFpkg | |||
vnfd-list list all VNFD/VNFpkg in the system | |||
vnfd-show shows the content of a VNFD | |||
vnfd-update updates a new VNFD/VNFpkg | |||
vnfpkg-create creates a new VNFD/VNFpkg | |||
vnfpkg-delete deletes a VNFD/VNFpkg | |||
vnfpkg-list list all VNFD/VNFpkg in the system | |||
vnfpkg-show shows the content of a VNFD | |||
vnfpkg-update updates a VNFD/VNFpkg | |||
``` | |||
##Enable autocompletion## | |||
You can enable autocompletion in OSM client by creating a file osm-complete.sh in the following way: | You can enable autocompletion in OSM client by creating a file osm-complete.sh in the following way: | ||
``` | |||
mkdir -p $HOME/.bash_completion.d | |||
_OSM_COMPLETE=source osm > $HOME/.bash_completion.d/osm-complete.sh | |||
``` | |||
Then you can add it to your $HOME/.bashrc file: | Then you can add it to your $HOME/.bashrc file: | ||
``` | |||
. .bash_completion.d/osm-complete.sh | |||
``` |
Revision as of 10:16, 5 February 2019
Template:MARKDOWN The OSM client was introduced with OSM Release TWO to provide a python-based API and CLI to OSM. It provides you a number of APIs to upload, onboard, instantiate, terminate, including a recent addition to scale the network service.
- Installation ##
OSM client comes bundled with OSM installation, so if you successfully installed OSM. In addition you can also install it in a different computer.
```bash
- Ubuntu pre-requirements
sudo apt install python-pip libcurl4-gnutls-dev libgnutls-dev
- CentOS pre-requirements
- sudo yum install python-pip libcurl-devel gnutls-devel
sudo -H pip install python-magic
- Install OSM client from You could install the latest from master in this way:
sudo -H pip install git+https://osm.etsi.org/gerrit/osm/osmclient@v5.0.2
- You could also install the latest client from master branch in this way:
- sudo -H pip install git+https://osm.etsi.org/gerrit/osm/osmclient
```
- Usage (client commands) ##
Once installed, type “osm” to see a list of commands. If installed in a host different from where OSM is running, at minimum you will need to specify the OSM host, either via an environment variable or via the osm command line (see “osm --help” for info).
export OSM_HOSTNAME="127.0.0.1"
- Usage:**
``` osm [OPTIONS] COMMAND [ARGS]... ```
- Options:**
```
--hostname TEXT hostname of server. Also can set OSM_HOSTNAME in environment --sol005 / --no-sol005 Use ETSI NFV SOL005 API (default) or the previous SO API. Also can set OSM_SOL005 in environment --user TEXT user (only from Release FOUR, defaults to admin). Also can set OSM_USER in environment --password TEXT password (only from Release FOUR, defaults to admin). Also can set OSM_PASSWORD in environment --project TEXT project (only from Release FOUR, defaults to admin). Also can set OSM_PROJECT in environment --so-port TEXT hostname of server. Also can set OSM_SO_PORT in environment --so-project TEXT Project Name in SO. Also can set OSM_SO_PROJECT in environment --ro-hostname TEXT hostname of RO server. Also can set OSM_RO_HOSTNAME in environment --ro-port TEXT hostname of RO server. Also can set OSM_RO_PORT in environment --help Show this message and exit.
```
- Commands:**
```
config-agent-add adds a config agent config-agent-delete deletes a config agent NAME: name of the... config-agent-list list config agents netslice-instance-create creates a new Network Slice Instance netslice-instance-delete deletes a Network Slice Instance (NSI) netslice-instance-list list all Network Slice Instances (NSI) netslice-instance-op-list shows the history of operations over a... netslice-instance-op-show shows the info of an operation over a Network Slice Instance(NSI) netslice-instance-show shows the content of a Network Slice Instance (NSI) netslice-template-create creates a new Network Slice Template (NST) netslice-template-delete deletes a Network Slice Template (NST) netslice-template-list list all Network Slice Templates (NST) in the... netslice-template-show shows the content of a Network Slice Template (NST) netslice-template-update updates a Network Slice Template (NST) nf-list list all NF instances Options: --ns TEXT NS... nfpkg-create creates a new NFpkg nfpkg-delete deletes a NFpkg nfpkg-list list all NFpkg (VNFpkg, PNFpkg, HNFpkg) in... nfpkg-show shows the content of a NF Descriptor nfpkg-update updates a NFpkg ns-action executes an action/primitive over a NS... ns-alarm-create creates a new alarm for a NS instance ns-create creates a new Network Service instance ns-delete deletes a NS instance ns-list list all NS instances Options: --filter... ns-metric-export exports a metric to the internal OSM bus,... ns-monitoring-show ns-op-list shows the history of operations over a NS... ns-op-show shows the info of an operation ns-scale scales NS NS_NAME: name of the NS instance to... ns-scaling-show shows the status of a NS scaling operation... ns-show shows the info of a NS instance nsd-create creates a new NSD/NSpkg nsd-delete deletes a NSD/NSpkg nsd-list list all NSD/NSpkg in the system nsd-show shows the content of a NSD nsd-update updates a NSD/NSpkg nsi-create creates a new Network Slice Instance nsi-delete deletes a Network Slice Instance (NSI) nsi-list list all Network Slice Instances (NSI) nsi-op-list shows the history of operations over a... nsi-op-show shows the info of an operation over a Network Slice Instance(NSI) nsi-show shows the content of a Network Slice Instance (NSI) nspkg-create creates a new NSD/NSpkg nspkg-delete deletes a NSD/NSpkg nspkg-list list all NSD/NSpkg in the system nspkg-show shows the content of a NSD nspkg-update updates a NSD/NSpkg nst-create creates a new Network Slice Template (NST) nst-delete deletes a Network Slice Template (NST) nst-list list all Network Slice Templates (NST) in the... nst-show shows the content of a Network Slice Template (NST) nst-update updates a Network Slice Template (NST) pdu-create adds a new Physical Deployment Unit to the catalog pdu-delete deletes a Physical Deployment Unit (PDU) pdu-list list all Physical Deployment Units (PDU) pdu-show shows the content of a Physical Deployment Unit (PDU) project-create Creates a new project NAME: name of the... project-delete deletes a project NAME: name or ID of the... project-list list all projects project-show shows the details of a project NAME: name or... ro-dump shows RO agent information sdnc-create creates a new SDN controller sdnc-delete deletes an SDN controller NAME: name or ID of... sdnc-list list all SDN controllers sdnc-show shows the details of an SDN controller NAME:... sdnc-update updates an SDN controller upload-package uploads a VNF package or NS package FILENAME:... user-create Creates a new user USERNAME: name of the user user-delete deletes a user NAME: name or ID of the user... user-list list all users user-show shows the details of a user NAME: name or ID... vcs-list vim-create creates a new VIM account vim-delete deletes a VIM account NAME: name or ID of the... vim-list list all VIM accounts vim-show shows the details of a VIM account NAME: name... vim-update updates a VIM account vnf-list list all NF instances vnf-monitoring-show vnf-scale executes a VNF scale (adding/removing VDUs)... vnf-show shows the info of a VNF instance vnfd-create creates a new VNFD/VNFpkg vnfd-delete deletes a VNFD/VNFpkg vnfd-list list all VNFD/VNFpkg in the system vnfd-show shows the content of a VNFD vnfd-update updates a new VNFD/VNFpkg vnfpkg-create creates a new VNFD/VNFpkg vnfpkg-delete deletes a VNFD/VNFpkg vnfpkg-list list all VNFD/VNFpkg in the system vnfpkg-show shows the content of a VNFD vnfpkg-update updates a VNFD/VNFpkg
```
- Enable autocompletion##
You can enable autocompletion in OSM client by creating a file osm-complete.sh in the following way: ``` mkdir -p $HOME/.bash_completion.d _OSM_COMPLETE=source osm > $HOME/.bash_completion.d/osm-complete.sh ```
Then you can add it to your $HOME/.bashrc file: ``` . .bash_completion.d/osm-complete.sh ```