Offline Installs And Upgrades
LogZilla documentation for Offline Installs And Upgrades
LogZilla supports offline installations and upgrades for air-gapped environments where direct internet access is not available. The offline installation package contains all necessary Docker images and installation scripts, enabling complete LogZilla deployment without external network connectivity.
Important: Offline installations require Docker to be pre-installed on the target system. The offline package does not include Docker itself.
Version Support Policy
- Supported versions: v6.26.0 and above receive updates, security patches, and technical support.
- End of Life (EOL): versions prior to v6.26.0 no longer receive updates or support and should be upgraded.
Offline Installation Overview
LogZilla's offline installation system provides:
- Self-Contained Package: Complete installation bundle with all required Docker images
- Air-Gap Support: No internet connectivity required on target systems
- Automated Installation: Streamlined installation process via kickstart script
- Upgrade Capability: In-place upgrades using offline packages
- Version Verification: Built-in version checking and validation
Prerequisites
System Requirements
- Target System: LogZilla server (air-gapped or offline)
- Download System: Any system with internet access for package download
- Root Access: Administrative privileges on the LogZilla server
- Docker: Docker Engine installed and running on target system
- System Resources: Minimum CPU and RAM requirements as per LogZilla specifications
File Transfer Method
Choose an appropriate method for transferring the offline package:
- SCP/RSYNC: Secure copy over existing network connections
- Network Share: Shared storage accessible to both systems
- Physical Media: USB drives, CD/DVD, or other removable media
Downloading the Offline Package
Web Interface Download (Recommended)
The recommended approach for obtaining the offline package is through the LogZilla license portal:
-
Access Download Portal:
- Navigate to https://license.logzilla.net/download/
- The system automatically provides the latest stable version
- Download begins immediately upon accessing the URL
-
Package Information:
- File Format:
logzilla-v6.x.y.tar.gz
- Package Contents: All required Docker images and installation scripts
- File Size: Typically 2-4 GB depending on version
- Naming Convention: Version number included in filename
- File Format:
-
Verify Download:
- Confirm complete download by checking file size
- Note the exact filename for use in subsequent commands
- Verify file integrity if checksums are provided
Package Transfer
Transfer the downloaded package to the offline LogZilla server using one of these methods:
Network Transfer:
bash# SCP transfer
scp logzilla-v6.x.y.tar.gz user@offline-server:/tmp/
# RSYNC transfer
rsync -avz logzilla-v6.x.y.tar.gz user@offline-server:/tmp/
Physical Media Transfer:
bash# Copy to removable media
cp logzilla-v6.x.y.tar.gz /media/usb-drive/
sync && umount /media/usb-drive
Note: Replace
logzilla-v6.x.y.tar.gz
with the actual filename of the downloaded package throughout this document.
Determining Installation vs Upgrade
Critical Warning: Running a new installation on an existing LogZilla system will destroy all data and configuration. Always verify whether LogZilla is already installed before proceeding.
Check for Existing Installation
Before proceeding with any installation, verify if LogZilla is already installed:
bash# Check if logzilla command exists
which logzilla
# If logzilla exists, check current version
logzilla version 2>/dev/null
# Check for LogZilla Docker containers
docker ps -a | grep lz_
# Check for LogZilla settings directory
ls -la /etc/logzilla/ 2>/dev/null
Decision Matrix:
- If
logzilla version
returns a version number: Use the Upgrade Procedure below - If
logzilla
command does not exist: Use the New Installation Procedure below - If unsure: Contact LogZilla support before proceeding
Upgrade Procedure (Existing Systems)
Important: This section is for systems that already have LogZilla installed. If LogZilla is not currently installed, skip to the New Installation section below.
Pre-Upgrade Preparation
System Verification:
bash# Check current LogZilla version
logzilla version
# Check available disk space for Docker
docker info --format '{{.DockerRootDir}}' | xargs df -h
Backup Recommendations:
- Create system backup before upgrading
- Document current configuration settings
- Note any custom modifications or integrations
Command Line Upgrade Process
-
Extract Upgrade Package:
bash# Navigate to transfer location cd /tmp # Extract the new version package tar xzvf logzilla-v6.x.y.tar.gz
-
Execute Upgrade:
bash# Run upgrade command pointing to extracted directory logzilla upgrade --offline-dir /tmp/logzilla-v6.x.y
-
Upgrade Process: The upgrade command automatically:
- Loads new Docker images from the offline directory
- Stops existing LogZilla containers in proper sequence
- Starts new containers with upgraded images
- Updates system configurations
-
Verify Upgrade:
bash# Check new version logzilla version # Test web interface accessibility curl -X GET http://localhost/api/ping
Upgrade Output Example:
textLoading /tmp/logzilla-v6.x.y/logzilla-runtime:v6.x.y.tar.gz ... Loading /tmp/logzilla-v6.x.y/postgres:15.2-alpine.tar.gz ... Starting LogZilla upgrade to 'v6.x.y' Decommissioning old containers... Starting new containers... LogZilla successfully upgraded to 'v6.x.y'
Post-Upgrade Verification
System Health Check:
bash# Verify version upgrade
logzilla version
# Test log ingestion
logger "Test message after upgrade"
Web Interface Verification:
- Access LogZilla web interface
- Confirm user authentication works
- Verify dashboard functionality
- Test search capabilities
- Check system settings and configurations
New Installation Procedure (Fresh Systems Only)
Critical: This procedure is only for systems that do not have LogZilla installed. Running this on an existing LogZilla system will destroy all data. Use the Upgrade Procedure above for existing installations.
Post-Installation Setup
After completing the offline installation, the first administrator login triggers a mandatory setup sequence:
- Initial Login: Log in with the initial administrator credentials
- EULA Acceptance: Accept the End-User License Agreement
- Instance Registration: Complete the license registration form with:
- User Name
- Company Name
- Email Address
- Phone Number
- License Retrieval: The system automatically obtains a license based on registration information
- Dashboard Access: Access the main LogZilla interface and dashboards
Installation Process
Prerequisites Check:
bash# Verify Docker is installed and running
docker --version
systemctl status docker
# Ensure sufficient system resources
free -h # Check available RAM
nproc # Check CPU cores
# CRITICAL: Verify LogZilla is NOT already installed
logzilla version 2>/dev/null && echo "ERROR: LogZilla already installed! Use upgrade procedure instead."
Installation Steps:
-
Extract Package:
bash# Navigate to transfer location cd /tmp # Extract the offline package tar xzvf logzilla-v6.x.y.tar.gz
This creates a directory named
logzilla-v6.x.y
containing:- Docker image archives (
.tar.gz
files) - Installation script (
kickstart.sh
) - Version information (
version.txt
) - Package manifest
- Docker image archives (
-
Run Installation Script:
bash# Navigate to extracted directory cd logzilla-v6.x.y # Execute installation with root privileges sudo bash kickstart.sh
-
Installation Process: The
kickstart.sh
script automatically:- Verifies system requirements (CPU, RAM, Docker)
- Loads all Docker images from the package
- Executes
logzilla install --version <version> --offline
- Configures initial system settings
-
Post-Installation Setup:
bash# Verify installation logzilla version
Installation Output Example:
textChecking system requirements... ✓ CPU cores: 4 (minimum 2 required) ✓ RAM: 8GB (minimum 4GB required) ✓ Docker: 20.10.x (supported version) Loading Docker images... ✓ logzilla-runtime:v6.x.y ✓ logzilla-front:v6.x.y ✓ postgres:15.2-alpine ✓ redis:6.2.6-alpine Starting LogZilla installation... LogZilla successfully installed!
Complete Upgrade Example
This example demonstrates a complete offline upgrade from version 6.28.0 to 6.31.8 in an air-gapped environment.
Pre-Upgrade Status
Check Current Version:
bashroot@logzilla-server:/tmp$ logzilla version v6.28.0
Verify Air-Gapped Environment:
bashroot@logzilla-server:~$ ping 8.8.8.8 ping: connect: Network is unreachable
Package Extraction
Extract Offline Package:
bashroot@logzilla-server:~$ cd /tmp
root@logzilla-server:/tmp$ tar xzvf logzilla-v6.31.8.tar.gz
logzilla-v6.31.8/
logzilla-v6.31.8/kickstart.sh
logzilla-v6.31.8/library-influxdb:1.8.10-alpine.tar.gz
logzilla-v6.31.8/library-postgres:15.2-alpine.tar.gz
logzilla-v6.31.8/library-redis:6.2.6-alpine.tar.gz
logzilla-v6.31.8/library-telegraf:1.20.4-alpine.tar.gz
logzilla-v6.31.8/logzilla-etcd:v3.5.7.tar.gz
logzilla-v6.31.8/logzilla-front:v6.31.8.tar.gz
logzilla-v6.31.8/logzilla-mailer:v6.31.8.tar.gz
logzilla-v6.31.8/logzilla-runtime:v6.31.8.tar.gz
logzilla-v6.31.8/logzilla-sec:v6.31.8.tar.gz
logzilla-v6.31.8/logzilla-syslogng:v6.31.8.tar.gz
Upgrade Execution
Run Upgrade Command:
bashroot@logzilla-server:/tmp$ logzilla upgrade --offline-dir /tmp/logzilla-v6.31.8
Upgrade Process Output:
textlz.manager INFO Loading /tmp/logzilla-v6.31.8/library-influxdb:1.8.10-alpine.tar.gz ... lz.manager INFO Loading /tmp/logzilla-v6.31.8/library-postgres:15.2-alpine.tar.gz ... lz.manager INFO Loading /tmp/logzilla-v6.31.8/library-redis:6.2.6-alpine.tar.gz ... lz.manager INFO Loading /tmp/logzilla-v6.31.8/library-telegraf:1.20.4-alpine.tar.gz ... lz.manager INFO Loading /tmp/logzilla-v6.31.8/logzilla-etcd:v3.5.7.tar.gz ... lz.manager INFO Loading /tmp/logzilla-v6.31.8/logzilla-front:v6.31.8.tar.gz ... lz.manager INFO Loading /tmp/logzilla-v6.31.8/logzilla-mailer:v6.31.8.tar.gz ... lz.manager INFO Loading /tmp/logzilla-v6.31.8/logzilla-runtime:v6.31.8.tar.gz ... lz.manager INFO Assuming version v6.31.8 lz.manager INFO Loading /tmp/logzilla-v6.31.8/logzilla-sec:v6.31.8.tar.gz ... lz.manager INFO Loading /tmp/logzilla-v6.31.8/logzilla-syslogng:v6.31.8.tar.gz ... Starting LogZilla upgrade to 'v6.31.8' lz.setup INFO Setup init lz.docker INFO Decommission: queryupdatemodule, front lz.docker INFO Decommission: httpreceiver, celerybeat, queryeventsmodule-1 lz.docker INFO Decommission: triggersactionmodule, gunicorn, aggregatesmodule-1 lz.docker INFO Decommission: storagemodule-1 lz.docker INFO Decommission: logcollector, telegraf, tornado, mailer lz.docker INFO Decommission: syslog lz.docker INFO Decommission: postgres lz.docker INFO Decommission: redis, influxdb lz.docker INFO Decommission: etcd lz.docker INFO Start: etcd lz.docker INFO Start: influxdb, redis lz.docker INFO Start: postgres lz.containers.postgres INFO Running postgres v15 migration ... lz.containers.postgres INFO Postgres v15 migration finished successfully Operations to perform: Apply all migrations: admin, api, auth, contenttypes, django_celery_beat, sessions Running migrations: No migrations to apply. lz.setup INFO Update group permissions lz.setup INFO Update internal triggers lz.docker INFO Start: syslog lz.docker INFO Start: logcollector, tornado, telegraf, mailer lz.docker INFO Start: storagemodule-1 lz.docker INFO Start: triggersactionmodule, celeryworker, dictionarymodule lz.docker INFO Start: celerybeat, httpreceiver, queryeventsmodule-1 lz.docker INFO Start: queryupdatemodule, front lz.docker INFO Start: watcher LogZilla successfully upgraded to 'v6.31.8'
Post-Upgrade
Verify New Version:
bashroot@logzilla-server:/tmp$ logzilla version v6.31.8
Test Log Ingestion:
bashroot@logzilla-server:/tmp$ logger "Test message after upgrade"
Then log into the LogZilla web interface and search for Test message after upgrade
to verify log ingestion is working correctly.
Troubleshooting
Common Issues
Package Extraction Fails:
bash# Check file integrity
ls -la logzilla-v6.x.y.tar.gz
# Verify sufficient disk space
df -h /tmp
# Re-extract with verbose output
tar -xzvf logzilla-v6.x.y.tar.gz
Docker Image Loading Issues:
bash# Check Docker service status
systemctl status docker
# Verify Docker disk space
docker system df
Upgrade Command Fails:
bash# Verify offline directory path
ls -la /tmp/logzilla-v6.x.y/
# Check system resources
free -h && df -h
Post-Upgrade Issues:
bash# Check service logs
logzilla logs --tail 50
# Restart services if needed
logzilla restart