none
Azure Server Backup Daily using Automation RRS feed

  • General discussion

  • I want to create a backup my azure server daily...

    for that I am using this link 1.https://gallery.technet.microsoft.com/scriptcenter/Back-up-an-Azure-VM-using-9545f0a1#content

    2.http://blogs.technet.com/b/cbernier/archive/2014/04/08/microsoft-azure-automation.aspx

    I have created one automation "knsazureautomation" in that I have manually created 1 runbook "knsremotepscommand" and I have imporetd two files

    1.Connect-Azure: http://gallery.technet.microsoft.com/scriptcenter/Connect-to-an-Azure-f27a81bb - download this script
    2.Connect-AzureVM: http://gallery.technet.microsoft.com/scriptcenter/Connect-to-an-Azure-85f0782c - download this script

    and for workflow for knsremotepscommand (>Author>Draft)

    workflow knsremotepscommand
    {
        Param
        (
            [parameter(Mandatory=$true)]
            [String]
            $AzureSubscriptionName,
     
            [parameter(Mandatory=$true)]
            [PSCredential]
            $AzureOrgIdCredential,
             
            [parameter(Mandatory=$true)]
            [String]
            $ServiceName,
             
            [parameter(Mandatory=$true)]
            [String]
            $VMName,   
             
            [parameter(Mandatory=$true)]
            [String]
            $VMCredentialName,
             
            [parameter(Mandatory=$true)]
            [String]
            $PSCommand  
        )
            
        # Get credentials to Azure VM
        $Credential = Get-AutomationPSCredential -Name $VMCredentialName     
        if ($Credential -eq $null)
        {
            throw "Could not retrieve '$VMCredentialName' credential asset. Check that you created this asset in the Automation service."
        }      
         
        # Set up Azure connection by calling the Connect-Azure runbook. You should call this runbook after
        # every CheckPoint-WorkFlow to ensure that the management certificate is available if this runbook
        # gets interrupted and starts from the last checkpoint
        $Uri = Connect-AzureVM -AzureSubscriptionName $AzureSubscriptionName -AzureOrgIdCredential $AzureOrgIdCredential -ServiceName $ServiceName -VMName $VMName  
         
        # Run a command on the Azure VM
        $PSCommandResult = InlineScript {         
            Invoke-command -ConnectionUri $Using:Uri -credential $Using:Credential -ScriptBlock {
                Invoke-Expression $Args[0]
            } -Args $Using:PSCommand
     
        }
         
        $PSCommandResult


    }

    and created assests are

    1.Create Automation:
    Account Name: KNSAzureAutomation
    Region:EAST US 2

    2.Assests:
    1.ADD CONNECTION
    Configure connection
    CONNECTION TYPE:azure
    NAME: KNSAzureConnection
    AUTOMATIONCERTIFICATENAME:KNSAzureCertificationName
    SUBSCRIPTIONID: (my azure subscrption id is given)

    2.ADD CREDENTIAL
    CREDENTIAL TYPE:WindowsPowerShell Credential
    NAME:KNSAzureCredential

    3.ADD SCHEDULE
    Configure Schedule
    NAME:KnsAzureBackup1
    DESCRIPTION: first backuschedule everaday at 12.45

    SELECTED RUNBOOK
    KNSremotePScommand
    AZUREORGIDCREDENTIAL:vnalluri2006@hotmail.com
    AZURESUBSCRIPTIONNAME:BizSpark
    PSCOMMAND:ipconfig/all
    SERVICENAME:KNSWin
    VMCREDENTIALNAME:KNSAzureCredential(Asset Credential name)
    VMNAME:knsazurewin1

    I f I change the credential of

    AZUREORGIDCREDENTIAL:vnalluri2006@hotmail.com

    to

    AZUREORGIDCREDENTIAL:KNSAzureCredential

    I am  getting this error

    4/22/2015 4:53:11 PM, Error: Add-AzureAccount : -Credential parameter can only be used with Organization ID credentials. For more information,
    please refer to http://go.microsoft.com/fwlink/?linkid=331007&clcid=0x409 for more information about the difference
    between an organizational account and a Microsoft account.
    At Connect-AzureVM:24 char:24
    +
        + CategoryInfo          : CloseError: (:) [Add-AzureAccount], AadAuthenticationFailedException
        + FullyQualifiedErrorId : Microsoft.WindowsAzure.Commands.Profile.AddAzureAccount
     
    4/22/2015 4:53:12 PM, Error: Select-AzureSubscription : The subscription name BizSpark doesn't exist.
    Parameter name: name
    At Connect-AzureVM:27 char:27
    +
        + CategoryInfo          : CloseError: (:) [Select-AzureSubscription], ArgumentException
        + FullyQualifiedErrorId : Microsoft.WindowsAzure.Commands.Profile.SelectAzureSubscriptionCommand
     
    4/22/2015 4:53:17 PM, Error: Get-AzureVM : No default subscription has been designated. Use Select-AzureSubscription -Default <subscriptionName> to
    set the default subscription.
    At Connect-AzureVM:29 char:29
    +
        + CategoryInfo          : CloseError: (:) [Get-AzureVM], ApplicationException
        + FullyQualifiedErrorId : Microsoft.WindowsAzure.Commands.ServiceManagement.IaaS.GetAzureVMCommand
     
    4/22/2015 4:53:17 PM, Error: Get-AzureCertificate : Cannot validate argument on parameter 'Thumbprint'. The argument is null or empty. Provide an
    argument that is not null or empty, and then try the command again.
    At Connect-AzureVM:29 char:29
    +
        + CategoryInfo          : InvalidData: (:) [Get-AzureCertificate], ParameterBindingValidationException
        + FullyQualifiedErrorId :
    ParameterArgumentValidationError,Microsoft.WindowsAzure.Commands.ServiceManagement.Certificates.GetAzureCertificate
     
    4/22/2015 4:53:17 PM, Error: Get-AzureWinRMUri : No default subscription has been designated. Use Select-AzureSubscription -Default
    <subscriptionName> to set the default subscription.
    At Connect-AzureVM:29 char:29
    +
        + CategoryInfo          : CloseError: (:) [Get-AzureWinRMUri], ApplicationException
        + FullyQualifiedErrorId : Microsoft.WindowsAzure.Commands.ServiceManagement.IaaS.GetAzureWinRMUri
     
    4/22/2015 4:53:17 PM, Error: Invoke-Command : Cannot validate argument on parameter 'ConnectionUri'. The argument is null, empty, or an element of
    the argument collection contains a null value. Supply a collection that does not contain any null values and then try
    the command again.
    At knsremotepscommand:92 char:92
    +
        + CategoryInfo          : InvalidData: (:) [Invoke-Command], ParameterBindingValidationException
        + FullyQualifiedErrorId : ParameterArgumentValidationError,Microsoft.PowerShell.Commands.InvokeCommandCommand
     

    Wednesday, April 22, 2015 11:26 AM

All replies

  • I want to create a backup my azure server daily...

    for that I am using this link 1.https://gallery.technet.microsoft.com/scriptcenter/Back-up-an-Azure-VM-using-9545f0a1#content

    2.http://blogs.technet.com/b/cbernier/archive/2014/04/08/microsoft-azure-automation.aspx

    I have created one automation "knsazureautomation" in that I have manually created 1 runbook "knsremotepscommand" and I have imporetd two files

    1.Connect-Azure: http://gallery.technet.microsoft.com/scriptcenter/Connect-to-an-Azure-f27a81bb - download this script
    2.Connect-AzureVM: http://gallery.technet.microsoft.com/scriptcenter/Connect-to-an-Azure-85f0782c - download this script

    and for workflow for knsremotepscommand (>Author>Draft)

    workflow knsremotepscommand
    {
        Param
        (
            [parameter(Mandatory=$true)]
            [String]
            $AzureSubscriptionName,
     
            [parameter(Mandatory=$true)]
            [PSCredential]
            $AzureOrgIdCredential,
             
            [parameter(Mandatory=$true)]
            [String]
            $ServiceName,
             
            [parameter(Mandatory=$true)]
            [String]
            $VMName,   
             
            [parameter(Mandatory=$true)]
            [String]
            $VMCredentialName,
             
            [parameter(Mandatory=$true)]
            [String]
            $PSCommand  
        )
            
        # Get credentials to Azure VM
        $Credential = Get-AutomationPSCredential -Name $VMCredentialName     
        if ($Credential -eq $null)
        {
            throw "Could not retrieve '$VMCredentialName' credential asset. Check that you created this asset in the Automation service."
        }      
         
        # Set up Azure connection by calling the Connect-Azure runbook. You should call this runbook after
        # every CheckPoint-WorkFlow to ensure that the management certificate is available if this runbook
        # gets interrupted and starts from the last checkpoint
        $Uri = Connect-AzureVM -AzureSubscriptionName $AzureSubscriptionName -AzureOrgIdCredential $AzureOrgIdCredential -ServiceName $ServiceName -VMName $VMName  
         
        # Run a command on the Azure VM
        $PSCommandResult = InlineScript {         
            Invoke-command -ConnectionUri $Using:Uri -credential $Using:Credential -ScriptBlock {
                Invoke-Expression $Args[0]
            } -Args $Using:PSCommand
     
        }
         
        $PSCommandResult


    }

    and created assests are

    1.Create Automation:
    Account Name: KNSAzureAutomation
    Region:EAST US 2

    2.Assests:
    1.ADD CONNECTION
    Configure connection
    CONNECTION TYPE:azure
    NAME: KNSAzureConnection
    AUTOMATIONCERTIFICATENAME:KNSAzureCertificationName
    SUBSCRIPTIONID: (my azure subscrption id is given)

    2.ADD CREDENTIAL
    CREDENTIAL TYPE:WindowsPowerShell Credential
    NAME:KNSAzureCredential

    3.ADD SCHEDULE
    Configure Schedule
    NAME:KnsAzureBackup1
    DESCRIPTION: first backuschedule everaday at 12.45

    SELECTED RUNBOOK
    KNSremotePScommand
    AZUREORGIDCREDENTIAL:vnalluri2006@hotmail.com
    AZURESUBSCRIPTIONNAME:BizSpark
    PSCOMMAND:ipconfig/all
    SERVICENAME:KNSWin
    VMCREDENTIALNAME:KNSAzureCredential(Asset Credential name)
    VMNAME:knsazurewin1

    I f I change the credential of

    AZUREORGIDCREDENTIAL:vnalluri2006@hotmail.com

    to

    AZUREORGIDCREDENTIAL:KNSAzureCredential

    I am  getting this error

    4/22/2015 4:53:11 PM, Error: Add-AzureAccount : -Credential parameter can only be used with Organization ID credentials. For more information,
    please refer to http://go.microsoft.com/fwlink/?linkid=331007&clcid=0x409 for more information about the difference
    between an organizational account and a Microsoft account.
    At Connect-AzureVM:24 char:24
    +
        + CategoryInfo          : CloseError: (:) [Add-AzureAccount], AadAuthenticationFailedException
        + FullyQualifiedErrorId : Microsoft.WindowsAzure.Commands.Profile.AddAzureAccount
     
    4/22/2015 4:53:12 PM, Error: Select-AzureSubscription : The subscription name BizSpark doesn't exist.
    Parameter name: name
    At Connect-AzureVM:27 char:27
    +
        + CategoryInfo          : CloseError: (:) [Select-AzureSubscription], ArgumentException
        + FullyQualifiedErrorId : Microsoft.WindowsAzure.Commands.Profile.SelectAzureSubscriptionCommand
     
    4/22/2015 4:53:17 PM, Error: Get-AzureVM : No default subscription has been designated. Use Select-AzureSubscription -Default <subscriptionName> to
    set the default subscription.
    At Connect-AzureVM:29 char:29
    +
        + CategoryInfo          : CloseError: (:) [Get-AzureVM], ApplicationException
        + FullyQualifiedErrorId : Microsoft.WindowsAzure.Commands.ServiceManagement.IaaS.GetAzureVMCommand
     
    4/22/2015 4:53:17 PM, Error: Get-AzureCertificate : Cannot validate argument on parameter 'Thumbprint'. The argument is null or empty. Provide an
    argument that is not null or empty, and then try the command again.
    At Connect-AzureVM:29 char:29
    +
        + CategoryInfo          : InvalidData: (:) [Get-AzureCertificate], ParameterBindingValidationException
        + FullyQualifiedErrorId :
    ParameterArgumentValidationError,Microsoft.WindowsAzure.Commands.ServiceManagement.Certificates.GetAzureCertificate
     
    4/22/2015 4:53:17 PM, Error: Get-AzureWinRMUri : No default subscription has been designated. Use Select-AzureSubscription -Default
    <subscriptionName> to set the default subscription.
    At Connect-AzureVM:29 char:29
    +
        + CategoryInfo          : CloseError: (:) [Get-AzureWinRMUri], ApplicationException
        + FullyQualifiedErrorId : Microsoft.WindowsAzure.Commands.ServiceManagement.IaaS.GetAzureWinRMUri
     
    4/22/2015 4:53:17 PM, Error: Invoke-Command : Cannot validate argument on parameter 'ConnectionUri'. The argument is null, empty, or an element of
    the argument collection contains a null value. Supply a collection that does not contain any null values and then try
    the command again.
    At knsremotepscommand:92 char:92
    +
        + CategoryInfo          : InvalidData: (:) [Invoke-Command], ParameterBindingValidationException
        + FullyQualifiedErrorId : ParameterArgumentValidationError,Microsoft.PowerShell.Commands.InvokeCommandCommand

    Wednesday, April 22, 2015 11:27 AM
  • Post in Azure forum for help in sorting out how to use Azure IDs and credentials. YOU are using ghte wrong reds and the wrong formats.


    \_(ツ)_/

    Wednesday, April 22, 2015 12:49 PM