VIFIB DESCENTRALIZED CLOUD COMPUTING

SlapOS is a decentralized Cloud Computing technology that can automate the deployment and configuration of applications in a heterogeneous environment.

Debug SlapOS Node

This document is a collection of common issues encountered and ways to analyse and fix certain problems that might occur when working with SlapOS. Make sure you have read the SlapOS architecture design document to get a basic understanding of how SlapOS is built and what the different components are doing.

It is expected you have command line access to the node or server you want to debug. The SlapOS core command line documentation (partially outdated) may also prove helpful.

Table of Content

  • General Debugging
  • Service: Apache Frontend

General Debugging

SlapOS Debugging - General Tips

This chapter contains information on log location and basic commands to run when analysing a SlapOS node.

Installation Issues

SlapOS Debugging - Installation Issues

It is not a given that all installation processes finish correctly. Should you run into problems during installation and the error is not evident from the output you receive, create a log while logged in as root user:

sudo su
tar czf slapos-log.tar.gz /opt/slapos/log/slapos-node-*

to create an installation log. Log out of root and your server and from your terminal, call:

scp debian@xx.xx.xx.xxx:/home/debian/slapos-log.tar.gz ./

The log will contain more information on what may have caused errors. If you cannot resolve the issue, get in touch on the Vifib Forum and ask for help.

Where are Logs?

SlapOS Debugging - Log Location

There are different logs which you can find in the log directory.

debian@svenslapostest2:~$ sudo su
root@svenslapostest2:/home/debian# ls /opt/slapos/log/
slapos-node-collect.log   slapos-node-software.log   slapos-node-report.log   slapos-node-instance.log
slapos-node-format.log

with the slapos-node-instance.log being the most important and giving information all partitions and processes being run on an instance, while the slapos-node-software.log containes info on the status of the software(s) being compiled and running on the instance.

To see what is written into all of the logs you can check:

cat /etc/cron.d/slapos-node

To see the log itself

sudo su
tail opt/slapos/log/slapos-node-software.log

SlapOS Node Status

SlapOS Node Debugging - Status

To see the status of running processes call slapos node status (full list of commands).

root@svenslapostest2:/home/debian# slapos node 
slappart8:bootstrap-monitor                EXITED    Mar 20 02:28 PM
slappart8:certificate_authority-on-watch   RUNNING   pid 12137, uptime 0:33:54
slappart8:crond-on-watch                   RUNNING   pid 12125, uptime 0:33:54
slappart8:frontend-apache-safe-graceful    EXITED    Mar 20 02:28 PM
slappart8:frontend-nginx-safe-graceful     EXITED    Mar 20 02:28 PM
slappart8:frontend_apache-on-watch         EXITED    Mar 20 02:28 PM
slappart8:frontend_nginx-on-watch          RUNNING   pid 12136, uptime 0:33:54
slappart8:monitor-httpd-graceful           EXITED    Mar 20 02:28 PM
slappart8:monitor-httpd-on-watch           RUNNING   pid 12128, uptime 0:33:54
slappart8:trafficserver-on-watch           RUNNING   pid 12134, uptime 0:33:54
slappart8:trafficserver-reload             EXITED    Mar 20 02:28 PM
slappart9:bootstrap-monitor                EXITED    Mar 20 02:29 PM
slappart9:certificate_authority-on-watch   RUNNING   pid 11866, uptime 0:36:16
slappart9:crond                            RUNNING   pid 11867, uptime 0:36:16
slappart9:monitor-httpd-graceful           EXITED    Mar 20 02:29 PM
slappart9:monitor-httpd-on-watch           RUNNING   pid 11865, uptime 0:36:16
watchdog                                   RUNNING   pid 24426, uptime 7 days, 21:46:29

In the above example you can see the frontend_apache-on-watch process exited. on-watch processes are the running processes while safe-graceful are only triggered when updating the configuration of a service (for example via the XML parameter form of the service in the SlapOS Dashboard). This process is used to minimize downtime of the actual service.

To investigate the status of this or any other process on the list, you can use root@svenslapostest2:/home/debian# slapos node tail slappart8:frontend_apache-on-watch.

To restart a service you can use slapos node restart slappart8:frontend_apache-on-watch.

To grep processes you can use

root@svenslapostest2:/home/debian# slapos node | grep apache
slappart8:frontend-apache-safe-graceful    EXITED    Mar 20 02:38 PM
slappart8:frontend_apache-on-watch         RUNNING   pid 19230, uptime 0:07:10

Service: Apache Frontend

Debugging Apache Frontend

When working with a Apache Frontend instance, any of the following are good points to start debugging:

  • Is the DNS uptodate? See for example pingdom for status info.
  • Has the SSL certificate been correctly created? See ssl-checker.

Thank You

Image Nexedi Office
  • Nexedi GmbH
  • 147 Rue du Ballon
  • 59110 La Madeleine
  • France