Delete a live node

To delete a live node that you have access to, do the following:

  1. Login to the live node and perform the following steps with administrative rights. This local node must be alive, and the Cassandra service must be in Up and Normal status.

    You can check the local Cassandra node status by running the following command:

    $ "<Install folder>\Shared Services\Cassandra\bin\nodetool.bat" status

    Note: The JAVA_HOME environment variable must be set to "<Install folder>\Shared Services\Cassandra\JRE" before running "nodetool status".
  2. Remove the CassandraScheduledTaskRunner scheduled task from the Windows Task Scheduler in order to avoid any unexpected Cassandra access or operation during the node removal.

    The scheduled task can be removed through either the Task Scheduler application or by running the following command:

    $ schtasks /Delete /TN "CassandraScheduledTaskRunner" /F

  3. Open Task Manager and ensure that the CassandraScheduledTaskRunner.exe process is not running.
  4. Run the following command:
    $ "<Install folder>\SharedServices\SecurityFrameworkService\CassandraSetup\CassandraSetup.exe" uninstall
    Note: Uninstalling the CassandraSetup.exe also deletes the Cassandra data folder on the local host server.
    Note: Quorum consistency should be achieved after the node is removed. Check the status of the other nodes before uninstalling CassandraSetup in order for it to work properly.
    Uninstall will perform the following operations automatically:
    • Deletes keyspace secrets of local node from controlsuite_ddb.ddb_key_by_public_key.
      • Deletes local node record from controlsuite_ddb.ddbnode_by_host_id and controlsuite_ddb.ddbnode_by_datacenter_id
      • If needed it deletes the empty datacenter record from controlsuite_configuration.datacenter_by_id
      • Updates keyspaces replication factors and runs repair
      • Runs nodetool.bat decommission
      • Stops Cassandra service
    • Removes DDBService encryption certificate from the store
      • Deletes Cassandra data directory
      • Deletes Cassandra ssl directory
      • Deletes the following files from c:\<Install folder>\Shared Services\Cassandra\conf: cassandra.yaml, cassandra-rackdc.properties, logback.xml
      • Deletes %ProgramData%\Nuance\SecurityFrameworkService\Settings\ndiddbstore.xml
  5. Stop the SecurityFrameworkService application pool in IIS Manager or by running the following command:
    $ %systemroot%\system32\inetsrv\APPCMD stop apppool /apppool.name:"SecurityFrameworkService"
  6. Delete the SecurityFrameworkService IIS application and application pool in IIS Manager or by running the following two commands:
    $ %systemroot%\system32\inetsrv\APPCMD delete app "NDI/SecurityFrameworkService"
    $ %systemroot%\system32\inetsrv\APPCMD delete apppool "SecurityFrameworkService"
  7. Connect to a remote live node SSDSURL (https://<Hostname of the remote node>:8181/SecurityFrameworkService). Before connecting, the locally installed services and client components need to be unenrolled using <Install folder>\Shared Services\SecurityFrameworkService\NDISecTool\NDISecTool.exe.
    1. Run the following command to point SecurityFramework to a remote live node:
      $ NDISecTool.exe -ssdscert /ssdsurl https://<Hostname of the remote node>:8181/SecurityFrameworkService -tofu -o
    2. Run the following command to unenroll the local v1-auth service:
      $ NDISecTool.exe -unenrollservice -n SecurityFrameworkService -servicename v1-auth
    3. Run the following command to unenroll the local v1-service service:
      $ NDISecTool.exe -unenrollservice -n SecurityFrameworkService -servicename v1-service
    4. Run the following command to unenroll the local v1-ddbmanagement service:
      $ NDISecTool.exe -unenrollservice -n SecurityFrameworkService -servicename v1-ddbmanagement
    5. Run the following command to unenroll the local CassandraScheduledTaskRunner client component:
      $ NDISecTool.exe -unenrollclient -clientname CassandraScheduledTaskRunner
    6. Run the following command to unenroll the local SecurityFrameworkService client component:
      $ NDISecTool.exe -unenrollclient -clientname SecurityFrameworkService
    7. Run the following command to unenroll the local CassandraSetup client component:
      $ NDISecTool.exe -unenrollclient -clientname CassandraSetup
  8. Uninstall Cassandra Windows service by running the following command:
    $ "<Install folder>\Shared Services\Cassandra\bin\uninstall.cmd" "%ProgramData%\Nuance\SecurityFrameworkService\Settings\ddb.config"
    This uninstall.cmd cleans up all service related registry entries which the "sc delete" command does not.
  9. Optionally remove the installed files from <Install folder>, other configuration and data files from %ProgramData%\Nuance and from %ProgramData%\Cassandra.