Controlling Containerized xUML Services (Kubernetes)
You have two options to deploy xUML services as a Kubernetes workload:
The PAS Administration offers a deployment wizard (refer to Working With the Deployment Wizard for details).
You can also deploy Designer services directly to the deployment target Container (refer to Designer Guide > Selecting the Deployment Target).
xUML services that run in Kubernetes have extended details to manage this type of service.
We recommend using container deployment as the default deloyment target starting with PAS 23.1. For further information see:
Using the Workload Details
You can open a details page for each workload. To do so, click on the service name in the list:
Click on a name in the service list to open its details page. The details page shows you the title of the service and some quick action icons:
Icon | Description |
---|---|
Shows the current state of the service. | |
Starts the service. | |
Stops the serivice. | |
Restarts the service. |
It also contains different collapsable sections:
Information
The Information section contains the main information about the Kubernetes workload:
Name
Source is Kubernetes for workloads
Type
Created/Updated
Version
Kubernetes
On top of the Kubernetes section, you find the information about
API Version: Defines the versioned schema of this representation of a Kubernetes workload.
Labels: Map of string keys and values that can be used to organize and categorize (scope and select) workloads.
Annotations: Unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata.
Click Show all to display all available labels or annotations:
Below this information, you can find the two tabs Pod and Networking:
Pod
Tab Pod contains the sections General and Container. The information displayed in the two sections is read-only.
Pod - General
Section General contains common information about the Pod:
Name | Version name of the Pod. |
---|---|
Type | Shows the internal type of the replication controller. |
Scaling | If available, you can adapt the number of Pod replicas (see below). |
Replicas | Shows the number of Pod replicas. The color indicates the status:
|
Additional Labels | Shows additional Pod labels if set. |
To scale the number of replicas, move the position of the slider to the desired number of replicas you want to set. Click Apply:
A pop-up window opens displaying the number of replicas before and after the change. Click Scale to confirm your choice or Cancel to abort:
The new number of replicas is displayed after a refresh of the browser tab:
Pod - Container
Section Container consists of several tabs, one tab for each container:
The content of the tabs is the same for all containers and displays the container details:
Name | Name of the container. |
---|---|
Image | Image of the container. |
Ports and Volumes | See below. |
Memory and CPU | Shows the number of Pod replicas. The color indicates the status:
|
Additional Labels | Shows the container limitations. If a container exceeds its memory request and the node that it runs on becomes short of memory overall, it is likely that the Pod the container belongs to will be evicted. Limitations cannot be changed by users. They are set during system deployment. |
Limits | Requests | |
---|---|---|
Memory | If the memory limit is exceeded, the container will run in state OutOfMemory and then be killed. | If a container exceeds its memory request and the node that it runs on becomes short of memory overall, it is likely that the Pod the container belongs to will be evicted. |
CPU | If the CPU limit is exceeded, the container will be throttled, the process will slow down. | If the CPU memory request exceeds the nodes (server) capacity, the P od can be stopped and stared on a different node. |
Expert Advice
Visit the official Kubernetes documentation for more information:
Resource Management for Pods and Containers for detailed information abour requests and limits.
Scheduling, Preemption and Eviction about the rules regarding the termination of pods.
If you click the link Ports and Volumes, the container details open in a separate pop-up:
Ports: Displays a list of all ports exposed in the internal network.
Volumes: Lists all mounted volumes.
Use the filter on top of each list to search for single ports or volumes.
Networking
Tab Networking gives you an overview on the details of the service mesh. Use the filter to search for a port name:
Details
On top of the Details section, you can find the option Delete Service (refer to Deleting a Service below for further information). The boxes General, Build and Deployment contain read-only information:
The General details contain common information about the compiled .rep file:
Timer | Shows whether a timer is enabled or not. |
---|---|
Scheduler | Shows whether a scheduler is enabled or not. |
Name | Name of the compiled service. |
Version | Version of the compiled service. |
The Build details contain information about the workload:
Image Name | Name of the image in the Docker registry. |
---|---|
Build User | Username of the user that triggered the build process. |
Build Date | Build date and time of the service repository. |
Compiler Version | Version of the compiler the service has been compiled with. |
Compile Date | Timestamp of the compilation of the service. |
The Deployment details contain information about the deployment:
Service Name | Name of the xUML service. |
---|---|
Deployment User | Username of the user that triggered the deployment process. |
Deployment Date | Creation date and time of the container. |
Container Start Date | Date and time of the last (re-)start of the container. |
Below the three sections that contain read-only information, you can find the two tabs Endpoints and Libraries (see below for details):
Endpoints
In tab Endpoints you can find the necessary information regarding the API endpoints of this service:
Column | Description | Possible Values |
---|---|---|
Name | Name of the registered endpoint. | Any string. |
Type | Type of the registered endpoint. |
|
URL |
| Any URL. |
Test | Use option Open to switch to the interface that allows you to test the application/API. The test interface is available on running services only. The PAS platform features an xUML Runtime API for each service. You can use the interface to obtain information on the states of the service's state machines in general, and to trigger state transitions. Refer to xUML Runtime API Reference for a comprehensive list of all available requests. | - |
Interface/Descriptor | Use option Download to download the description (OpenAPI/WSDL) of the service interface. | - |
API | Use option Import to import the API to Scheer PAS API Management. A wizard will support you in creating the API in API Management. Refer to Creating an API in the API Management Guide for details. | - |
Use the filter field to search for a specific endpoint. The content of the filter field is applied to the columns Name and Type:
Click Extended filter to display the extended filter options:
Type
Reset Filter
If a filter is applied, the extended filter image changes:
Use option Reset Filter in the main filter window to reset all selected filters. In the filter option window, you can also reset the selection:
Libraries
In tab Libraries you can find a list of all libraries that are used in this service:
Name | Name of the library. |
---|---|
Version | Version of the library. |
Compiler Version | Version of the compiler the library has been compiled with. |
Compile Date | Timestamp of the compilation of the library. |
Use the filter field to search for a specific library. The content of the filter field is applied to the column Name only:
Deleting a Service
If you want to delete a containerized xUML service, click Delete Service on top of the Details section:
Please note, that the deletion of a service has several consequences:
The service container (deployment) will be removed from the current system.
The registered routes are purged.
Persisted data stored in this service will be removed.
Option Delete is only enabled if you insert the correct service name:
Documentation
Open the Documentation section to display the documentation of the xUML service:
Use the list Select Document to choose the documentation you want to see. The list contains:
The documentation of the xUML service itself (if it is a service that has been created in the Designer, you will see the content of field Description from the service details page).
The documentation of the libraries that are used in the service.
Logs
In section Logs you can change the log level. Refer to Changing the Log Level of a Workload for detailed information. The link in section Logs gives you direct access to the Log Analyzer, where you can inspect the logs. Refer to Showing Logs of a Containerized xUML Service (Kubernetes) and Analyzing Platform Logs for further information.
History Log
In the History Log section you can inspect the service history. Refer to Showing Logs of a Containerized xUML Service (Kubernetes) for detailed information.
Persistent State
In section Persistent State you can manage persistent state objects. Refer to Persistent States of Containerized xUML Services for detailed information.
Configuration
In the Configuration section you can change the settings of an xUML service. Refer to Adapting the Configuration of Containerized xUML Services (Kubernetes) for detailed information.