locked
Set busy on busy option not on Front End server RRS feed

  • Question

  • Hi,

    is there a way to use the Set-CsBusyOptions cmdlet on a different computer then a Front End pool server? I understand that the cmdlet accesses the local databases on the front end to do it's job but for automation (scripting) purposes it would be very convenient to use the cmdlet on a machine that only hast the SfB Powershell cmdlets installed.

    thanks,

    Matthias 

    Thursday, December 14, 2017 10:16 AM

Answers

  • Hi,

    I have done some testing and the following works.

    On my 'management server', the SfB admin tools are already installed.

    Trusted Application Pool:

    First I need to define a Trusted Application Pool:

    New-CsTrustedApplicationPool -Identity adminhost1.x500.co.uk -Registrar fepool1.x500.co.uk -ThrottleAsServer $True -TreatAsAuthenticated $True -OutboundOnly $False -RequiresReplication $True -ComputerFqdn adminhost1.x500.co.uk -Site 1

    adminhost1.x500.co.uk = the name of my 'management server'

    fepool1.x500.co.uk = my FE pool

    -Site 1 - Site ID of my Primary Site (check Get-CsSite if you're not sure)

    Enable-CsTopology

    Deployment Wizard

    On the 'management server', run the SfB Server Deployment Wizard.

    Go through each of the following steps.

    Step 1: Install Local Configuration Store

    Step 2: Setup or Remote Skype for Business Server Components

    Step 3: Request, Install or Assign Certificates

    Request a certificate from an Internal CA, this needs to be the FQDN of the server, and the same as what was defined in the topology when creating a new Trusted Application Pool.

    Once complete, Get & Set-CsBusyOptions are successful. 

    • Marked as answer by bilberry79 Friday, January 19, 2018 1:12 PM
    Friday, December 15, 2017 4:27 PM

All replies

  • Hi Bilberry,

    You can install the tools from the iso of Skype for Business. Start the (deployment) wizard and then install administrative tools.

    Greetings,

    Erdem


    Please mark as helpful if you find my contribution useful or as an answer if it does answer your question. That will encourage me - and others - to take time out to help you.

    Thursday, December 14, 2017 11:53 AM
  • Hi Erdem,

    it's not about installing the SfB cmdlets on a computer. That's not the issue. The problem is the Set-CsBusyOption cmdlet doesn't work if you don't invoke it directly on a Front End server.

    best,

    Matthias

    Thursday, December 14, 2017 12:51 PM
  • Hi Matthias,

    I have tested it i can do it from a other server not a front end with just the tools installed: 

    Set-CsBusyOptions sip:user@contoso.com -ActionType BusyOnBusy

    What kind of error do you get?

    Greetings,

    Erdem


    Please mark as helpful if you find my contribution useful or as an answer if it does answer your question. That will encourage me - and others - to take time out to help you.

    Thursday, December 14, 2017 1:58 PM
  • Hi Erdem,

    it's an SQL exception. Here it is:

    Get-CsBusyOptions : A network-related or instance-specific error occurred while establishing a connection to SQL
    Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server
    is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating
    Server/Instance Specified)

    I've already tried opening port 1433 on one of the front end server without success.

    is your other server joined to the SfB Topology?

    best,

    Matthias

    Thursday, December 14, 2017 2:18 PM
  • Hi Matthias,

    I have tested on a different machine without the RTCLOCAL instance installed get the same error. Seems trying to connect locally to the RTCLOCAL Instance. Both server are Trusted application server that i have tested. 1 of them without the rtclocal do not have replication and the other one that is working with the rtclocal instance have replica turned on.

    Maybe it is best to add a trusted application server for your scripts or do remote powershell to the FE server. 

    I am going to ask to my Microsoft contact about this situation maybe it is a bug :)

    Greetings,

    Erdem


    Please mark as helpful if you find my contribution useful or as an answer if it does answer your question. That will encourage me - and others - to take time out to help you.

    Thursday, December 14, 2017 9:40 PM
  • Hi Erdam,

    just to make sure I get you right. The one machine with the RTCLOCAL on it is joined to the SfB topology in the topology builder and the other one is not? But both are a trusted application server?

    I already tried remote powershell. Not all cmdlets work in a remote powershell and the Set-CsBusyOptions is one of it.

    best,

    Matthias

    Friday, December 15, 2017 7:02 AM
  • Correct,

    They are both added in SFB Topology builder

    Greetings,

    Erdem


    Please mark as helpful if you find my contribution useful or as an answer if it does answer your question. That will encourage me - and others - to take time out to help you.

    Friday, December 15, 2017 10:39 AM
  • Hi,

    I have this issue on a customer site, who use Secure Admin Hosts to access the SfB Server Control Panel & SfB Server Management Shell.  The Management Servers have the Admin tools installed on them, but IT staff are unable to run Get-CsBusyOptions or Set-CsBusyOptions, getting the same error as Matthias:

    Get-CsBusyOptions : A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name
    is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)

    This works fine from the Front End Servers, Mediation Servers, and a server where I have a core installation of SfB Server and the Admin Tools.

    It does not work from a server where I have the admin tools installed, and defined as a Trusted Application Computer.

    I have come to the conclusion it will only work from a server that is defined in the topology (i.e. Core Server as a minimum, with Admin tools), or by PowerShell remote connection to a SfB Server, but this goes against RBAC policies.

    Friday, December 15, 2017 11:11 AM
  • Hi Steve,

    I have 2 servers both core components installed and admin tools, but only one of them has rtclocal instance installed and replica running. The one without the the rtclocal instance cannot run the commands.

    Greetings,

    Erdem


    Please mark as helpful if you find my contribution useful or as an answer if it does answer your question. That will encourage me - and others - to take time out to help you.

    Friday, December 15, 2017 11:14 AM
  • Hi Erdem,

    Yeah, agreed, if RTCLOCAL replica is there and running, Get & Set-CsBusyOptions are successful.  Without that it fails.

    Thanks
    Steve

    Friday, December 15, 2017 11:21 AM
  • ok good. So we pinpointed the issue. Now the question are:

    1. Is there a way to make the cmdlet work without the RTClocal installled. 

    2. How difficult is it to get the RTClocal on a machine that is a special SfB server like a Front End, Edge...

    Friday, December 15, 2017 12:37 PM
  • Hi,

    I don't know of a way to make the cmdlet work on a machine that doesn't have RTClocal installed.

    It's easy to install SfB Server 2015 core files, as part of this the RTClocal database will automatically be installed (along with SQL Express).

    On the 'management server', as administrator, run D:\Setup.exe /BootstrapLocalMgmt, where D:\Setup.exe is the path to the SfB Server setup files.

    My issue with this approach in an enterprise, where multiple management servers are being used, is I don't really want to have some many additional machines replicating RTClocal and defined in the topology.

    Friday, December 15, 2017 12:53 PM
  • Hi,

    thanks for the suggestion. I will test it. But do I also need to add this new machine to the SfB topology or can I skup that?

    Friday, December 15, 2017 1:16 PM
  • Hi,

    I have done some testing and the following works.

    On my 'management server', the SfB admin tools are already installed.

    Trusted Application Pool:

    First I need to define a Trusted Application Pool:

    New-CsTrustedApplicationPool -Identity adminhost1.x500.co.uk -Registrar fepool1.x500.co.uk -ThrottleAsServer $True -TreatAsAuthenticated $True -OutboundOnly $False -RequiresReplication $True -ComputerFqdn adminhost1.x500.co.uk -Site 1

    adminhost1.x500.co.uk = the name of my 'management server'

    fepool1.x500.co.uk = my FE pool

    -Site 1 - Site ID of my Primary Site (check Get-CsSite if you're not sure)

    Enable-CsTopology

    Deployment Wizard

    On the 'management server', run the SfB Server Deployment Wizard.

    Go through each of the following steps.

    Step 1: Install Local Configuration Store

    Step 2: Setup or Remote Skype for Business Server Components

    Step 3: Request, Install or Assign Certificates

    Request a certificate from an Internal CA, this needs to be the FQDN of the server, and the same as what was defined in the topology when creating a new Trusted Application Pool.

    Once complete, Get & Set-CsBusyOptions are successful. 

    • Marked as answer by bilberry79 Friday, January 19, 2018 1:12 PM
    Friday, December 15, 2017 4:27 PM
  • Hi,

    thanks for the suggestion. I will test it. But do I also need to add this new machine to the SfB topology or can I skup that?

    I agree with Steve,

    You need to add it to the topology or you cannot install the instance :)

    Greetings,

    Erdem


    Please mark as helpful if you find my contribution useful or as an answer if it does answer your question. That will encourage me - and others - to take time out to help you.

    Monday, December 18, 2017 7:21 AM
  • Hi, yes you need to create the Trusted Application Pool, publish the toplogy, then run through the Skype for Business Deployment Wizard (steps 1 to 3 in my earlier post).

    I originally thought it may be possible to do a Core only installation (/BootstrapLocalMgmt), however this gets a RTCLOCAL database onto the server, but then you run into a whole lot of more issues.  Best approach is as above.

    Thanks
    Steve

    Monday, December 18, 2017 8:30 AM
  • Hi ,

    Did you have a test that add this new machine to the SFB topology?


    Regards,

    Leon Lu


    Please remember to mark the replies as answers if they helped.
    If you have feedback for TechNet Subscriber Support, contact tnsf@microsoft.com.

    Friday, December 29, 2017 8:04 AM
  • Are there any update for this issue, if the reply is helpful to you, please try to mark it as an answer, it will help others who has similar issue.


    Regards,

    Leon Lu


    Please remember to mark the replies as answers if they helped. If you have feedback for TechNet Subscriber Support, contact tnsf@microsoft.com.

    Click here to learn more. Visit the dedicated forum to share, explore and talk to experts about Microsoft Teams.

    Tuesday, January 2, 2018 7:10 AM
  • Hi,

    i tried to create a trusted application pool and run the deployment wizard etc. but when I try to run the get-csbusyoptions cmdlet I get:

    Get-CsBusyOptions : Failed to listen on any address and port supplied.
    At line:1 char:1
    + Get-CsBusyOptions user@sipdomain.net
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : NotSpecified: (:) [Get-CsBusyOptions], ConnectionFailureException
        + FullyQualifiedErrorId : Microsoft.Rtc.Signaling.ConnectionFailureException,Microsoft.Rtc.Management.Bob.Cmdlets.
       BobGetConfigurationCmdlet

    does anybody have an idea?

    best,

    Matthias

    Monday, January 15, 2018 1:57 PM
  • Hi Matthias,

    Did you enable replication in the topology builder for the trusted application pool ?

    Greetings,

    Erdem


    Please mark as helpful if you find my contribution useful or as an answer if it does answer your question. That will encourage me - and others - to take time out to help you.

    Monday, January 15, 2018 2:02 PM
  • Hi Erdem,

    yes I did.

    Monday, January 15, 2018 2:25 PM
  • another strange thing is. When I open a Powershell the get-csbusyoption isn't available at first when I try to invoke it. I need to invoke Get-CsTrustedApplicationPool first. After that the Get-CsBusyOption cmdlet is recognized by powershell, but still throws this error message
    Monday, January 15, 2018 2:30 PM
  • if you do get-csmanagementstorereplicationstatus is the trusted application server in sync ?

    Greetings,

    Erdem


    Please mark as helpful if you find my contribution useful or as an answer if it does answer your question. That will encourage me - and others - to take time out to help you.

    Monday, January 15, 2018 4:18 PM
  • seems like it. Get-CsManagementStoreReplicationStatus gets my 3 front end server and the machine I'm trying to get the busy-on-busy options running. All say UpToDate: true
    Tuesday, January 16, 2018 6:57 AM
  • I believe I know where this error comes from:

    Get-CsBusyOptions : Failed to listen on any address and port supplied.

    I was logged on as a user with ShadowPrincipals. Seems like SfB (and Exchange) isn't quite ready for that.

    I'm logged on with a 'normal' user from the same domain now and I get a different error:

    Get-CsBusyOptions : Cannot open database "xds" requested by the login. The login failed.

    The user is in the following groups Domain Admins, Enterprise Admins,  RTCUniversalReadOnlyAdmins, RTCUniversalUserAdmins, RTCUniversalServerAdmins and CSAdministrator

    Also the user is db_owner of the xds db on the SQL server.

    Wednesday, January 17, 2018 11:21 AM
  • Does anybody has an idea what might be wrong here? thanks a lot
    Thursday, January 18, 2018 7:14 AM
  • Can you verify if rtclocal is created on the server (check services and then sql server)

    Greetings,

    Erdem


    Please mark as helpful if you find my contribution useful or as an answer if it does answer your question. That will encourage me - and others - to take time out to help you.

    Thursday, January 18, 2018 12:57 PM
  • Hi,

    rtclocal is created on the server. There is one database in it called xds. the service MSSQL$RTCLOCAL is running.

    Thursday, January 18, 2018 1:51 PM
  • Problem is still not solved but made a little progress. The domain I'm testing this is a IPv6 only domain. I enabled IPv4 on the server again and now I get a different error message :)

    Get-CsBusyOptions : Unknown error (0x80131500)
    At line:1 char:1
    + Get-CsBusyOptions user@domain.net
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : NotSpecified: (:) [Get-CsBusyOptions], TlsFailureException
        + FullyQualifiedErrorId : Microsoft.Rtc.Signaling.TlsFailureException,Microsoft.Rtc.Management.Bob.Cmdlets.BobGetC
       onfigurationCmdlet

    does anyone have an idea?

    Friday, January 19, 2018 12:45 PM
  • I found a solution but I'm not sure why it works now. I'm using two different accounts for administering the server. One account uses shadow principals and is homed in a different domain the other account is homed in the local domain. It seems like that only the account from the other domain is capable of invoking the get-csbusyoptions cmdlet. I'm not sure why. Oh, and it has to be an elevated powershell of course.

    best and thanks a lot for your help

    Matthias

     
    Friday, January 19, 2018 1:12 PM
  • Hi,

    Yes elevated powershell is mostly needed, it is really weird why the database is needed to make a connection to the SQL server.

    Greetings,

    Erdem


    Please mark as helpful if you find my contribution useful or as an answer if it does answer your question. That will encourage me - and others - to take time out to help you.

    Friday, January 19, 2018 4:10 PM