Some Task Servers are not registering to themselves but rather they are registering to the SMP itself or other Task Server. The Task Servers are listing themselves as available Task Servers in the agent logs but still, they go to register to the SMP or other Task Server.
ITMS 8.x
The assumption that a Task Server will register to itself automatically is incorrect. The Client Task Agent knows nothing about the Task Server plug-in, even if they both installed on the same box. So, the Task Server selection algorithm is always used to find the Task Server to assign an agent to.
For example, here are some agent log entries (top entries are the most recent ones) while trying to register to a Task Server. smp71206.domain.com is the SMP and ts72206.domain.com is the Task Server that we want to register to itself:
6/14/2018 7:57:52 AM |
Client Task Agent |
client task agent.dll |
7852 |
Attempting to register on Task Server [<TaskServer>.<Domain>.com] over [http]. |
|||
6/14/2018 7:57:52 AM |
Client Task Agent |
client task agent.dll |
7852 |
CTaskServerNetCommsConnection::_buildTaskServerUrl(): url: http://<NSserver>.<Domain>.com:80/Altiris/ClientTaskServer |
|||
6/14/2018 7:57:52 AM |
Client Task Agent |
client task agent.dll |
7852 |
CTaskServerNetCommsConnection::_buildTaskServerUrl(): Server: [<NSserver>.<Domain>.com, Http: [80], Https: [443], Use Https: [false] |
|||
6/14/2018 7:57:52 AM |
Client Task Agent |
client task agent.dll |
7852 |
Pending Task Server Registration - initial timeout 15 sec, max timeout 300 sec, max retries 5. |
|||
6/14/2018 7:57:52 AM |
Client Task Agent |
client task agent.dll |
7852 |
Task Server: [<TaskServer>.<Domain>.com], Active: [false], Http: [80], Https: [0], Value: [0], Shares: [100] |
|||
6/14/2018 7:57:52 AM |
Client Task Agent |
client task agent.dll |
7852 |
Task Server: [<NSserver>.<Domain>.com], Active: [false], Http: [80], Https: [443], Value: [0], Shares: [94] |
|||
6/14/2018 7:57:52 AM |
Client Task Agent |
client task agent.dll |
7852 |
Registering with Task Server list: |
|||
6/14/2018 7:57:52 AM |
Client Task Agent |
client task agent.dll |
7852 |
Ordering servers by task server load shares |
|||
6/14/2018 7:57:52 AM |
Client Task Agent |
client task agent.dll |
7852 |
CTaskServerNetCommsConnection::_readServerListDocument(): Task Server: [<NSserver>.<Domain>.com], Http: [80], Https: [443], Active: [false] |
|||
6/14/2018 7:57:52 AM |
Client Task Agent |
client task agent.dll |
7852 |
CTaskServerNetCommsConnection::_readServerListDocument(): Task Server: [<NSserver>.<Domain>.com], Http: [80], Https: [0], Active: [false] |
|||
6/14/2018 7:57:52 AM |
Client Task Agent |
client task agent.dll |
7852 |
CTaskServerNetCommsConnection::_readServerListDocument(): Found [2] servers. |
So, here is what is happening:
CTaskServerNetCommsConnection::_readServerListDocument(): Found [2] servers.
Ordering servers by task server load shares
Task Server: [<NSserver>.<Domain>.com], Active: [false], Http: [80], Https: [443], Value: [0], Shares: [94]
Task Server: [<TaskServer>.<Domain>.com], Active: [false], Http: [80], Https: [0], Value: [0], Shares: [100]
In this scenario, the SMP itself had only 94 connections/shares at that point of time, while the Task Server itself had already 100 connections/shares established. The SMP was the available one to be selected with fewer connections.
Method I:
Note: If someone wants to specifically select a Task Server to register to itself, the manual assignment will be the best method.
The manual assignment should help to tie the agent to the specific Task Server (but if the agent won't be able to register to this Task Server then it will stay in not-registered state).
Method II:
Another method is from the Site Server:
KB 150990 "Client Task Agent Connectivity"