In Netpicker, you can set up multiple tenants to isolate your devices and administer them in separate workspaces. Each tenant has its own devices and users can be given access to a specific tenant.
Use cases for multi-tenancy can be for example:
- Departments inside your organisation
- Datacenters which are isolated because of redundancy
- Networks in different physical locations around the world
In Netpicker, you can create extra tenants by clicking on your user icon and going to ‘Tenants’:

This will display a list of your tenants and an option to create a new tenant.
After creating a tenant, you can assign users to a tenant by going to the ‘Tenant users’ tab:

Each tenant in Netpicker has its own agent, a container that connects to the network devices in the tenant. When you navigate to your new tenant, you wil see an information modal with the AGENT_ID you need to configure:

To set up a new agent, create a new docker-compose.yml file and put in the following content, updating the AGENT_ID to the value displayed in Netpicker and the WS_ENDPOINT to your Netpicker instance address:
services:
agent:
image: netpicker/agent
container_name: agent
labels:
service.netpicker.io: agent
environment:
AGENT_ID: XXXXXXXX
WS_ENDPOINT: wss://dev.netpicker.io/api/v1/agents/ws
volumes:
- config:/agent-config
- secret:/run/secrets
restart: unless-stopped
depends_on:
api:
condition: service_healthy
healthcheck:
test: "echo LST | nc -v localhost 8765"
start_period: 2s
interval: 5s
volumes:
config:
secret: