The SL1 PowerFlow powerflowcontrol (pfctl) command-line utility version 2.7.10 includes multiple fixes and improvements for node and cluster actions. This version of the utility is included with the PowerFlow Platform version 3.1.0 release.
For more information about the commands you can run using this utility, see Using the powerflowcontrol (pfctl) Command-line Utility.
Features
This section covers the features that are included in the pfctl command-line utility version 2.7.10:
- Added error handling for the set password command to manage cases where the command is entered in an invalid format. The output will explain why the command execution failed.
- The get_powerflow_version node action now shows deprecation warnings if the current date has passed the End of Maintenance date, and the action fails if the current date has passed the End of Life date.
Deprecation errors on the get_powerflow_version_cluster cluster action are only applied to the manager node. This function will display an error message if the PowerFlow versions are different across cluster nodes.
-
Added a delete_files method to remove files created in the /tmp directory when executing node actions, cluster actions, and autocluster. This method is called within the common_actions, cluster_actions, and autocluster functions, passing the path of all generated files that cause conflicts when executing an action. This update helps prevent errors from leftover /tmp files when executing an action with sudo permissions followed by an action without sudo permissions. If you are not in the "sudoers" group, a message will display indicating that you need these permissions.
-
A limit of 5 API uwsgi workers(uwsgi-workers: 5) is set by default when applying the "16GB Deployments" template with this pfctl version. This allows the API service to run successfully using only 1 GB of memory, as every uwsgi worker inside the API has 200 MB as a memory limit.
Issues Addressed
The following issues were addressed in this release:
-
Updated the check_dex_connectivity node action to retrieve the host address and make an HTTP request to https://{host_address}:5556/healthcheck. If the request returns a non-200 status warning, the message "WARNING: The UI seems to be down" is displayed. Next, a request is made to https://{host_address}:5556/dex/theme/styles.css to verify Dex connectivity. This command will fail if the Dex server returns a non-200 status. (Cases: 00429729, 00448849, 00465341) (Jira ID: INT-6305)
-
Added the following cluster actions to help increase and verify the heartbeat of PowerFlow Docker Swarm, which is important for deployments where network disruptions or timeouts are present:
-
update_swarm_heartbeat_period. Increases the PowerFlow Docker Swarm heartbeat from 5 secs to 20 seconds.
-
check_swarm_heartbeat_period. Checks the current hearbeat period. (Case:00404157) (Jira ID: INT-5904)
-
When creating a new cluster using autocluster, the swarm heartbeat will be set to 20 seconds by default. This is also true when running autoheal.
-
Updated the check_memory_and_cpu_usage action:
-
Renamed check_memory_and_cpu_usage to check_docker_memory_and_cpu_usage.
-
When Docker services have CPU or memory more than 95%, check_docker_memory_and_cpu_usage now displays a warning instead of raising an exception.
-
When check_docker_memory_and_cpu_usage catches an exception, it raises "EnvironmentCheckException" instead of "HealthcheckException". (Case: 00458266)
-
-
Updated the check_vm_tools action to show "Skipped" instead of "Failing" if it is not possible to determine whether the host is a Vmware or AWS EC2 environment, or if determining if VM tools are installed is not possible. (Case: 00450623)
-
Addressed an issue with the check_vm_tools action that caused "Failing" to show when checking for an AWS EC2 environment with a non-root user. (Case: 00450623)
-
Addressed an issue with the check_docker_daemon_json action that prevented a correct check of the host running an AWS EC2 environment when running the check with a non-root user. (Case: 00450623)
To view the latest manuals for the SL1 PowerFlow Platform, see the SL1 PowerFlow page. To view the latest release notes for PowerFlow, see SL1 PowerFlow Release Notes.
Known Issues
This release contains the following known issue:
-
If you get the "Error: No such option: --version Did you mean --json?" error message when running the pfctl --version command, you might have an older version of pfctl that was installed as a different user. To resolve this, be sure to install the powerflowcontrol (pfctl) utility version 2.7.7 as root with sudo, and remove any other versions installed by other users (isadmin or ec2-user):
su isadmin
pip3 uninstall -y iservicecontrol
Installing the powerflowcontrol (pfctl) Command-Line Utility
Typically the powerflowcontrol (pfctl) utility is included with the latest version of the PowerFlow Platform. If you need to install a more recent, standalone version of the utility, use the following procedure.
To install the powerflowcontrol (pfctl) utility:
-
Go to the ScienceLogic Support site at https://support.sciencelogic.com/s/.
-
Click the PowerFlow. The PowerFlow page appears.
tab and select -
Click the link for the current release. The Release Version page appears.
-
In the Release Files section, click the link for the version of PowerFlow Control you want to download. The Release File Details page appears.
-
Click the .whl file for the powerflowcontrol utility.
button to download the -
Using WinSCP or another file-transfer utility, copy the .whl file to a directory on the PowerFlow system.
-
Go to the console of the PowerFlow system or use SSH to access the PowerFlow system.
-
To install the utility, run the following command:
sudo pip3 install iservicecontrol-2.7.10-py3-none-any.whl
-
To check the version number of the utility, run the following command:
pip3 show iservicecontrol