Skip to content

System Administration🔗

With Modelon Impact installed, it will start automatically on each reboot. The admin script is used to manually stop and start the service.

Stopping and Starting Modelon Impact🔗

Run the following command to stop Modelon Impact:

$ /var/impact/modelonimpact.sh stop

Similarily, to start Modelon Impact again:

$ /var/impact/modelonimpact.sh start

Update the Modelon Impact License🔗

To renew the license, copy the the new license.yaml file into /etc/impact/licenses, then run the following command:

$ /var/impact/modelonimpact.sh license

This will result in a few minutes of service interruption; you may want to plan the operation in advance.

If there is a new license in /etc/impact/licenses, you will be asked if you really want to replace the license. Answer “YES” to this question, and the update will be performed:

$ /var/impact/modelonimpact.sh license
 __  __           _      _               ___                            _   
|  \/  | ___   __| | ___| | ___  _ __   |_ _|_ __ ___  _ __   __ _  ___| |_ 
| |\/| |/ _ \ / _` |/ _ \ |/ _ \| '_ \   | || '_ ` _ \| '_ \ / _` |/ __| __|
| |  | | (_) | (_| |  __/ | (_) | | | |  | || | | | | | |_) | (_| | (__| |_ 
|_|  |_|\___/ \__,_|\___|_|\___/|_| |_| |___|_| |_| |_| .__/ \__,_|\___|\__|
                                                      |_|
               Accurate Simulations. Better Decisions.

Please enter the password for "user" to run with elevated access rights, if asked for it.
[sudo] password for user:

Ubuntu Release: 22.04           RAM Tot / Avail: 15.58 GB / 11.93 GB
Disk size /var: 97G             Load Average: 0.78 0.80 0.82
Avail. space on /var: 54G   K3s cert expiration: 2023-11-29

Modelon Impact is running on: https://modelon-impact.mycompany.com
Keycloak IAM is running on:   https://modelon-impact.mycompany.com/iam/auth/admin

Update Modelon Impact license:

The license is ready to be installed.
NOTE: Modelon Impact will restart and be unavailable for approximately one minute.

Write YES to update the license, or press ENTER to exit: YES
secret "impact-users-license" deleted
secret/impact-users-license created
Stopping Modelon Impact:
[+] Running 2/1
  Container impact-k3s-1  Removed                                                                                                                                                                                                                                                                                      1.4s
 ! Network impact_default  Removed
0.0s
Starting Modelon Impact:
[+] Running 1/1
  Container impact-k3s-1  Started

Renew the TLS Certificate🔗

To renew the certificate, copy the new certificate files, tls.crt and tls.key, into /etc/impact/certs, then run the following command:

$ /var/impact/modelonimpact.sh tls

This will result in a few minutes of service interruption; you may want to plan the operation in advance.

If there is a new valid certificate in /etc/impact/certs, you will be asked if you really want to replace the certificate. Answer “YES” to this question, and the update will be performed:

$ /var/impact/modelonimpact.sh tls
 __  __           _      _               ___                            _   
|  \/  | ___   __| | ___| | ___  _ __   |_ _|_ __ ___  _ __   __ _  ___| |_ 
| |\/| |/ _ \ / _` |/ _ \ |/ _ \| '_ \   | || '_ ` _ \| '_ \ / _` |/ __| __|
| |  | | (_) | (_| |  __/ | (_) | | | |  | || | | | | | |_) | (_| | (__| |_ 
|_|  |_|\___/ \__,_|\___|_|\___/|_| |_| |___|_| |_| |_| .__/ \__,_|\___|\__|
                                                      |_|
               Accurate Simulations. Better Decisions.

Ubuntu Release: 22.04           RAM Tot / Avail: 15.58 GB / 13.26 GB
Disk size /var: 97G             Load Average: 0.47 0.60 0.76
Avail. space on /var: 56G   K3s cert expiration: 2023-11-29

Modelon Impact is running on: https://modelon-impact.mycompany.com
Keycloak IAM is running on:   https://modelon-impact.mycompany.com/iam/auth/admin

Install TLS certificate:
Validating the certificate and key in /etc/impact/certs: OK!

TLS Certificate validity period:
notBefore=Mar 15 00:00:00 2023 GMT
notAfter=Mar 14 23:59:59 2024 GMT

Certificate is ready to be installed.
Write YES to update the certificate, or press ENTER to exit: YES
secret "impact-ssl-certificate" deleted
secret/impact-ssl-certificate created

Renew the K3s Certificate🔗

K3s, that Modelon Impact runs on, creates it own internal certificate which is needed for communicating with the cluster. The certificate is valid for twelve months. If the expiration date is less than ninety days away, a new certificate will be created when you restart Modelon Impact.

The script /var/impact/modelonimpact.sh will show you the expiration date of the certificate, and will give you a reminder to restart Modelon Impact if it expires in less than ninety days.

$ /var/impact/modelonimpact.sh
 __  __           _      _               ___                            _
|  \/  | ___   __| | ___| | ___  _ __   |_ _|_ __ ___  _ __   __ _  ___| |_
| |\/| |/ _ \ / _` |/ _ \ |/ _ \| '_ \   | || '_ ` _ \| '_ \ / _` |/ __| __|
| |  | | (_) | (_| |  __/ | (_) | | | |  | || | | | | | |_) | (_| | (__| |_
|_|  |_|\___/ \__,_|\___|_|\___/|_| |_| |___|_| |_| |_| .__/ \__,_|\___|\__|
                                                      |_|
               Accurate Simulations. Better Decisions.

The K3s certificate expires in less than 90 days. Please restart Modelon Impact to generate a new certificate.

Ubuntu Release: 22.04           RAM Tot / Avail: 15.58 GB / 13.31 GB
Disk size /var: 97G             Load Average: 0.08 0.14 0.11
Avail. space on /var: 62G       K3s cert expiration: 2023-11-29

To restart Modelon Impact, run the commands /var/impact/modelonimpact.sh stop and /var/impact/modelonimpact.sh start. The certificate will then be automatically regenerated.

Note that Modelon Impact will be unavailable for a few minutes, you may want to plan this operation in advance.

Backup Modelon Impact🔗

The backup routine creates a snapshot of the entire Modelon Impact service.

The backup will temporarily pause the Modelon Impact service until the backup is done. You may want to schedule your backup to a period with less activity. You may want to add the backup as a cron-job on your server.

The backup will be written to the folder of your choice, this is configured in /etc/impact/config. The default is /var/impactbackups.

To create a backup, run the following command:

$ /var/impact/modelonimpact.sh backup

Note

Note that the files in /var/impact and /etc/impact are not backed up by this routine. We recommend that you do a normal backup of the Linux OS in addition to the Modelon Impact service. You should backup /var/impact, /etc/impact and /var/impactbackups as a bare minimum.

Restore a Backup🔗

When restoring your system, you will be brought back to that particular point in time. This includes the Modelon Impact version, user database, user data, the license, and the TLS certificate.

Users that have changed their passwords will have the change reverted, this includes the Keycloak administrator user.

To restore a backup, run this command:

$ /var/impact/modelonimpact.sh restore

This will present a list of available backups, sorted by date and time of day. Choose the appropriate backup and follow the instructions to complete the restore. Note that after the restore has completed, your server will need several minutes to restart all components.

If you have new license and certificate files in /etc/impact, run the following commands to update them:

$ /var/impact/modelonimpact.sh license
$ /var/impact/modelonimpact.sh tls

Managing Individual User Disks🔗

While users can save their Modelon Impact workspaces on a code version server, taking an OS backup of the entire server is strongly recommended. As this will safeguard your Modelon Impact backups in another location.

Note also that running /var/impact/modelonimpact.sh backup will not backup the folders /var/impact/ and /etc/impact. An OS backup is required to protect these directories.

All user data can be backed up and restored using the previously described features of modelonimpact.sh. However, using modelonimpact.sh works on the entire Modelon Impact installation, backing up and restoring data for all users in one operation.

There is an alternative procedure to manipulate data for individual users.

To find out the location of your user disk, use the command /var/impact/tools/ls-user-disk.sh <USERNAME>. Inside of the folder output by the command, you will find all your files, including the impact folder that contains all your Modelon Impact related files.

As an example, this shows how to find the impact folder for the user example.user.

$ /var/impact/tools/ls-user-disk.sh example.user
/var/lib/docker/volumes/conf_k3s-data/_data/storage/pvc-57fda079-bd17-4e2c-b11c-e4f4986b25d9_impact_claim-example-2euser

$ sudo ls /var/lib/docker/volumes/conf_k3s-data/_data/storage/pvc-57fda079-bd17-4e2c-b11c-e4f4986b25d9_impact_claim-example-2euser/impact
binary_blobs    custom_functions     default_customizations  ignore.impact  local_projects  released_projects
customizations  generated_resources  libraries               logs           workspaces

The backup archive produced by modelonimpact.sh backup contains, among other data, all user disks. It's possible to unpack the backup file in a temporary location, and copy files from there to your user disk.

Fixing a Corrupt Installation of Modelon Impact🔗

The installation can become corrupt in certain cases. This could happen if the server is not cleanly rebooted, or if there are errors in the configuration file.

In most cases, you can repair a corrupt instance by running the installer again.

If you’d like to recreate the configuration file, run the config command which will let you change the options that are incorrect:

$ /var/impact/modelonimpact.sh config

For the rebuild of your installation, the existing /etc/impact/config will be used. You will be guided through the setup if the config file is missing.

$ /var/impact/modelonimpact.sh install

The installer will detect that you have a running system and ask you to verify that you want to rebuild your instance of Modelon Impact.

Your user data and service configuration will be preserved. You are still advised to have a backup at hand in case you need to do a full disaster recovery.

You already have a running instance of Modelon Impact.
Running the installer will rebuild your instance of Modelon Impact using the options in /etc/impact/config.

Please note that the Modelon Impact service will be unavailable for a few minutes while reconfiguring.
Write YES to run the installer again, or press ENTER to exit: YES

Write “YES” to continue.

Rebuilding the Modelon Impact server will typically take less than five minutes.

The installer ends with this summary:

impact-provisioning-1  | NOTES:
impact-provisioning-1  | =================================
impact-provisioning-1  |  |_ _|  \/  | _ \/_\ / __|_   _|
impact-provisioning-1  |   | || |\/| |  _/ _ \ (__  | |
impact-provisioning-1  |  |___|_|  |_|_|/_/ \_\___| |_|
impact-provisioning-1  |
impact-provisioning-1  | Author: Modelon AB
impact-provisioning-1  | License: Proprietary
impact-provisioning-1  | URL: https://my.server.com
impact-provisioning-1  | =================================
impact-provisioning-1  | Evaluating running pods...
impact-provisioning-1  | Waiting for 1 pods
impact-provisioning-1  | Waiting for 1 pods
impact-provisioning-1  | Waiting for 1 pods
impact-provisioning-1  | Waiting for 1 pods
impact-provisioning-1 exited with code 0

The rebuild was successful if the last line reads “exited with code 0”

It’s possible that a failure is caused by unresponsive docker containers, this is usually solved by running the installer once more.

If it keeps failing, please follow the Disaster Recovery instructions using a backup dating from before the problems started.

Disaster Recovery🔗

If your server is rendered totally unusable, you can use a known good backup for disaster recovery.

You can either:

  • Install Modelon Impact on a different server, or

  • Uninstall Modelon Impact and do a fresh installation on the current server, then

  • Restore a known good backup.

To install Modelon Impact on a different server, just follow the installation instructions in this manual, then restore your system from the backup.

In this case, unless you have the original /etc/modelon/config file at hand, it will be recreated during the installation process.

To uninstall Modelon Impact, run the following command:

$ /var/impact/modelonimpact.sh uninstall

Warning

This will remove your entire Modelon Impact instance. User data and all services. You will need a known good backup in order to get your data back.

Uninstalling Modelon Impact will not remove the files in /etc/impact/. Nor will it remove backups which reside in the backup folder set in the config file.

You can now install Modelon Impact again and restore your backup to get the service up and running, with all configuration settings and user data intact.

Upgrade Modelon Impact🔗

It's possible to upgrade Modelon Impact in-place without losing any information in the system. Assuming you have installed Modelon Impact in the default location, /var/impact, the procedure is as follows.

Note that Modelon Impact will restart during step 6 so assure no users are working in the system. It's also considered best practice to perform a backup of Modelon Impact and the server itself before upgrading Modelon Impact. Customer Managed Modelon Impact releases can be found on our Github page.

1. Backup Modelon Impact
    /var/impact/modelonimpact.sh backup 

2. Download the new release to the Modelon Impact server 

3. Rename the current directory to a new name for safe-keeping
     sudo mv /var/impact /var/impact.pre-2024-07-20

4. create the /var/impact directory again 
     sudo mkdir /var/impact 

5. unpack the new release 
     sudo tar zxfv ./customer-hosted-modelon-impact-v1.15.5.tar.gz -C /var/impact

6. execute the install command, to update your Modelon Impact installation
     /var/impact/modelonimpact.sh install

Tip

In step 6, should you need a reminder of the configuration options you used earlier, then look them up in /etc/impact/config

Log Management and Troubleshooting🔗

To collect logs and statistics for troubleshooting, please run the command:

$ /var/impact/modelonimpact.sh analyze

This will collect all necessary information about your Modelon Impact instance, which can be used to assist in solving any issues.

The analysis results can be found in a tar archve /tmp/impact-systemdump-NNNNNNNNN.tar.gz.

Accessing the Modelon Impact Kubernetes Shell🔗

You can access the underlying Kubernetes cluster by running this command:

$ /var/impact/modelonimpact.sh shell

Note that this is usually not required unless you are asked to run certain commands by the Modelon support engineers.

Show Running Docker Pods🔗

The status command to modelonimpact.sh outputs information about the running docker container and all the pods inside of that container. This can be useful for troubleshooting purposes.

$ /var/impact/modelonimpact.sh status
 __  __           _      _               ___                            _
|  \/  | ___   __| | ___| | ___  _ __   |_ _|_ __ ___  _ __   __ _  ___| |_
| |\/| |/ _ \ / _` |/ _ \ |/ _ \| '_ \   | || '_ ` _ \| '_ \ / _` |/ __| __|
| |  | | (_) | (_| |  __/ | (_) | | | |  | || | | | | | |_) | (_| | (__| |_
|_|  |_|\___/ \__,_|\___|_|\___/|_| |_| |___|_| |_| |_| .__/ \__,_|\___|\__|
                                                      |_|
               Accurate Simulations. Better Decisions.

Please enter the password for "impactuser" to run with elevated access rights, if asked for it.

Ubuntu Release: 22.04           RAM Tot / Avail: 15.56 GB / 12.28 GB
Disk size /var: 29G             Load Average: 0.57 0.48 0.41
Avail. space on /var: 26G   K3s cert expiration: 2023-11-29

Modelon Impact is running on: https://modelon-impact.mycompany.com
Keycloak IAM is running on:   https://modelon-impact.mycompany.com/iam/auth/admin

CONTAINER ID   IMAGE                       COMMAND                  CREATED       STATUS       PORTS
                    NAMES
a9676306cbf5   rancher/k3s:v1.24.10-k3s1   "sh -c '/bin/k3s ser…"   2 hours ago   Up 2 hours   0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp, 0.0.0.0:6443->6443/tcp, :::6443->6443/tcp   conf-k3s-1

NAMESPACE     NAME                                                   READY   STATUS      RESTARTS   AGE
default       db-postgresql-0                                        1/1     Running     0          5d21h
impact        job-controller-b44488c6c-6bjq8                         1/1     Running     0          5d20h
impact        proxy-844499b5d8-rl2ww                                 1/1     Running     0          5d20h
impact        job-controller-db-migration-p2as4-gnnw6                0/1     Completed   0          5d20h
impact        iam-6b47c56c9d-v695b                                   1/1     Running     0          5d20h
impact        user-scheduler-5c6666999b-k8x5b                        1/1     Running     0          5d20h
impact        impact-iam-provisioning-4f5nc-6bkhr                    0/1     Completed   0          5d20h
impact        user-scheduler-5c6666999b-dm7sn                        1/1     Running     0          5d20h
impact        user-68d69657fb-8t5gk                                  1/1     Running     0          5d20h
impact        continuous-image-puller-8dlmn                          1/1     Running     0          5d20h
impact        license-5458f86448-p89hb                               1/1     Running     0          5d20h
impact        excel-addin-6b6d777f8f-hllks                           1/1     Running     0          5d20h
impact        impact-db-migration-dbgge-kj5lx                        0/1     Completed   0          5d20h
impact        impact-ingress-nginx-controller-5466875fc9-csq9t       1/1     Running     0          5d20h
impact        hub-bcc55cdc7-gwf5v                                    1/1     Running     0          5d20h
kube-system   metrics-server-667586758d-9szxr                        1/1     Running     0          5d21h
kube-system   coredns-7b5bbc6644-2kl7k                               1/1     Running     0          5d21h
kube-system   svclb-impact-ingress-nginx-controller-5bdbaa71-vzxnq   2/2     Running     0          5d20h
kube-system   local-path-provisioner-687d6d7765-8k8kd                1/1     Running     0          5d21h

Uninstall Modelon Impact🔗

Should you need to uninstall Modelon Impact, you can use these commands:

$ /var/impact/modelonimpact.sh uninstall

NOTE: This will also remove all user data stored inside of Modelon Impact. Backup data taken using the modelonimpact.sh script is left untouched. Should you want to remove backups as well, do so using:

$ sudo rm -r /var/impactbackups

This is assuming that you are using the default folder for backups.