You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cloudstack.apache.org by Haijiao <18...@163.com> on 2019/10/09 06:23:58 UTC

Integration between CloudStack and Citrix XenDesktop

Citrix XenDesktp was used to be able to be integrated with Citrix CloudPlatform (CloudStack).  The last version we have tested withou issue is Apache CloudStack 4.7. 1.
Recently we re-validated the integration with latest version of each components, but failed this time.

a)      Citrix VirtualDesktop: 1906

b)      ACS: 4.11.3

c)      XenServer:7.1.2


While we choose 'CloudPlatform' as the Connection Type on DDC with API and Secret Key,  it returns error like this.   


Since ACS+Citrix is a very unqiue combination for VDI,  would appreciate if any one can share exprience or piece of advice,  thanks !


Error Id: XDDS:FCD59C21


异常:
    Citrix.Orchestration.Base.LogicModels.Exceptions.ScriptException 未知错误。请联系 Citrix 技术支持。
       在 Citrix.Orchestration.Base.PowerShellInteraction.CmdletExecutionMethods.CreateException[T](ICommonLog logger, ExecutionResults`1 results, ICmdletExecutionHost host)
       在 Citrix.Orchestration.Base.PowerShellInteraction.CmdletExecutionMethods.Execute[T](ISdkCmdlet`1 sdkCmd, ICmdletExecutionHost host, Boolean allowFailover)
       在 Citrix.Orchestration.Base.PowerShellSdk.HypervisorService.Scripts.GetHypervisorItemsScript`1.RunScript()
       在 Citrix.Orchestration.Base.PowerShellInteraction.PowerShellScript`1.Run()
       在 Citrix.Orchestration.Base.PowerShellSdk.HypervisorService.PSHypervisorService.GetVirtualPrivateClouds(HypervisorConnectionModel connection, ScriptExecutionContext context)
       在 Citrix.Console.Hypervisors.UI.Pages.CloudLocationViewModel.OnRegionSelected()
       在 Citrix.Console.Common.OperationTimer.TimeBlock(Action operation)
       在 Citrix.Console.CommonControls.ProgressDisplay.GenericProgressOperation.PerformOperationInternal()
       在 Citrix.Console.CommonControls.ProgressDisplay.ProgressWindowOperation.PerformOperation()
       在 Citrix.Console.CommonControls.ProgressDisplay.ProgressWindowViewModel.PerformAction(Action operationComplete)
    
    DesktopStudio_ErrorId : ExceptionThrown
    Exception : Citrix.CloudStack.SDK.CloudStackException: ErrorCode: ErrorText:  Command: listAccounts Context: Error deserializing response
    
    ===== Original (plugin-side) exception details =====
    Citrix.CloudStack.SDK.CloudStackException: ErrorCode: ErrorText:  Command: listAccounts Context: Error deserializing response ---> System.InvalidOperationException: XML 文档(0, 0)中有错误。 ---> System.FormatException: 输入字符串的格式不正确。
       在 System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
       在 System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
       在 Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderListAccountsResponse.Read8_Account(Boolean isNullable, Boolean checkType)
       在 Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderListAccountsResponse.Read9_ListAccountsResponse(Boolean isNullable, Boolean checkType)
       在 Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderListAccountsResponse.Read10_listaccountsresponse()
       --- 内部异常堆栈跟踪的结尾 ---
       在 System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle, XmlDeserializationEvents events)
       在 Citrix.CloudStack.SDK.Utility.DeserialiseResponse[T](XContainer response, String apiCallName, String rootElement)
       --- 内部异常堆栈跟踪的结尾 ---
       在 Citrix.CloudStack.SDK.Utility.DeserialiseResponse[T](XContainer response, String apiCallName, String rootElement)
       在 CloudCommon.SessionRateLimiter`1.InvokeSession[TReturnType](Func`2 worker)
       在 Citrix.HypervisorCommunicationsLibrary.Plugins.CloudStack.CloudStackAdapter.WhoAmI()
       在 Citrix.HypervisorCommunicationsLibrary.Plugins.CloudStack.CloudStackAdapter.DescribeNetworks(IList`1 resourceIds, String availabilityZone)
       在 CloudCommon.CloudInventoryTree.DiscoverAllObjects(ICloudAdapter cloudAdapter)
       在 CloudCommon.CloudInventoryTree.Build(ICloudAdapter adapter, ILogProvider logger)
       在 CloudCommon.CloudPluginBase.PluginMachineManager.get_InventoryTree()
       在 CloudCommon.CloudPluginBase.PluginMachineManager.GetContents(String path, Boolean all)
       在 CloudCommon.CloudPluginBase.PluginHypervisor.EnumerateContents(IConnectionDetails connectionDetails, String path, String rootPath, Boolean returnAll)
       在 Citrix.HypervisorCommunicationsLibrary.AddInSideAdapter.ICloudHypervisor_AddInViewToContractAdapter.EnumerateContents(IConnectionDetailsContract connectionDetails, String path, String rootPath, Boolean returnAll)
    
    ===== Original (plugin-side) exception properties (count 6) =====
    'Context' = 'Error deserializing response'
    'Command' = 'listAccounts'
    'APIErrorResult' = 'ErrorCode: ErrorText: '
    'Data' = 'Context = Error deserializing response; Command = listAccounts; APIErrorResult = ErrorCode: ErrorText: ; RequestBody = <NULL>'
    'Source' = 'Citrix.CloudStack.SDK'
    'HResult' = '-2146233088'
    
    ===== WrappedPluginException (parent-side) details =====
    PluginUtilities.Exceptions.WrappedPluginException: ErrorCode: ErrorText:  Command: listAccounts Context: Error deserializing response ---> PluginUtilities.Exceptions.WrappedPluginException: XML 文档(0, 0)中有错误。 ---> PluginUtilities.Exceptions.WrappedPluginException: 输入字符串的格式不正确。
    
       --- 内部异常堆栈跟踪的结尾 ---
    
       --- 内部异常堆栈跟踪的结尾 ---
    
    Server stack trace: 
       在 Citrix.HypervisorCommunicationsLibrary.AddInSideAdapter.ICloudHypervisor_AddInViewToContractAdapter.EnumerateContents(IConnectionDetailsContract connectionDetails, String path, String rootPath, Boolean returnAll)
       在 System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Object[]& outArgs)
       在 System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg)
    
    Exception rethrown at [0]: 
       在 System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
       在 System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
       在 Citrix.HypervisorCommunicationsLibrary.Contracts.IHypervisorContract.EnumerateContents(IConnectionDetailsContract connectionDetails, String path, String rootPath, Boolean returnAll)
       在 Citrix.HypervisorCommunicationsLibrary.HostSideAdapter.ICloudHypervisor_ContractToHostViewAdapter.EnumerateContents(IConnectionDetails connectionDetails, String path, String rootPath, Boolean returnAll)
       在 Citrix.Host.Logic.HostLogic.GetHypervisorItemContents(HypervisorConnection connection, SecretStringBuffer password, String path, String rootPath, Boolean force, HypervisorObject[]& hypervisorObjects)
       在 Citrix.Host.Logic.HostLogic.GetHypervisorItemContents(String path, String rootPath, HypervisorConnection connection, Char[] password, Boolean force, HypervisorObject[]& hypervisorObjects)
       在 Citrix.Host.WcfService.<>c__DisplayClass60_0.<GetHypervisorItemContents>b__0()
       在 Citrix.Fma.Sdk.ServiceCore.ServiceCore.CheckedCall[T](String name, Func`1 operation, Func`2 defaultValue, Enum code)
    
    Reason : WrappedPluginException
    Message : ErrorCode: ErrorText:  Command: listAccounts Context: Error deserializing response
    Sdk Error Message : An exception occurred.  The associated message was ErrorCode: ErrorText:  Command: listAccounts Context: Error deserializing response
    Sdk Error ID : Citrix.XDPowerShell.Status.ExceptionThrown,Microsoft.PowerShell.Commands.GetChildItemCommand
    ErrorCategory : NotSpecified
    DesktopStudio_PowerShellHistory : GetHypervisorItemsScript`1
    2019/10/8 12:22:11
    
    Set-HypAdminConnection  -AdminAddress "ctx-xdc01.ihuayun.local:80" -BearerToken ********
    Get-ChildItem  -BearerToken ******** -LiteralPath @("XDHyp:\Connections\ACS411")
    Get-ChildItem : An exception occurred.  The associated message was ErrorCode: ErrorText:  Command: listAccounts Context: Error deserializing response
    + CategoryInfo : InvalidOperation: (:) [Get-ChildItem],InvalidOperationException
    + FullyQualifiedErrorId : Citrix.XDPowerShell.Status.ExceptionThrown,Microsoft.PowerShell.Commands.GetChildItemCommand
    Get-ChildItem : An exception occurred.  The associated message was ErrorCode: ErrorText:  Command: listAccounts Context: Error deserializing response
    + CategoryInfo : NotSpecified: (:) [Get-ChildItem], InvalidOperationException
    + FullyQualifiedErrorId : System.InvalidOperationException,Microsoft.PowerShell.Commands.GetChildItemCommand