Skip to content

Instantly share code, notes, and snippets.

@digital-shokunin
Last active January 5, 2024 03:46
Show Gist options
  • Save digital-shokunin/c30ee49b98bc80bcad3c to your computer and use it in GitHub Desktop.
Save digital-shokunin/c30ee49b98bc80bcad3c to your computer and use it in GitHub Desktop.
WSAdmin cheatsheet
     node = AdminConfig.getid('/Node:node_name/')

     AdminConfig.create('Server', node, ['name', 'server_name'])

To get list of templates:

     c = AdminConfig.listTemplates('Server','cluster1/servers/V7')

or

    c = AdminConfig.listTemplates('Server','cluster1/servers/V8')

see dmgr_profile_root/config/templates/clusters/clusterName/servers/* for templates available.

     AdminTask.createApplicationServer('node_name', ['-name', 'server_name', '-templateName', 'template_name'])

Setting max heap size

     AdminTask.setJVMMaxHeapSize('-serverName server1 -nodeName node1 -maximumHeapSize heap_size')

As always, don't forget to:

     AdminConfig.save()
     AdminNodeManagement.syncActiveNodes()

==Creating Cluster Members==

     AdminTask.createClusterMember ('[-interactive]')

or manually

     cluster = AdminConfig.getid('/ServerCluster:myCluster1/')
     node = AdminConfig.getid('/Node:mynode/')
     AdminConfig.createClusterMember(cluster, node, [['memberName', 'clusterMember1']])

An existing server:

    AdminConfig.convertToCluster(server, 'myCluster1')
    server = AdminConfig.getid('/Cell:mycell/Node:mynode/Server:server1/')

Using a template:

    serverTemplate = AdminConfig.listTemplates('Server')
    print AdminConfig.createClusterMember(cluster, node, [['memberName',  'clusterMember1']], serverTemplate)

To get list of templates:

    c = AdminConfig.listTemplates('Server','cluster1/servers/V7')

or

    c = AdminConfig.listTemplates('Server','cluster1/servers/V8')

see dmgr_profile_root/config/templates/clusters/clusterName/servers/* for templates available.

Modify template attributes:

    AdminConfig.modify(c, [[attrName, attrVal]])
    print AdminConfig.showall(c)

As always, don't forget to:

    AdminConfig.save()
    AdminNodeManagement.syncActiveNodes()
    Help()
    AdminApp.help()
    AdminConfig.help()
    AdminControl.help()

List some servers:

AdminControl.queryNames('type=Server,cell='+cn+',node='+nn+',*')

where cn is cellname, and nn is node name. To get cn/nn:

    cells = AdminConfig.list('Cell').split()
    for cell in cells:
        cn = AdminConfig.showAttribute(cell, 'name')
        print cn
        nodes = AdminConfig.list('Node', cell).split()
        for node in nodes:
            nn = AdminConfig.showAttribute(node, 'name')
            print cn

To continue:

    servers = AdminControl.queryNames('type=Server,cell='+cn+',node='+nn+',*').split()
    for server in servers:
        sn = AdminControl.getAttribute(server, 'serverName')
        print sn # You can also just print AdminControl.getAttribute(server, 'serverName')

##Interactive

     AdminApp.installInteractive('\opt\dropzone\app\ears\application1.ear')

##Manually If just a server

    AdminApp.install('location_of_ear.ear','[-node nodeName -cell cellName -server serverName]')

If a cluster

As a single string:

    AdminApp.install('\opt\dropzone\app\ears\application1.ear', '[-cluster cluster1]')

As a list:

    AdminApp.install('\opt\dropzone\app\ears\application1.ear', ['-cluster', 'cluster1'])

To see more options:

    print AdminApp.options()

As always, don't forget to:

    AdminConfig.save()
    AdminNodeManagement.syncActiveNodes()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment