Skip to main content

No project description provided

Project description

[TOC]


Prerequisites

  • Wireguard kernel module is installed and loaded:
lsmod | grep wireguard
  • Optional: Docker is installed and running:
docker system info

Limitations

  • Docker network subnets can't overlap.
  • 10.69.0.0/16 is used for internal Wireguard network

Steps


1. Login to https://platform.noia.network

2. Create API key (Settings > API keys)

3. Install NOIA Agent

Possible versions:

Stable: noia/agent:prod

Development: noia/agent:devel or noia/agent:latest

With Docker
docker run --network="host" --restart=on-failure:10 \ 
--cap-add=NET_ADMIN --cap-add=SYS_MODULE \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
--device /dev/net/tun:/dev/net/tun \
--name=noia-agent \
-e NOIA_API_KEY='z99CuiZnMhe2qtz4LLX43Gbho5Zu9G8oAoWRY68WdMTVB9GzuMY2HNn667A752EA' \
-e NOIA_NETWORK_API='docker' \
-d noia/agent:prod

Check agent logs:

docker logs noia-agent

More information: https://bitbucket.org/noianetwork-team/platform-agent/src/master/DOCKER.md


With Docker-compose

With Portainer agent:

curl  https://bitbucket.org/noianetwork-team/platform-agent/raw/master/docker-compose/na-pa.yml \
-o docker-compose.yaml

Without portainer agent:

curl  https://bitbucket.org/noianetwork-team/platform-agent/raw/master/docker-compose/noia-agent.yaml \
-o docker-compose.yaml

Edit docker-compose.yaml file and edit these environment variables:

NOIA_API_KEY= your_api_key

Start containers:

docker-compose up -d

Check agent logs:

docker logs noia-agent

P.S. NOIA Agent will ignore the default docker network, you will need to create a separate network with different subnets on different hosts. Also, subnet 10.69.0.0/16 is used by our agent.

More information:

https://bitbucket.org/noianetwork-team/platform-agent/src/master/DOCKER_COMPOSE.md


With pip
pip3 install platform-agent

Download systemd service file:

curl https://bitbucket.org/noianetwork-team/platform-agent/raw/master/systemd/noia-agent.service -o /etc/systemd/system/noia-agent.service

Create noia-agent directory:

mkdir /etc/systemd/system/noia-agent.service.d/
chmod -R 600 /etc/noia-agent

Download settings file:

curl https://bitbucket.org/noianetwork-team/platform-agent/raw/master/systemd/10-vars.conf -o /etc/systemd/system/noia-agent.service.d/10-vars.conf

Edit settings file /etc/systemd/system/noia-agent.service.d/10-vars.conf and change these settings:

[Service]
# Required parameters
Environment=NOIA_API_KEY=YOUR_API_KEY
# Optional parameters
Environment=NOIA_CONTROLLER_URL=app-controller-platform-agents.noia.network
Environment=NOIA_ALLOWED_IPS=[{"10.0.44.0/24":"oracle_vpc"},{"192.168.111.2/32":"internal"}]
#If using docker , NOIA_NETWORK_API=docker would allow agent to access docker networks for information.
Environment=NOIA_NETWORK_API=none
Environment="NOIA_NAME=Azure EU gateway"
Environment=NOIA_COUNTRY=Germany
Environment=NOIA_CITY=Frankfurt
#Select one of the categories from the list or default will be assigned
# 'IoT','Server','none'
Environment=NOIA_CATEGORY=IoT
#Select one of providers from the list or default will be assigned
#'AWS', 'DigitalOcean', 'Microsoft Azure', 'Rackspace', 'Alibaba Cloud',
#'Google Cloud Platform', 'Oracle Cloud', 'VMware', 'IBM Cloud', 'Vultr'.
Environment="NOIA_PROVIDER=Microsoft Azure"
Environment=NOIA_LAT=40.14
Environment=NOIA_LON=-74.21
Environment=NOIA_TAGS=Tag1,Tag2
systemctl  daemon-reload
systemctl enable --now noia-agent

Check if service is running:

systemctl status noia-agent

More information: https://bitbucket.org/noianetwork-team/platform-agent/src/master/pip.md


On Portainer
  1. Select image:

alt_text

  1. Select network (Agent MUST run in the host network):

alt_text

  1. Add environment variables:

** Mandatory variables: **

NOIA_API_KEY= your_api_key

** Metadata (Optional) **

-e NOIA_NETWORK_API='docker'
-e NOIA_NAME='Azure EU gateway '
-e NOIA_COUNTRY='Germany'
-e NOIA_CITY='Frankfurt'

#Select one of the categories from the list or default will be assigned 
# 'IoT','Server','none' 
-e NOIA_CATEGORY='IoT'

#Select one of providers from the list or default will be assigned 
#'AWS', 'DigitalOcean', 'Microsoft Azure', 'Rackspace', 'Alibaba Cloud', 
#'Google Cloud Platform', 'Oracle Cloud', 'VMware', 'IBM Cloud', 'Vultr'. 

-e NOIA_PROVIDER ='Microsoft Azure'
-e NOIA_LAT='40.14'
-e NOIA_LON='-74.21'

#You can manually add allowed ips
-e NOIA_ALLOWED_IPS='[{"127.0.24.0/24":"myvpc"},{"192.168.24.0/32":"vpc"}]'

alt_text

(noia agent will read docker subnets and report them to the controller). If this variable is selected, you also need to add docker.sock as a read-only volume;

alt_text

  1. Add additional capabilities (NET_ADMIN and SYS_MODULE):

alt_text

  1. All agents will appear in NOIA Platform as endpoints:

alt_text

  1. To connect endpoints to a network, select Networks > Add new network. Input Network name, select Type (if you want connect multiple Portainer agents to Portainer, choose Gateway and select Portainer host as a gateway and select agents which you want to connect), then click Add:

alt_text

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

platform-agent-devel-0.0.44.tar.gz (15.5 kB view details)

Uploaded Source

File details

Details for the file platform-agent-devel-0.0.44.tar.gz.

File metadata

  • Download URL: platform-agent-devel-0.0.44.tar.gz
  • Upload date:
  • Size: 15.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.6.9

File hashes

Hashes for platform-agent-devel-0.0.44.tar.gz
Algorithm Hash digest
SHA256 a3489cc6f77dee0ff3b5e8b64efbac4210ca3419a2a283e41b469a8ef76211bc
MD5 b9b0cb5ccb18bb23b6395487f8e18fe0
BLAKE2b-256 b65361e2073ced772e484c1db091526c77e233708ee430350adc264a8ec26668

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page