protected AzureHDInsightDefaultStorageAccount GetDefaultStorageAccount(string resourceGroupName, string clusterName)
        {
            var result = HDInsightManagementClient.GetCluster(resourceGroupName, clusterName);

            if (result == null || result.Count == 0)
            {
                throw new CloudException(string.Format("Couldn't find cluster {0}", clusterName));
            }

            var cluster = result.FirstOrDefault();
            var coreSiteConfiguration        = HDInsightManagementClient.GetClusterConfigurations(resourceGroupName, cluster.Name, ConfigurationKey.CoreSite);
            var clusterIdentityConfiguration = HDInsightManagementClient.GetClusterConfigurations(resourceGroupName, cluster.Name, ConfigurationKey.ClusterIdentity);

            var DefaultStorageAccount = ClusterConfigurationUtils.GetDefaultStorageAccountDetails(
                cluster.Properties.ClusterVersion,
                coreSiteConfiguration,
                clusterIdentityConfiguration
                );

            if (DefaultStorageAccount == null)
            {
                throw new CloudException(string.Format("Couldn't find storage information for cluster {0}", clusterName));
            }

            return(DefaultStorageAccount);
        }
示例#2
0
        public override void ExecuteCmdlet()
        {
            if (ClusterName != null && ResourceGroupName == null)
            {
                ResourceGroupName = GetResourceGroupByAccountName(ClusterName);
            }

            var result = HDInsightManagementClient.GetCluster(ResourceGroupName, ClusterName);

            var output = result.Select(entry =>
            {
                string resourceGroupName = ClusterConfigurationUtils.GetResourceGroupFromClusterId(entry.Id);
                var configuration        = HDInsightManagementClient.GetClusterConfigurations(resourceGroupName, entry.Name, "core-site");
                return(new AzureHDInsightCluster(entry, configuration));
            }).ToList();

            WriteObject(output, true);
        }