Description

Users may suddenly be unable to access the Juniper Security Director (JSD) GUI, and services may appear unavailable. 

Symptoms

  • JSD GUI is inaccessible.
  • When running the "show health apps" command, all services/apps may display as "Initializing".

Solution

Before proceeding, verify that your Juniper Security Director deployment meets the minimum hardware and software requirements for your platform:

Juniper Security Director System Requirements for ESXi Server

Juniper Security Director System Requirements for KVM

Juniper Security Director System Requirements for Microsoft Azure

 

Troubleshooting checklist:

 

1.Verify the Health Status of the System.

Log in to the Juniper Security Director CLI with the "cliadmin" user account and verify that all services and apps are running and healthy. Run the following commands:

$ show health status

Expected output:
2026-09-03 23:00:27 UTC
Status: Running
Faults:
  status: No faults detected
Apps:
  status: 43/43 services are healthy.
Bootservice:
  status: Service has completed successfully.
Cluster-Manager:
  status: Service is active.
Clusterdb:
  status: Service is active.
Health-Monitor:
  status: Service is active.
Infra:
  status: 10/10 services are healthy.
Kubernetes:
  status: Service is active.
Repository-Service:
  status: Service is active.
Resources:
  CPU Utilization: 5.52%
  Disk Usage on /: 34.7%
  Disk Usage on /apps: 5.7%
  Disk Usage on /config_kafka: 0.1%
  Disk Usage on /logs_analytics: 0.0%
  Disk Usage on /postgres: 0.6%
  Memory Utilization: 34.59%
System:
  address: 
  hostname: 
  uptime: 0 Days, 4 Hours, 25 Minutes, 42 Seconds

You can also verify the application status separately:

$ show health apps

Expected output:
2026-09-03 23:01:33 UTC
Status: Running
Faults:
  status: No faults detected
Apps:
  status: 43/43 services are healthy.
Bootservice:
  status: Service has completed successfully.
Kubernetes:
  status: Service is active.
System:
  address: 
  hostname: 
  uptime: 0 Days, 4 Hours, 26 Minutes, 47 Seconds
$

 

$ show pods list

Expected output:
2026-09-03 23:03:26 UTC
NAMESPACE             NAME                                                    READY   STATUS      RESTARTS         A
GE
atom-api-gateway      ambassador-6f6dd4df76-crrgd                             1/1     Running     4 (4h28m ago)    3
2d
atom-cache            redis-master-0                                          2/2     Running     6 (4h28m ago)    3
2d
atom-generic-db       patroni-0                                               1/1     Running     3 (4h28m ago)    3
2d
atom-iam              iam-c4bcc9789-mdg5x                                     1/1     Running     0                4
h27m
atom-la-message-bus   kafka-la-controller-0                                   1/1     Running     3 (4h28m ago)    3
2d
atom-message-bus      kafka-controller-0                                      1/1     Running     3 (4h28m ago)    3
2d

.....

 

Ensure that all services report a healthy status and that no faults are detected.

 

 2. Start JSD services manually.

If any services or application are not running, attempt to start them manually using the following command:

 

$ service application start

 

If the issue persists after manually starting the services, reboot the JSD system to force all services and applications to restart. 

 

3. Check available storage space.

Run the following command to verify storage utilization:

$ show storage space


2026-09-03 23:09:35 UTC
Filesystem           Size  Used Avail Use% Mounted on
/dev/sda2            196G   65G  122G  35% /
tmpfs                 40G   20K   40G   1% /dev/shm
/dev/mapper/vg1-lv3  121G  6.5G  108G   6% /apps
/dev/mapper/vg1-lv2   74G   43M   70G   1% /config_kafka
/dev/mapper/vg1-lv1  196G  1.2G  185G   1% /postgres
/dev/mapper/vg2-lv4  1.5T   46M  1.4T   1% /logs_analytics

$ show storage diskusage


2026-09-03 23:07:56 UTC
65G     /
51G     /var
4.5G    /usr
1.1G    /opt
375M    /boot
96M     /root
8.3M    /etc
692K    /home
348K    /tmp
28K     /snap
16K     /lost+found
8.0K    /media
8.0K    /data
4.0K    /srv
4.0K    /service-volumes
4.0K    /mnt
4.0K    /cdrom

Verify that adequate free disk space is available on all mounted filesystems.

 

4. Verify the Software Bundle installation status.

Confirm that the software bundle package installation completed successfully.

$ show bundle install status
2026-09-03 23:11:11 UTC
Node upgrade completed successfully

 

5. Check for Software package dependency issues.

Expected output:

$ show software package check
2026-09-03 23:13:30 UTC
Reading package lists...
Building dependency tree...
Reading state information...
$

The command should complete without reporting dependency-related errors.

 

6. Collect and Export Diagnostic logs.

If all services are healthy, storage utilization is within acceptable limits, the software bundle installation is successful, and no package dependency issues are detected, but the issue persists, open a JTAC case and provide the exported diagnostic logs file for further investigation.

 

Steps to export System/Diagnosis logs:

 

a. You can generate the System/Diagnostic logs file by running the following command from the Juniper Security Director CLI. 

 

$ systemlogs export-log

 

To generate log packages from feature groups or relevant microservices for a specific duration, select the feature or service groups to be included in the log package. 

 

$ systemlogs export-log
  feature-group  Select the feature groups to be included in the log package
  service-group  Select the service groups to be included in the log package
  timespan       Limit logs for the days specified
  <cr>

Example:

$ systemlogs export-log feature-group timespan 1

 

b. The generated file will be stored in the /home/cliadmin directory.


{"level":"info","msg":"process export: archive path for collection is /home/cliadmin/node-local.tgz ","time":"2026-09-03T23:27:47Z","traceid":"NO-REQUESTID","type":"APPLOG"}

 

$ list /home/cliadmin/
2026-09-03 23:28:32 UTC
total 2.5M
-rw-r--r-- 1 root root 2.4M Sep  3 23:27 node-local.tgz
-rw-r--r-- 1 root root   64 Aug  2 00:40 confidb_table_stats-collector_appversion.txt
-rw-r--r-- 1 root root    0 Aug  2 00:38 confidb_table_appversion_appversion.txt
-rw-r--r-- 1 root root 108K Aug  2 00:34 confidb_diag.txt
$

 

c. Copy the generated file to a remote system. 

Use the remotecopy command to transfer the generated file to a remote server and upload it to the JTAC case for analysis.

 

$ remotecopy /home/cliadmin/<generated-system-log-file> username@remote_server_IP:directory

Modification History

2026-04-14 : Article Created