XCASTER
What is XCASTER?
XCASTER is an essential component of the Vision Team's ecosystem, powering XDASH by automating device discovery. It broadcasts the hostname and critical details of its host machine using mDNS, allowing XDASH to seamlessly identify and connect to devices.
Key Features
Automatic Device Discovery: Broadcasts hostname and machine details via mDNS for effortless XDASH connectivity.
Integration with XDASH: Serves as the backbone of XDASH's automation, enabling dynamic machine management.
Lightweight Operation: Runs efficiently in the background with minimal resource usage.
Setup Flexibility: Configurable as a system service for reliable, automated startup and operation.
Why We Need XCASTER?
The Vision Team manages a growing number of devices hosting cameras and vision AI models. XCASTER is critical to ensuring these devices are seamlessly integrated into XDASH:
Simplifies Network Configuration: Automatically makes devices discoverable by XDASH, eliminating manual configuration.
Enables Scalability: As new machines are added, XCASTER ensures they are immediately accessible to XDASH.
Reliability in Automation: By automating discovery, XCASTER reduces setup time and ensures uninterrupted XDASH operations.
Without XCASTER, XDASH cannot dynamically adapt to the network, compromising efficiency and scalability for the team.
Setup Overview
For XCASTER to function, all machines in the network must have it installed and configured.
Step 1: Install Java 17
Ensure that Java 17 is installed on your system. To verify, run:
java -version
If Java 17 is not installed, download it from Oracle Java or install it using your system's package manager.
Step 2: Download XCASTER
Download the latest XCASTER .jar
file from the GitHub release page:
XCASTER v2.0.0 Release
Save the file to a directory where you want XCASTER to reside. A recommended location is /opt/xcaster/
:
sudo mkdir -p /opt/xcaster
sudo mv XCASTER.jar /opt/xcaster/
Step 3: Test XCASTER
Before setting it up as a service, test XCASTER by running:
java -Djava.net.preferIPv4Stack=true -jar /opt/xcaster/XCASTER.jar hostname username password
Replace
hostname
with the name of your machine.Replace
username
andpassword
with credentials relevant to your system.
If XCASTER runs without errors, it is ready for service configuration.
Step 4: Configure XCASTER as a System Daemon
Create a systemd service file for XCASTER:
sudo nano /etc/systemd/system/xcaster.service
Add the following configuration:
[Unit]
Description=XCASTER Service
After=network.target
[Service]
ExecStart=java -Djava.net.preferIPv4Stack=true -jar /opt/xcaster/XCASTER.jar hostname username password
Restart=always
RestartSec=3
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=xcaster
[Install]
WantedBy=multi-user.target
Update
hostname
,username
, andpassword
with the appropriate values for the machine.
Step 5: Enable and Start XCASTER
Enable and start the XCASTER service to ensure it runs automatically on boot:
sudo systemctl enable xcaster
sudo systemctl start xcaster
Verify the service is running:
sudo systemctl status xcaster
Step 6: Verify Broadcast
To verify that XCASTER is broadcasting its details, use the following command:
avahi-browse -rt _xcaster._tcp
This command will display a list of devices broadcasting their details under the _xcaster._tcp
service. If your machine is listed, XCASTER is running and broadcasting successfully.
With this setup, XCASTER ensures XDASH can dynamically discover and manage devices across the Vision Team's infrastructure.
Last updated