Client Notification in System Center 2012 Configuration Manager SP1

简介:

Overview

Historically, a pull-based client communication mechanism is employed in the System Center Configuration Manager line of products. As a result, in large scale enterprise environments, when an administrator initiates a task, it would take minutes or even hours for each client to receive that task, run it and then report the result back to the server.  For common scenarios it is an appropriate trade off, however it is problematic if such tasks are mission-critical and time sensitive (e.g., anti-malware operations). The latency is also more obvious in data center environments where servers only have a limited amount of time reserved for management tasks. How useful would it be to push IT administration tasks much faster ? Configuration Manager 2012 SP1 provides this capability by providing a fast “client notification” channel between server and the managed clients.

What is “Client Notification”?

Client notification is, by popular demand, a new and exciting infrastructure component introduced in Configuration Manager 2012 SP1, which can provide a fast channel that a Configuration Manager administrator can use to notify clients to initiate time-sensitive tasks as soon as possible.  The communication channel is push-based instead of dependent on the client policy polling interval. By using client notification, clients can establish a persistent connection with a management point. Subsequently, the server can notify the client of time-sensitive or urgent tasks over the channel and the client can perform an action in response to the message. In SP1, all System Center Endpoint Protection operations and the “Download Computer Policy” client action are implemented by using this channel.

How “Client Notification” works

Client notification is an end-to-end infrastructure composed of notification manager on the site server, notification server on the management point and notification agent on the client.

1)  Notification Manager

Notification manager is a component of the site server. Its responsibility is to generate push messages for client notification-enabled actions, update the client online presence status and client notification push results in the site database.

2)  Notification Server

Notification server is the server component on the management point. It is automatically deployed and installed on management points, including on secondary sites. Notification server performs the following functions:

  • Hosts both TCP and HTTP listeners in order to support client communications over either protocol.

  • Listens on the notification service broker queue in the site database to detect when push messages are generated.

  • Pushes the messages to online clients over the channel and periodically generates a file containing results  which will be stored in the site database. These results can be monitored from the Client Operations node of the Configuration Manager console.

  • Maintains a list of online clients and periodically generates online info into a file which is sent to the site server.

3)  Notification Agent

Notification agent is a client component hosted in CCMEXEC.exe. As a part of client initialization, it will establish a persistent connection with notification server. For those clients that communicate via a secondary site, they will establish connection with the notification server on the proxy management point. It will try TCP mode first, then fallback to HTTP mode if it fails (due to firewalls or Internet proxies that do not allow TCP traffic).  If the connection is dropped (e.g. because of a network issue), notification agent will attempt to reconnect.

wKiom1k2YkiQ21vEAADf2Ks5WZE547.jpg

Client notification supports both the TCP and HTTP communication protocols. TCP is the primary mode used, which requires an extra port to be opened in firewalls, and HTTP is the fallback option and doesn’t need any prerequisite configuration. The respective workflow is nearly the same. Take TCP mode as an example.

1)  Client notification Infrastructure is by default enabled end-to-end. During client initialization, notification agent will first attempt to establish a persistent TCP Connection to notification server on the current management point. Once successful, notification agent will periodically send a keep-alive message every 15 minutes to maintain the connection.  If the client fails to establish a TCP Connection, notification agent will try the HTTP protocol.

2)  Notification server on the management point computer will accept the client’s connection request   after TLS (Transport Layer Security) authentication is passed.  Thus notification server will manage all active connections and generate online status data every 5 minutes to be placed in <Site Server Install Dir>inboxesbgb.box.

3)  Notification manager will read the Online files (*.BOS) from bgb.box, and update the online presence info in the site database.

4)  When an administrator initiates a supported client operation from the Configuration Manager console, that action will be translated into a client notification message and placed into the database service broker queue.

5)  Notification server will detect the message request and get the message from the service broker queue and then push the message to online clients over the persistent channel.

6)  Upon receiving the message over the channel, notification agent will perform the corresponding action based on the message content: either notify the Endpoint Protection client to perform an action (e.g. quick scan), or notify the client to request machine policy as soon as possible. The notification result will be sent back to notification server.

7)  Notification server summarizes the task push results periodically and exports them into files to be placed in <Site Server Install Dir>inboxesbgb.box.

8)  Notification manager processes the task push result files (*.BTS) and updates the site database.

Note: While this has been an attempt to provide interested administrators with more information about how the client notification channel works, this article contains many implementation details (like timeout lengths) that are subject to change in future releases of System Center Configuration Manager.

 

How to use “Client Notification”

  1. Configure the client notification port.

    By default, client notification communication uses TCP port 10123. In the Configuration Manager console, click Administration, Expand Site Configuration, click Sites, open Properties dialog, from here you can configure the TCP port value in the Ports tab. You might have to configure the firewall on the management point, clients, and any intervening firewalls to allow communication over this new port. However, client notification can fall back to using HTTP and HTTPS.

    wKioL1k2ZTey51YHAADmTxZGu4Y911.jpg

  2. Notify Endpoint Protection Agent to perform action as soon as possible. 

    Among Endpoint Protection operations, Full Scan and Quick Scan are one-time operations, and therefore only depend on the client notification channel. Other operations will go through both the client notification channel as well as the traditional normal policy channel. From a client notification perspective, the validity period for a task is one hour. For example, if the clients are offline after task gets triggered, the initial push will fail. If the client gets online within one hour of the task push, then notification server will re-push the task to clients. If client gets online in more than 1 hour, the task will not be pushed as it will have expired.

    wKioL1k2ZVjhl50RAACU7_enMRE096.jpg

  3. Notify clients to download computer policy right now. 
    Download Computer Policy is a newly added client operation in Configuration Manager SP1. It can notify the selected clients or collection to download computer policy as soon as possible outside the configured client policy polling interval. In the Configuration Manager console, click Assets and Compliance, in the Assets and Compliance workspace, click in the Collections group, select the device collection containing the computers that you want to download, in the Home tab, in the Collections group, click Client Notification and then click Download Computer Policy.  When you perform this client operation on a collection, all online clients within the hierarchy belonging to this collection will be notified. You can also notify multiple computers specifically instead of the whole collection to download policy as soon as possible.

    wKioL1k2ZX7BsA_kAACGqfxo40s600.jpg

    There is also a confirmation dialog that pops up to inform you of the estimated number of online clients.

    wKioL1k2ZbuBj388AABkOgNWdC0679.jpg

    The client will request policy from the management point as soon as possible as shown in the figure below:

    wKiom1k2ZeKx65bxAAGfyeJvu3U107.jpg

  4. Monitor Client Operation Status. 
    You can monitor the client operation status in the Client Operations node in the Monitoring workspace. If the task is successfully delivered to clients, it will be counted in the Success column.

    wKioL1k2Zg2jp58IAAEi7rL3Fgo982.jpg

Troubleshooting Tips

  1. Notification manager and notification server provide rich status messages that can help you monitor client notification tasks. In the Configuration Manager console, click Monitoring, expand System Status, click Component Status, select SMS_NOTIFICATION_SERVER or SMS_NOTIFICATION_MANAGER, and then click Show Messages to see status messages for this component.

    wKioL1k2Zlbj5ILDAAJ7eJd_vpo225.jpg

  2. You can also use the following log files to help you  troubleshoot client notification problems. 

    Component

    Log

    Notification Manager

    <smssiteserver setup dir>logsbgbmgr.log

    Notification Server

    <mp setup dir>logsBGBServer.log

    <sms_ccm dir or client setup dir>logsBgbHttpProxy.log


    For installation issues:

    <mp setup dir>logsBgbSetup.log

    <mp setup dir>logsbgbisapiMSI.log

    Notification Agent

    <client setup dir>logsCcmNotificationAgent.log


原文地址:https://blogs.technet.microsoft.com/enterprisemobility/2012/09/27/fast-channel-for-system-management-client-notification-in-system-center-2012-configuration-manager-sp1/


本文转自 lorysun 51CTO博客,原文链接:http://blog.51cto.com/lorysun/1932852

相关文章
|
10月前
|
机器学习/深度学习 人工智能 API
上新!支持100万Tokens上下文的Qwen2.5-1M 开源模型来了
上新!支持100万Tokens上下文的Qwen2.5-1M 开源模型来了
|
NoSQL IDE 开发工具
**《惊爆!揭开函数调用关系图的神秘面纱,让你的代码世界天翻地覆!》**
【8月更文挑战第16天】函数调用关系图是软件开发中的重要工具,帮助直观理解程序结构与逻辑流程,有效进行代码优化、调试及复杂系统理解。可通过静态分析工具(如SourceMonitor)在不运行代码情况下构建调用图,或利用动态跟踪(如GDB、Python的`sys.settrace`)在运行时记录调用顺序。集成开发环境(IDE)如Visual Studio亦提供相关功能。不同方法各有优势,可根据需求灵活选择。
609 4
|
存储 关系型数据库 MySQL
MySQL 中单表数据的最大行数应该控制在多少?
MySQL 中单表数据的最大行数应该控制在多少?
3567 1
MySQL 中单表数据的最大行数应该控制在多少?
|
边缘计算 运维 Cloud Native
阿里云基于云原生的大规模云边协同关键技术及应用荣获浙江省科学技术进步一等奖
11月22日, 2023年度浙江省科学技术奖获奖成果公布,阿里云与浙江大学、支付宝、谐云科技联合完成的基于云原生的大规模云边协同关键技术及应用获得浙江省科学技术进步一等奖。
|
SQL Oracle 关系型数据库
SQL如何添加字段记录:详细步骤与技巧
在数据库管理中,经常需要向已有的表中添加新的字段(列)或向表中插入新的记录
3156 5
|
SQL 关系型数据库 MySQL
Python小技巧——将CSV文件导入到MySQL数据库
Python小技巧——将CSV文件导入到MySQL数据库
626 0
|
缓存 NoSQL 关系型数据库
秒杀项目实战:遇到的问题及解决方案分享
构建了一个基于Springboot2的秒杀系统。项目利用K8S上的主从结构部署Redis和MySQL,通过Traefik作为网关。RabbitMQ在本地虚拟机的docker环境中,用Prometheus+Grafana监控。设计思路包括隐藏秒杀地址以防止脚本攻击,使用Lua脚本保证库存预扣原子性,但初期版本未处理重复订单校验。为防止MQ故障,将订单信息先保存到Redis,再通过脚本发送到MQ。采用分布式锁防止用户重复下单和缓存击穿问题,使用编程式事务确保库存扣减与订单保存一致性。项目通过JMeter测试,观察性能并分析Redis和RabbitMQ的使用情况。完整代码可在GitHub找到。
387 1
秒杀项目实战:遇到的问题及解决方案分享
|
人工智能 Go
go slice 扩容实现
go slice 扩容实现
173 3
|
存储 Java
JAVA中String长度限制解决超出字符长度
JAVA中String长度限制解决超出字符长度
428 1
|
算法 Java
「译文」Java 垃圾收集参考手册(五):Parallel GC
「译文」Java 垃圾收集参考手册(五):Parallel GC