RAAS service reporting "license_is_expired" error
search cancel

RAAS service reporting "license_is_expired" error

book

Article ID: 425018

calendar_today

Updated On:

Products

VMware Tanzu Platform Services - SALT VMware SaltStack

Issue/Introduction

  • Checking the RAAS service status using the command "systemctl status raas.service" returns below error:
    raas [2592] : [ERROR ] Could not check license expiration: 'NoneType' object is not subscriptable
    raas [2592]: Traceback (most recent call last) :
    raas [2592] : File "/var/lib/raas/unpack/ MEI386Asi/raas/mods/license/check.py", line 43, in license_is_expired
    raas [2592] :expired = datetime.date. today () > lic["expires"]

     

  • Confirmed that the license for the Aria Config / Tanzu Salt service is not expired
  • The "/var/log/raas/raas" log reports below error:
    [raas.utils.rpc][DEBUG   :216 ][Webserver:321996] Processed RPC request(4672). Response: {'riq': 4672, 'ret': None, 'error': None, 'warnings': []}
    [var.lib.raas.unpack._MEI4SW5YO.raas.mods.rest.rpc ][INFO    :216 ][Webserver:321996] RPC Returned: ret.save_event riq: 4672 duration: 0.078
    [tornado.access ][INFO    :2344][Webserver:321996] 200 POST /rpc (##.##.##.###) 115.84ms
    [celery.backends.redis[ERROR   :216 ][Webserver:322000] Connection to Redis lost: Retry (8/20) in 1.00 second.
    [var.lib.raas.unpack._MEI4SW5YO.raas.mods.license.op ][WARNING :216 ][Webserver:321989] Failed to connect to Redis to get cached license data
    [var.lib.raas.unpack._MEI4SW5YO.raas.mods.license.op][INFO  :216 ][Webserver:321989] Found no cached license data
    [var.lib.raas.unpack._MEI4SW5YO.raas.mods.license.check ][ERROR :216 ][Webserver:321989] Could not check license expiration: 'NoneType' object is not subscriptable
    Traceback (most recent call last):
      File "/var/lib/raas/unpack/_MEI4SW5YO/raas/mods/license/check.py", line 43, in license_is_expired
        expired = datetime.date.today() > lic["expires"]
    TypeError: 'NoneType' object is not subscriptable
  • The Redis service statis show "failed:
    # systemctl status redis
    redis.service - Redis persistent key-value database
    Loaded: loaded (/usr/lib/systemd/system/redis.service; enabled; preset: di>
    Drop-In: /etc/systemd/system/redis.service.d
                  Llimit. conf
    Active: failed (Result: oom-kill) since Mon 2025-12-15 16:14:29 IST; 
    Main PID: 1083 (code=killed, signal=KILL)

     

  • Also, the Redis log (/var/log/redis/redis.log) reports below error:
    WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Being disabled, it can can also cause failures without low memory condition, see https://github.com/jemalloc/jemalloc/issues/1328. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
    Loading RDB produced by version 6.2.20
    414590:M 23 Dec 2025 17:04:18.002 * Background saving started by pid ######
    414590:signal-handler (##########) Received SIGTERM scheduling shutdown...
    414590:M 23 Dec 2025 17:04:33.699 # User requested shutdown...
    414590:M 23 Dec 2025 17:04:33.704 # There is a child saving an .rdb. Killing it!
    414590:M 23 Dec 2025 17:04:33.708 * Saving the final RDB snapshot before exiting.
    414590:M 23 Dec 2025 17:05:50.634 * DB saved on disk
    414590:M 23 Dec 2025 17:05:50.636 * Removing the pid file.
    414590:M 23 Dec 2025 17:05:50.636 # Redis is now ready to exit, bye bye...


Environment

Aria Automation Config 8.x

Cause

RaaS showed a "license_is_expired" error because Redis crashed due to memory exhaustion, breaking the connection between the services.

Resolution

To resolve the Redis server Out-of-Memory (OOM) issue, please follow the steps outlined below.

Note : Make sure to take a non-memory snapshot for the Redis, Salt-master and RAAS VM before you proceed with below steps.

Resolution 1

  1. Verify the Current memory setting on Redis using the below command:
        sysctl vm.overcommit_memory

  2. If it returns vm.overcommit_memory = 0, update the overcommit setting as mentioned below:

    1.  Open /etc/sysctl.conf for editing:
           vi /etc/sysctl.conf
    
     2.  Add the following line at the end of the file:
           vm.overcommit_memory=1
    
     3. Apply the changes by executing below:
           sudo sysctl -p
    
    4.  Restart Redis
           systemctl restart redis
    5.  Monitor the Redis and RAAS service and confirm its stable.

     

  3. If the vm.overcommit_memory parameter is already configured to 1 but the OOM error on Redis continues, please proceed to Resolution 2.

Resolution 2

  1. Stop the salt-master service on all master nodes.

    systemctl stop salt-master

  2. Move the sseapi-*.sqlite3 files under /var/cache/salt/master/ to different location.

    cd /var/cache/salt/master/
    mv sseapi-*.sqlite3 <Define the location to move the files>
  3. Start the salt-master service.

    systemctl start salt-master

  4. Connect to RAAS appliance and Stop the RAAS service

    systemctl stop raas.service

  5. Move the raas-celery-*.db files under /var/lib/raas/cache/ to different location

    cd /var/lib/raas/cache/
    mv raas-celery-*.db <Define the location to move the files>
  6. Start the RAAS service
    systemctl start raas.service

  7. Monitor the Redis and RAAS service and confirm its stable.