Jump to contentJump to page navigation: previous page [access key p]/next page [access key n]

Getting started with Trento

SUSE® Linux Enterprise Server for SAP Applications

Trento is a an open cloud-native web console that aims to help SAP administrators to improve monitoring and checking of SAP Applications.

Publication Date: 01/14/2022

Copyright © 2010–2022 SUSE LLC and contributors. All rights reserved.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or (at your option) version 1.3; with the Invariant Section being this copyright notice and license. A copy of the license version 1.2 is included in the section entitled GNU Free Documentation License.

For SUSE trademarks, see http://www.suse.com/company/legal/. All third-party trademarks are the property of their respective owners. Trademark symbols (®, ™ etc.) denote trademarks of SUSE and its affiliates. Asterisks (*) denote third-party trademarks.

All information found in this book has been compiled with utmost attention to detail. However, this does not guarantee complete accuracy. Neither SUSE LLC, its affiliates, the authors nor the translators shall be held liable for possible errors or the consequences thereof.

Important
Important: Trento is an evolving product

The product is under active development, and it currently supports only selected customers with the purpose of collecting their feedback. If you'd like to join the program, contact us at <>.

1 What is Trento?

Trento is a comprehensive monitoring solution consisting of two main components, the Trento Server and the Trento Agent. Trento provides the following features:

  • A simplified web UI targeting SAP admins.

  • Automated discovery of SAP Systems, SAP Instances, and SAP HANA clusters.

  • Configuration validation for SAP HANA Scale-Up Performance-Optimized scenarios deployed on MS Azure cloud.

The Trento Server is an independent, cloud-native, distributed system and designed to run on dedicated infrastructure resources. It provides a web front end.

The Trento Agent is a single background process (trento agent) running on each host of the target infrastructure monitored by the user. Except for third-party modules, all the components are included in a single Trento binary.

For Trento, SUSE collects telemetry data relevant for further product development.

See Figure 1, “Architectural overview” for additional details.

Architectural overview
Figure 1: Architectural overview

2 Product lifecycle and update strategy

The main components have different product lifecycles:

Trento Agent

Delivery mechanism: RPM package for SUSE Linux Enterprise Server for SAP Applications 15 SP1 and newer.

Supported runtime:  Supports SUSE Linux Enterprise Server for SAP Applications 15 SP1 and newer.

Trento Server

Delivery mechanism:  A set of container images from the SUSE registry together with a Helm chart for easy installation.

Kubernetes:  The Trento Server runs on any current Cloud Native Computing Foundation (CNCF) certified Kubernetes distributions. Depending on your background and needs, SUSE support several usage scenarios:

  • If you already use a CNCF certified Kubernetes, you can run the Trento Server in it.

  • If you have no Kubernetes and want enterprise support, SUSE recommends SUSE Rancher with Rancher Kubernetes Engine (RKE) either version 1 or 2.

  • If you do not have Kubernetes and you do not need professional support, SUSE recommends using K3s which can be installed on a single host.

3 Requirements

This section describes requirements for the Trento Server and its Trento Agents.

3.1 Trento Server requirements

Running all the Trento Server components requires 2GB of RAM and two CPU cores.

While the Trento Server supports various usage scenarios, depending on the existing infrastructure, it's designed to be cloud-native and OS agnostic. As such, the default installation method provisions a minimal, single node, K3S Kubernetes cluster for running its components in Linux containers. The Trento Server can be installed on the following services:

  • RKE1 (Rancher Kubernetes Engine version 1)

  • RKE2

  • any other CNCF certified Kubernetes

3.2 Trento Agent requirements

The resource footprint of the Trento Agent is designed to not impact the performance of the host it runs on.

The Trento Agent component needs to interact with several low-level system components that are part of the SUSE Linux Enterprise Server for SAP Applications distribution.

3.3 Network requirements

  • Ensure that the Trento component running Kubernetes has a network access to the SAP landscape.

  • The Trento Server needs to reach its Trento Agents hosts via SSH (port TCP/22).

  • The Trento Server must be reachable from the SAP admin's LAN via HTTP (port TCP/80).

3.4 Installation pre-requisites

  • Trento Server. Access to GitHub for the installation script.

  • Trento Agents. A registered SUSE Linux Enterprise Server for SAP Applications distribution.

  • A Trento admin user.  With administration privileges in the Trento Server host and the Trento Agent hosts. In this example, we will refer to it as trentoadmin. You can use any desired user name, but make sure you use it consistently accross the landscape.

4 Installing Trento Server

Important
Important: Expect changes in the installation procedure

The product is under active development. Expect changes in the described installation procedure. RPM packages for Trento are in the works.

The procedure uses the following placeholders:

  • TRENTO_SERVER_HOSTNAME: the host name of the Trento Server host.

To install Trento Server on your Trento Server host proceed as follows:

  1. Log on the Trento Server host as user trentoadmin.

  2. On the Trento Server host, create an SSH key for user trentoadmin with no passphrase:

    trentoadmin@TRENTO_SERVER_HOSTNAME:~> ssh-keygen -f ~/.ssh/id_rsa -t rsa -b 4096 -N ''
  3. Launch the installer script:

    trentoadmin@TRENTO_SERVER_HOSTNAME:~> curl -sfL https://raw.githubusercontent.com/trento-project/trento/main/install-server.sh | bash
  4. Enter the absolute path to the private SSH key from Step 2 (normally /home/trentoadmin/.ssh/id_rsa):

    Please provide the path of the runner private key: /home/trentoadmin/.ssh/id_rsa

    The runner service uses the private key to perform checks in the agent hosts via SSH. The script installs the required components. If the installation has been completed correctly, the script displays the following message:

    Trento Server installed!
  5. Check whether the Trento Server is up and running:

    trentoadmin@TRENTO_SERVER_HOSTNAME:~> sudo /usr/local/bin/kubectl get pods
    NAME                                      READY   STATUS    RESTARTS   AGE
    svclb-trento-server-web-collector-x2hmd   1/1     Running   0          42m
    trento-server-consul-server-0             1/1     Running   0          42m
    trento-server-consul-qv65d                1/1     Running   0          42m
    trento-server-postgresql-0                1/1     Running   0          42m
    trento-server-ara-77fb85b46d-mb756        1/1     Running   0          42m
    trento-server-web-df665479-rlghw          1/1     Running   2          42m
    trento-server-runner-5cdc4995b6-f96vb     1/1     Running   1          42m
  6. Log out the Trento Server host.

  7. To verify that the Trento Server installation was successful, open the URL of the Trento web console (http://TRENTO_SERVER_HOSTNAME) from a workstation located in the SAP admin's LAN.

5 Installing Trento Agents

Important
Important: Expect changes in the installation procedure

The product is under active development. Expect changes in the described installation procedure. RPM packages for Trento are in the works.

Repeat the following steps on each host to be monitored in your SAP Environment.

The procedure uses the following placeholders:

  • TRENTO_SERVER_IP: local IP address of the Trento Server host.

  • TRENTO_AGENT_IP: local IP address of the Trento Agent host.

  • TRENTO_AGENT: host name of the Trento Agent host.

To install the Trento Agent software on the host and register it with the Trento Server, proceed as follows:

  1. Add the public SSH key of the user trentoadmin generated on the Trento Server host to the file ~/.ssh/authorized_keys of user trentoadmin on the Trento Agent host. This step is necessary to enable the runner checks in the Trento Agent host via SSH.

  2. Add the Trento Agent host to the list of known hosts on your Trento Server by logging in once via SSH as trentoadmin:

    1. Log in on the Trento Server host as trentoadmin.

    2. Connect to the Trento Agent host using SSH and answer yes when asked whether to continue or not with the connection process:

      trentoadmin@TRENTO_SERVER_HOSTNAME:~> ssh TRENTO_AGENT_IP
      [...]
      Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
      Warning: Permanently added 'TRENTO_AGENT_IP' (ECDSA) to the list of known hosts.
  3. Install the Trento Agent software in the Trento Agent host and register the agent with the Trento Server:

    trentoadmin@TRENTO_AGENT:~> curl -sfL https://raw.githubusercontent.com/trento-project/trento/main/install-agent.sh | sudo bash -s - --agent-bind-ip=TRENTO_AGENT_IP --server-ip=TRENTO_SERVER_IP
  4. The installation script does not start the agent automatically. Enable automatic start on boot with the command systemctl:

    trentoadmin@TRENTO_AGENT:~> sudo systemctl enable --now trento-agent
  5. Check the status of the Trento Agent:

    trentoadmin@TRENTO_AGENT:~> sudo systemctl status trento-agent
    ● trento-agent.service - Trento Agent service
         Loaded: loaded (/usr/lib/systemd/system/trento-agent.service; disabled; vendor preset: disabled)
         Active: active (running) since Wed 2021-11-24 17:37:46 UTC; 4s ago
       Main PID: 22055 (trento)
          Tasks: 10
         CGroup: /system.slice/trento-agent.service
                 ├─22055 /usr/bin/trento agent start --consul-config-dir=/srv/consul/consul.d
                 └─22220 /usr/bin/ruby.ruby2.5 /usr/sbin/SUSEConnect -s
    
    [...]
  6. Repeat this procedure in all Trento Agent hosts.

6 Using Trento web console

The left sidebar in the Trento web console contains the following entries:

  • Home It gives an overview of the Trento project.

  • HostsLists all registered hosts running the Trento Agent.

  • Pacemaker ClustersLists all discovered Pacemaker clusters.

  • SAP SystemsLists all discovered SAP Systems; identified by the corresponding system IDs.

  • HANA Database Lists all discovered SAP HANA databases identified by the corresponding system IDs.

  • Settings › Checks catalogShows the catalog of configuration checks that Trento may carry out for different cluster components (Pacemaker, Corosync SBD, etc.).

  • AboutShows the current Trento version, the link to the GitHub repository of Trento, the type of subscription and the number of registered SUSE Linux Enterprise Server for SAP Applications hosts .

The following subsections provides an overview of Trento's functionality.

6.1 Hosts view

To display the lists of registered hosts, click the Hosts entry in the left sidebar.

Hosts entry
Figure 2: Hosts entry

This view provides the following information:

  • A Health section on top with a summary of the health status of the registered hosts.

  • A list of registered hosts with the following info for each one of them: Healh Status (Passing, Warning or Critical), hostname, local IP address, cloud provider (when applicable), cluster name (when application), system ID (when applicable), the Trento Agent's version and custom tags that you can add and remove manually.

  • Ability to filter the list by health status, SAP System ID, or custom tags.

Clicking on a host name opens the corresponding Host details view, where you can see the following:

Host details view
  • Hosts details section: it provides the hostname, the SAP System ID (when applicable); the cluster name (when applicable) and the Trento Agent version.

  • Cloud details section: when applicable, it provides the name of the virtual machine, the name of the resource group it belongs to, the location, the size of the virtual machine, and other information.

  • SUSE subscription details section: it lists the different components or modules that are part of the subscription and for each one of them it provides the architecture, the version and type, the registration and subscription status as well as the start and end dates of the subscription.

  • Trento Agent status section: it shows the status and output of the corresponding Trento Agent.

  • SAP instances section: when a SAP instance runs on the hosts, it lists its different processes providing for each one of them the following information: process name, description, start time, elapsed time (since start up), Pid and Status.

6.2 Showing Pacemaker clusters

To display a list of the discovered Pacemaker clusters, click the Pacemaker Clusters entry on the left sidebar.

Important
Important

Keep in mind that during introductory phase only SAP HANA scale-up clusters are currently under consideration.

Pacemaker clusters
Figure 3: Pacemaker clusters

This view provides the following:

  • A Health section on top providing a summary of the Pacemaker clusters status based on the selected configuration checks for each one of them. See Pacemaker Cluster details view for more information.

  • A list of registered clusters with the following information for each one of them: status (based on configuration checks), cluster name, cluster ID, cluster type, SID (when applicable), number of hosts, number of resources, and custom tags that can added/removed manually.

  • The ability to filter clusters by health status, name, SID, type, or tags.

Clicking on the name or ID of one of the clusters, opens the Pacemaker Cluster details view in which we can find the following:

Pacemaker Cluster details view
  • A Settings button next to the Pacemaker Cluster details page header which will open the Cluster settings window: Figure 4, “Pacemaker Cluster settings.

    Pacemaker Cluster settings
    Figure 4: Pacemaker Cluster settings

    In this window you can change the following settings:

    Cluster settings
    • Connection settings: set the Trento administrator that is used to connect to your hosts. In this article, it is trentoadmin.

    • Checks selection: select/deselect a complete category of a test (such as Corosync, Pacemaker etc.) or individual tests.

    Do not forget to save your changes before closing the window.

  • On the top left, a section with the most relevant cluster attributes including SAP HANA system replication mode, SAP HANA system replication operation mode, SAPHanaSR health state and SAP HANA secondary sync state.

  • On the top right side, a Health section with number of configuration checks in Passing, Warning or Critical status. For detail information on the different configuration checks, click on Show check results button. This view gives you a brief overview of passed and failed checks. The Health Details view can be shortened by Cluster settings. There, you can select the tests to include in the view.

  • A Stopped resources section listing all stopped resources in the current Pacemaker cluster.

  • A Pacemaker Site details section showing the different sites that are configured for this cluster. For each site, its name is displayed along with the hostname, the local IP, the virtual IP and the role of the corresponding node. Clicking on the hostname takes you to the corresponding Host details view. Clicking on the Details button to the right opens a window with two tabs: in one tab you can see the main attributes of the node, in the other one you can see the list of resources running on it.

  • A SBD/Fencing section listing the configured SBD devices and their location.

6.3 SAP Systems view

Click the SAP Systems entry in the left sidebar to get an overview of the registered SAP Systems:

Pacemaker clusters
Figure 5: Pacemaker clusters

This view provides the following:

  • A list of registered SAP Systems with the following information for each one of them: system ID (SID), description, ID of the corresponding database, corresponding tenant name, DB IP address, and custom tags that you can manually set/remove. By clicking on the down arrow icon left to the SID, a list with all the instances that part of this SAP System, including database instances, is displayed and for each one of them you can see the corresponding SID, the features (processes) it provides, the instance number, the cluster name (when applicable) and the host where it is running.

  • Ability to filters SAP Systems by SID and tags.

Clicking on a SID entry, opens up the SAP Systems details view which displays the following:

SAP System details
  • the Name and Type of this SAP System.

  • The NetWeaver; instances layout: for each instance, virtual hostname, instance number, features (processes), HTTP and HTTPs ports, start priority, and SAPControl status.

  • The list of hosts where the different NetWeaver instances are running, with the hostname, the IP address, the cloud provider (when applicable), the cluster name (when applicable), the SAP System ID, and the Trento Agent version for each listed host. When you click the hostname, it shows you the details described in Host details view.

6.4 SAP HANA databases view

To get an overview of registered SAP HANA databases, click the HANA databases entry in the left sidebar.

HANA databases
Figure 6: HANA databases

This view provides the following:

  • A list of registered SAP HANA databases with the following information for each one of them: system ID (SID), description, and custom tags that you can manually set/remove. By clicking on the down arrow icon left to the SID, a list of all related instances is displayed and for each one of them you can see the corresponding SID, the features (processes) it provides, the instance number, the system replication role, the cluster name (when applicable) and the host where it is running.

  • Ability to filters SAP HANA databases by SID and tags.

Clicking on one of the SIDs opens the HANA Databases detail view which shows the following:

HANA Database details view
  • Layout section: lists all related SAP HANA instances with their corresposding hostname, instance number, features (processes), HTTP/HTTPS ports, start priorities, and SAPControl status.

  • Hosts section: lists the hosts where all the related instances are running and for each host it provides the hostname, the local IP address, the cloud provider (when applicable), the cluster name (when applicable), the system ID, and the Trento Agent version.

    Clicking on a host name takes you to the corresponding Host details view.

6.5 Configuration checks

To get an overview of the configuration checks that Trento can manage click the Settings › Checks catalog entry in the left sidebar.

Settings › Checks catalog
Figure 7: Settings › Checks catalog

The view shows the configuration checks that Trento can perform for the different cluster components: Corosync, Pacemaker, SBD, Azure Fence Agent, SAP HANA System Replication Resource Agent, OS and package version, and miscellaneous.

Checks are grouped by components. Each test is identified by a test ID, next to which we can see the check description and an info icon. By clicking on the info icon we get detail information about the corresponding check: abstract, remediation actions (what to do when the check is negative) and related references.

What checks are carried out for each particular cluster is determined using the Settings button in the corresponding cluster detail view. See Cluster settings for details.

7 Updating Trento Server

To update the Trento Server, do the following:

  1. Ensure the Trento Server is running.

  2. On the Trento Server host start the update:

    trentoadmin@TRENTO_AGENT:~>sudo curl -sfL https://raw.githubusercontent.com/trento-project/trento/main/install-server.sh | bash
  3. Check the Trento Server processes:

    trentoadmin@TRENTO_AGENT:~>sudo kubectl get pod
  4. Open the Trento web console URL http://TRENTO_SERVER_HOSTNAME.

  5. To check the new version, hover the mouse pointer over the info button in the lower-left corner.

8 Updating a Trento Agent

To update the Trento Agent, do the following:

  1. Log in the Trento Agent host as the Trento admin user trentoadmin.

  2. Stop the Trento Agent:

    trentoadmin@TRENTO_AGENT:~> sudo systemctl stop trento-agent
  3. Confirm the Trento Agent is down:

    trentoadmin@TRENTO_AGENT:~> sudo systemctl status trento-agent
  4. Update Trento Agent, using the Trento Agent host local IP and the Trento Server host local IP:

    trentoadmin@TRENTO_AGENT:~> curl -sfL https://raw.githubusercontent.com/trento-project/trento/main/install-agent.sh | sudo bash -s - --agent-bind-ip=TRENTO_AGENT_IP --server-ip=TRENTO_SERVER_IP
  5. Start the Trento Agent:

    trentoadmin@TRENTO_AGENT:~> sudo systemctl enable --now trento-agent
  6. Check the version on the Trento web console.

    1. Open the Trento web console URL http://TRENTO_SERVER_HOSTNAME.

    2. In the menu section, click the Hosts entry. Use tags to filter the list, if necessary.

    3. Find the corresponding Trento Agent host name in the list.

    4. Check the version of the agent running in the Agent version column.

    5. Optionally, click the Trento Agent hostname and review the host status details.

Print this page