Air-gapped Installation
This guide provides instructions for deploying Observo Site in air-gapped environments where direct internet access is not available.
Prerequisites
System Requirements
4 vCPU or more
16 GB RAM minimum
50 GB disk space
Static private IP address
Required Files
Before starting, gather these files from a machine with internet access:
k3s Binary Files
Download from k3s releases:
k3sbinaryk3s-airgap-images-amd64.tar.gz(or arm64 for ARM architecture)
Download installation script:
Save https://get.k3s.io/ as
install.sh
Helm Binary
Download helm-v3.14.4-linux-amd64.tar.gz
Installation Steps
1. Prepare Environment
Copy all downloaded files to the air-gapped VM:
# Create installation directory
mkdir observo-install
cd observo-install
# Copy files to this directory:
# - k3s binary
# - k3s-airgap-images-amd64.tar.gz
# - install.sh
# - helm-v3.14.4-linux-amd64.tar.gz2. Install k3s
Set up k3s images:
sudo mkdir -p /var/lib/rancher/k3s/agent/images/ sudo cp k3s-airgap-images-amd64.tar.gz /var/lib/rancher/k3s/agent/images/Install k3s binary:
sudo cp k3s /usr/local/bin sudo chmod +x /usr/local/bin/k3sInstall k3s:
chmod +x install.sh INSTALL_K3S_SKIP_DOWNLOAD=true K3S_TOKEN=12345 ./install.shVerify Installation:
systemctl status k3s.service journalctl -xe
3. Configure kubectl Access
export KUBECONFIG=/etc/rancher/k3s/k3s.yaml
sudo chmod 666 /etc/rancher/k3s/k3s.yaml
kubectl get pods -A4. Install Helm
mkdir helm
tar -xvf helm-v3.14.4-linux-amd64.tar.gz ./helm
sudo cp ./helm/linux-amd64/helm /usr/local/bin/5. Deploy Observo Site
Set Environment Variable:
export OBSERVO_AIRGAPPED=trueRun Installation:
./observo_site_installer install_site $(pwd)/<site>.yaml
6. Verify Installation
# Check pods
kubectl get pods -n observo-client
# Check services
kubectl get svc -n observo-clientPost-Installation Configuration
1. Configure Network Access
The installer automatically sets up nginx proxy configuration:
# Verify nginx configuration
sudo nginx -t
# Check nginx status
sudo systemctl status nginx2. Test Connectivity
# Test HTTP endpoints
curl -v http://localhost:10001/health
# Test UDP endpoints
nc -zu localhost 10001For additional assistance, refer to:
Last updated
Was this helpful?

