zoukankan      html  css  js  c++  java
  • HOW TO:手工删除OCS在AD中的池和其他属性

    …is not a good idea.  In a production deployment a second server should be built using the desired server name, and then all OCS users moved over to it.  Or a temporary staging server can be stood up in order to rebuild the original server.  Either way, simply renaming an Office Communications Standard Server 2007 can be painful.

     

    Shortly after deploying a standard server in my lab I noticed during server configuration that I had fat-fingered the server's hostname and was not to happy about that. I decided to see what would happen if I just renamed the server without any preparation in OCS.  After renaming my virtual guest from JDSSOCS01 to JDSOCS01 I was welcomed with a standard Windows startup message alerting me to a service failure.

     

    A quick scan of the Application event log uncovers event ID 12291 explaining that "the Communications service is registered for a different machine."  Microsoft Knowledgebase Article ID 830535 covers this error, but in reference to LCS 2003, and states that changing the FQDN of a Live Communications Server is not supported.  So it doesn't appear to be supported in OCS 2007 either.

     

    The article's resolution suggests exporting the RTC SQL database to a file, removing the OCS services, and re-installing the product.  Because I had already renamed the server I was unable to deactivate the pool/server using the previous name and was presented with a couple warnings during the uninstall that some configuration information will be left in the Active Directory domain; I took note of this for later troubleshooting. I also completely removed the SQL 2005 Express components in order to wipe the OCS install from the server.

     

    During reinstallation of the OCS Standard Server the setup wizard reported a failure and viewing the install log showed that the server could not be activated for a pool due to a conflict. At this point I decided to just delete the VM and rebuild the server from a fresh image as deploying a clean lab environment was my overall goal.  Before creating a new server with the desired server name of JDSOCS01 I went to delete the existing computer object in Active Directory, but oddly enough I was warned that deletion of that object would result in all child objects also being removed from AD.  I checked out the existing computer object using ADSIedit and apparently the OCS installation inserts additional objects under the server:

     

     

    I deleted the computer object and imaged a new virtual guest using the correct server name.  This time the OCS Standard Server installation completed successfully, but  I received another error after validating the front-end server configuration:

     

    Failure: [0xC3FC200D] One or more errors were detected

     Diagnose Server

       Check Configuration

          Checking all trusted servers

             Internal Server JDSSOCS01.lab.schertz.local

    DNS Resolution failure: No such host is known

    Suggested Resolution: Make sure there are no typos in the Server name. Make sure that the Server name is published in the DNS (A or SRV record) or hosts file entry is configured correctly.

     

    This is the part where I spent some time digging through AD looking for where the old server name was hiding.   After running some LDAP queries using the string *pool* I discovered where OCS stores it's configuration data in AD:

     

    CN=RTC Service,CN=Microsoft,CN=System.DC=domain,DC=com

     

    I located and deleted the Pool object for the old server:

     

    CN=JDSSOCS01,CN=Pools,CN=RTC Service,CN=Microsoft,CN=System,DC=schertz,DC=local

     

     

    But that didn't resolve the validation errors after rebooting the OCS server.  I dug deeper and found both the old and new server FQDNs referenced in multiple objects under Global Settings, MCU Factories, Trusted MCUs, and Trusted WebComponentsServers.  Using the command ldifde -f output.txt -d "dc=schertz,dc=local" is was able to search the text export file for all the objects with attributes referring to "jdssocs01":

     

    CN=Global Settings,CN=RTC Service,CN=Microsoft,CN=System.DC=schertz,DC=local

     

    DN:  CN={DB1226B0-B04E-494F-BF44-6C365A2A4CF1}

    objectCategory:  CN=ms-RTC-SIP-TrustedServer

    msRTCSIP-TrustedServerFQDN:  JDSSOCS01.schertz.local

     

    CN=MCU Factories,CN=RTC Service,CN=Microsoft,CN=System.DC=schertz,DC=local

     

    DN:  CN={0AAB2557-E5AA-4229-8F43-600554BAE453}

    objectCategory:  CN=ms-RTC-SIP-MCUFactoryService,CN=Schema,CN=Configuration,DC=schertz,DC=local

    msRTCSIP-MCUFactoryData:  FactoryURL=https://JDSSOCS01.schertz.local:444/LiveServer/MCUFactory/

     

    DN:  CN={55753891-89EA-4F18-B020-5FA5928BE97F}

    objectCategory:  CN=ms-RTC-SIP-MCUFactoryService,CN=Schema,CN=Configuration,DC=schertz,DC=local

    msRTCSIP-MCUFactoryData:  FactoryURL=https://JDSSOCS01.schertz.local:444/LiveServer/MCUFactory/

     

    DN:  CN={56B7C1C4-1961-461A-B40F-3ABB3C62BE31}

    objectCategory:  CN=ms-RTC-SIP-MCUFactoryService,CN=Schema,CN=Configuration,DC=schertz,DC=local

    msRTCSIP-MCUFactoryData:  FactoryURL=https://JDSSOCS01.schertz.local:444/LiveServer/MCUFactory/

     

    DN:  CN={E1F6A173-E15D-427A-8E2A-87DD1CAAD947}

    objectCategory:  CN=ms-RTC-SIP-MCUFactoryService,CN=Schema,CN=Configuration,DC=schertz,DC=local

    msRTCSIP-MCUFactoryData:  FactoryURL=https://JDSSOCS01.schertz.local:444/LiveServer/MCUFactory/

     

     

    CN=Trusted MCUs,CN=RTC Service,CN=Microsoft,CN=System.DC=schertz,DC=local

     

    DN:  CN={459B434F-3099-4049-8A2E-56D0524AFAD4}

    objectCategory:  CN=ms-RTC-SIP-TrustedMCU,CN=Schema,CN=Configuration,DC=schertz,DC=local

    msRTCSIP-TrustedMCUFQDN:  JDSSOCS01.schertz.local

     

    DN:  CN={51D7A033-A074-4285-9589-FB78AAB6A460}

    objectCategory:  CN=ms-RTC-SIP-TrustedMCU,CN=Schema,CN=Configuration,DC=schertz,DC=local

    msRTCSIP-TrustedMCUFQDN:  JDSSOCS01.schertz.local

     

    DN:  CN={9DE8BC35-D15A-4F8F-8BCD-A819014420F0}

    objectCategory:  CN=ms-RTC-SIP-TrustedMCU,CN=Schema,CN=Configuration,DC=schertz,DC=local

    msRTCSIP-TrustedMCUFQDN:  JDSSOCS01.schertz.local

     

    DN:  CN={C5677C4C-7BE6-484D-9CD4-878F1F8427BE}

    objectCategory:  CN=ms-RTC-SIP-TrustedMCU,CN=Schema,CN=Configuration,DC=schertz,DC=local

    msRTCSIP-TrustedMCUFQDN:  JDSSOCS01.schertz.local

     

     

    CN=Trusted WebComponentsServers,CN=RTC Service,CN=Microsoft,CN=System.DC=schertz,DC=local

     

    DN:  CN={93A1A739-3B44-4F0B-935A-170EAAA63026}

    objectCategory:  CN=ms-RTC-SIP-TrustedWebComponentsServer

    msRTCSIP-TrustedWebComponentsServerFQDN:  JDSSOCS01.schertz.local

     

    I deleted all objects above and then removed the invalid ServicePrincipalName entries from the RTCService and RTCComponentService user accounts.

     

     

    I forced AD replication between both domain controllers and rebooted the OCS server, and the validation check no longer reports any failures.

  • 相关阅读:
    Java的家庭记账本程序(K)
    构建之法阅读笔记01
    Java的家庭记账本程序(J)
    iOS-CALayer实现简单进度条
    iOS-CALayer
    iOS-CAEmitterLayer(粒子效果)
    iOS-OpenGLES 简单渲染
    iOS-CoreImage简单使用
    iOS富文本-NSAttributedString简单封装
    iOS后台运行
  • 原文地址:https://www.cnblogs.com/kksip/p/1232364.html
Copyright © 2011-2022 走看看