The sas-viya-runlauncher-default service shows in a "not ready" state when you run the sas-viya-all-services status command. For example, you might see the following in the command-line interface (CLI):
userid@sasserver:~#> sudo /etc/init.d/sas-viya-all-services status | grep runlauncher
sas-viya-runlauncher-default not ready 11.222.33.44 11.222.33.44 32790
41539 13871
This issue can occur if there are defunct SAS® Launcher Servers registered in Consul.
As a workaround, complete these steps to determine whether there are defunct SAS® Launcher Servers and remove them from Consul:
- Source the consul.conf file:
source /opt/sas/viya/config/consul.conf
- Dump the current Consul agent service list to a file:
/opt/sas/viya/home/bin/sas-bootstrap-config --token-file /opt/sas/viya/config/etc/SASSecurityCertificateFramework/tokens/consul/
default/client.token
agent service list > /tmp/servicelist.txt
- Search the output file for multiple instances of launcher-server as shown in this example:
"33fb3cde-446e-469f-bb35-dd1438b9ae44": {
"ID": "33fb3cde-446e-469f-bb35-dd1438b9ae44",
"Service": "launcher-server",
"Tags": [
"tls",
"linux"
],
"Port": 32790,
"Address": "11.222.33.44",
"EnableTagOverride": false,
"CreateIndex": 0,
"ModifyIndex": 0
},
"4bcacd24-e3bb-4c34-b980-25d1e5061864": {
"ID": "4bcacd24-e3bb-4c34-b980-25d1e5061864",
"Service": "launcher-server",
"Tags": [
"tls",
"linux"
],
"Port": 41539,
"Address": "11.222.33.44",
"EnableTagOverride": false,
"CreateIndex": 0,
"ModifyIndex": 0
},
"f460a699-1657-4fdb-ab03-579fdf4b7d59": {
"ID": "f460a699-1657-4fdb-ab03-579fdf4b7d59",
"Service": "launcher-server",
"Tags": [
"tls",
"linux"
],
"Port": 13871,
"Address": "11.222.33.44",
"EnableTagOverride": false,
"CreateIndex": 0,
"ModifyIndex": 0
},
4. Determine which launcher-server instances are no longer functional. One way that you can do this is by using the lsof command as root with the port number for the launcher-server instances found in step #2. Here is an example:
lsof -i tcp:32790
lsof -i tcp:41539
lsof -i tcp:13871
You receive output only from services that are legitimately listening.
- De-register the defunct services (those that returned nothing in step #3) using the ID from the services list file:
/opt/sas/viya/home/bin/sas-bootstrap-config --token-file /opt/sas/viya/config/etc/SASSecurityCertificateFramework/tokens/
consul/default/client.token
agent service deregister 4bcacd24-e3bb-4c34-b980-25d1e5061864
/opt/sas/viya/home/bin/sas-bootstrap-config --token-file /opt/sas/viya/config/etc/SASSecurityCertificateFramework/tokens/
consul/default/client.token
agent service deregister 33fb3cde-446e-469f-bb35-dd1438b9ae44