Archive for the ‘Windows Clustering’ Category

Windows 2008R2 MSTDC Clustering how hard can it be. Linked SQL Servers

The DTC option is a simple feature just turn it on and it works eh yeh sometimes. but in advanced environments you need often some tweaks and how to’s

The following errors are common on misconfiguration on the SQL Cluster / MSDTC source

MSDTC encountered an error (HR=0x80000171)  Or if you are using linked SQL servers If the MSDTC is not working most of them solve the error with code, actually it is a misconfiguration of the MSDTC How to solve this error ?

OLE DB provider "SQLNCLI10" for linked server "SQL instance name" returned message "Cannot start more transactions on this session.".

Unable to start a nested transaction for OLE DB provider "SQLNCLI10" for linked server "SQL instance name". A nested transaction was required because the XACT_ABORT option was set to OFF.

Or error 7391

Well here is a little tip on how to solve this.

 

OLE DB provider "SQLNCLI10" for linked server "SQL instance name" returned message "Cannot start more transactions on this session 

Typical MSDTC cluster resource , But in the resource kit there is a little tool that is named SUBINACL

SubInACL is a command-line tool that enables administrators to obtain security information about files, registry keys, and services, and transfer this information from user to user, from local or global group to group, and from domain to domain. For example, if a user has moved from one domain (DomainA) to another (DomainB), the administrator can replace DomainAUser with DomainBUser in the security information for the user’s files. This gives the user access to the same files from the new domain.
SubInACL enables administrators to do the following:

  • Display security information associated with files, registry keys, or services. This information includes owner, group, permission access control list (ACL), discretionary ACL (DACL), and system ACL (SACL).
  • Change the owner of an object.
  • Replace the security information for one identifier (account, group, well-known security identifier (SID)) with that of another identifier.
  • Migrate security information about objects. This is useful if you have reorganized a network’s domains and need to migrate the security information for files from one domain to another.

This update addresses the following issues:

  • Fixed bug where subinacl.exe failed to process command line arguments
  • Fixed bug where subinacl.exe failed to function correctly with cluster file shares

 

So now that we have the tool let us use this filling in the following command

subinacl /service msdtc /grand=”network services”=qsetil

OLE DB provider "SQLNCLI10" for linked server "SQL instance name" returned message "Cannot start more transactions on this session 

Access denied ! , I am an Admin the CMD is a Admin why the syntax is correct .

Yes all above is ok except the MSDTC part it is a clusterd so you need to use the cluster part.

OLE DB provider "SQLNCLI10" for linked server "SQL instance name" returned message "Cannot start more transactions on this session

Ok and now with the Clustered DTC Winking smile 

OLE DB provider "SQLNCLI10" for linked server "SQL instance name" returned message "Cannot start more transactions on this session

Ok done now the error below is gone.

OLE DB provider "SQLNCLI10" for linked server "SQL instance name" returned message "Cannot start more transactions on this session.".

Unable to start a nested transaction for OLE DB provider "SQLNCLI10" for linked server "SQL instance name". A nested transaction was required because the XACT_ABORT option was set to OFF.

Msg 7395, Level 16, State 2, Line 3

But what about the XACT_ABORT option was set to OFF and the error 7391 ?

Yes easy to solve turn it on.

  • Start the Distributed Transaction Coordinator (DTC or MSDTC) on all servers that are involved in the distributed transaction.
  • Issue this statement before you run your query:

    The XACT_ABORT option must be set to ON for data modification statements in an implicit or explicit transaction against most OLE DB providers, including SQL Server. This option is not required if the provider supports nested transactions.

  • Check whether any of the servers are on a cluster. The DTC on the cluster must have its own IP address. You must verify proper name resolution of the DTC service on each server. The IP address of the DTC must be defined in your name resolution system (such as WINS, DNS or LMHosts). Verify that each server can communicate with the other’s MSDTC by name, not just by IP address. Check in both directions. For example, check from server A to server B’s MSDTC, and then check from server B to server A’s MSDTC. You must resolve all name resolution problems on the network before you run your distributed query.

 

Below is a little example of how to test your transactions just change your servername [SQL instance name].

 

BEGIN TRAN

UPDATE [SQL instance name].test_DTC.dbo.Table1

SET Field1 = ‘MSDTC is a pain if it is not working but now it is working like a charm’

Where Field1 = ‘Second';

COMMIT TRAN

SET XACT_ABORT OFF

SET XACT_ABORT ON

Select * from [SQL instance name].test_DTC.dbo.Table1

 

OLE DB provider "SQLNCLI10" for linked server "SQL instance name" returned message "Cannot start more transactions on this session

Posted September 27, 2011 by Robert Smit in MSDTC, SQL, Windows Clustering

Tagged with ,

production network card is not the first bound network card

Often when you do a validation health check the first nic is not the first nic and you did check it in the network options. There is a way to change this or to checkit.

You can change it in the advanced settings with the up down arrow.

image

OR

Do this with WMI

Open a admin Command prompt in the search/run  type CMD and instead of hitting the Enter key, use Ctrl+Shift + Enter this opens the Admin CMD.

Now Run :

wmic nicconfig get description, SettingID > C:nicguidconfig.txt

Lookup the nicguidconfig.txt

It looks like this :

 

Description                                  SettingID                              
WAN Miniport (SSTP)                          {E28D896F-9EA8-433A-9C10-66C97C19A921} 
WAN Miniport (IKEv2)                         {DEA99649-B5BF-4318-B16E-A36317939C93} 
WAN Miniport (L2TP)                          {483C9FF8-503D-414B-B402-E4C1F1F568CB} 
WAN Miniport (PPTP)                          {C0DE3E38-8BA7-479F-8B75-833F294C5AA8} 
WAN Miniport (PPPOE)                         {DB2B4279-B5CF-4626-9DBA-32D0ECE44C87} 
WAN Miniport (IPv6)                          {F3229805-869E-479E-BA76-DD643F1D1B80} 
WAN Miniport (Network Monitor)               {72DD97A9-E544-4915-88D8-44E829C34F68} 
Intel(R) 82566MM Gigabit Network Connection  {39F6A82E-D18C-4642-A721-61BB49CC894B} 
WAN Miniport (IP)                            {7C5653F0-144A-4534-9E34-28AC99CBA85E} 
Broadcom 802.11 Multiband-netwerkadapter     {C4A5D563-B776-40BB-BA44-FF01E000D37B} 
RAS Async Adapter                            {E2F8A220-AF88-446C-9A55-453E58DD3A33} 
Microsoft ISATAP Adapter                     {D70E80B8-8684-4391-AAE8-F7104BBD5749} 
Microsoft ISATAP Adapter                     {5EAB7E38-392E-42DD-AF36-3540D3265724} 
Bluetooth-apparaat (Personal Area Network)   {EBFF2180-B91D-409C-B983-3DD788A7F3BC} 
Microsoft ISATAP Adapter                     {A0E7C614-5C66-4A1F-8C5E-E41F81C0A5C2} 
Microsoft 6to4 Adapter                       {4749EF9C-66DA-499B-BA8D-43AA8D76422A} 

 

Now that we have the Guid we go to the Register and look it up :

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesTcpipLinkageBind

image

Open the Bind

image

 

Cut and paste GUID’s so that production network card (or NIC team) is at the top of the list.

Save key and confirm binding is correct via ipconfig /all

image

 

Your Done

Deploying Remote Desktop Connection Broker with High Availability

 

This guide is intended for IT professionals, and tells how to configure Remote Desktop Connection Broker in a failover cluster. The configuration provides users with access to personal virtual desktops or virtual machines in a virtual desktop pool through RemoteApp and Desktop Connection

A failover cluster is a group of independent computers that work together to increase the availability of applications and services. The clustered servers (called nodes) are connected by physical cables and by software. If one of the cluster nodes fails, another node begins to provide service (a process known as failover). Users experience a minimum of disruptions in service. This guide describes the steps for configuring Remote Desktop Connection Broker (RD Connection Broker) in a failover cluster, as part of a configuration that provides users with access to personal virtual desktops or virtual machines in a virtual desktop pool through RemoteApp and Desktop Connection. As you work with the configuration in this guide, you can also learn about failover clusters and familiarize yourself with the Failover Cluster Manager snap-in in Windows Server 2008 R2 Enterprise or Windows Server 2008 R2 Datacenter.

Deploying Remote Desktop Connection Broker with High Availability  click here: Start download

Failover of clustered RD Connection Broker

clip_image001                                                            

 

 

 

 

Servers providing a virtual desktop

clip_image001[4]

1. The user requests a connection to a virtual desktop, either a personal virtual desktop or one from a virtual desktop pool.

2. The RD Gateway receives the request.

3. The RD Gateway sends the request to a virtual machine redirector (that is, RD Session Host running in virtual machine redirection mode). The virtual machine redirector informs RD Connection Broker, and then waits for the IP address of a virtual machine.

4. RD Connection Broker requests information about a virtual machine from the RD Virtualization Host.

5. RD Connection Broker receives information about a virtual machine and then provides that information to the virtual machine redirector.

6. The virtual machine redirector communicates through the RD Gateway, providing the client with the IP address and connection information for a virtual desktop.

7. The client connects to a virtual desktop.

8. The virtual desktop is displayed on the client.

The following illustration shows the same sequence of events occurring despite the failure of one node of the cluster. Because a second cluster node is still running, it can respond to client requests as they occur.

Figure 3   Servers providing a virtual desktop after a failure

clip_image001[8]

Cluster Screen Shots

 

clip_image001[10]clip_image002clip_image002[4]

 

RDP Connection Options

clip_image001[12]

 

Additional Links

· Remote Desktop Services (http://go.microsoft.com/fwlink/?LinkId=154440)

· What’s New in Remote Desktop Services (http://go.microsoft.com/fwlink/?LinkId=185916)

· Install the RD Session Host Role Service (http://go.microsoft.com/fwlink/?LinkId=185917)

· About Dedicated Farm Redirection and Virtual Machine Redirection (http://go.microsoft.com/fwlink/?LinkId=185918)

· Remote Desktop Connection Broker (http://go.microsoft.com/fwlink/?LinkId=185919)

· Verify Connection broker cluster configuration (http://go.microsoft.com/fwlink/?LinkId=188508)

· Remote Desktop Services Script Repository (http://go.microsoft.com/fwlink/?LinkId=190312)

Posted May 18, 2010 by Robert Smit in Windows Clustering

Tagged with

  • Tag