Azure Automation: Refactor module update logic
As I had a good go creating logic to handle modules on hybriod workers, I decided to also update some existing code the Automation team has had on their github for awhile. This code has become stale and does not work that good anymore. The team is also deprecating their github soon as it does…
Azure Automation: Update Management Runbook
This will be a quick one. As I was looking for a solution to add Azure VM to update management through Terraform I came up short. Therefore we opted to have Terraform do a web call to trigger a Runbook in Azure Automation. I went spelunking and found that the AA team had already done…
Azure Automation: update them modules redux
I did some work on updating the Update-AzureAHybridWorkerModules script I previously published here. It was a very basic script that only updated modules on hybrid workers that had been installed by using Install-Module. After thinking a bit, and becoming ever increasingly frustrated that we still do not have logic for automatically syncing modules installed in…
Azure Automation runbook logging redux
This time I wanted to show a more comprehensive example from a real life need and how I went about solving it. The challenge we faced was that we had previously set our Azure AD Connector to use the e-mail field in AD to be synced to Azure AD as the UPN. This would have…
Azure Automation runbook logging
For any automation tool, logging is pretty important. Though I would also say readability of the logs is something one should also think about when writing code. The general consensus in AA for logging is that one should use: Write-Error Write-Warning Write-Verbose Write-Output as the accepted ways of moving information to the different log types.…
Azure AD Connect: Export filter OU list
Just a quick one to remind myself as I’m taking in some coffee. If you need to get the set OU filters for the Azure AD Connector, this little Powershell snippet might help:
1 2 3 4 5 6 7 8 9 10 11 12 | # Get-ADSyncConnector gets all connector and just find the name of the one you want to use $ExcludeFilterFileName = "c:\temp\ExcludeFilter.txt" $IncludeFilterFileName = "c:\temp\IncludeFilter.txt" $ADConnectorName = "AD Connector Name" $ADConnector = Get-ADSyncConnector -Name $ADConnectorName # Assumes that only one partition exist on the connector $ADConPartition = Get-ADSyncConnectorPartition -Connector $ADConnector[0] -Identifier $ADConnector.Partitions.Identifier.Guid $ADConPartition.ConnectorPartitionScope.ContainerInclusionList | Out-File -FilePath $IncludeFilterFileName $ADConPartition.ConnectorPartitionScope.ContainerExclusionList | Out-File -FilePath $ExcludeFilterFileName |
Does not seem a way to import as of yet though š Will update if I find a workaround for this.…
Azure Automation: update them modules
Update: Go here to read about the new hybrid worker logic to keep modules updated and in sync with AA. I have been working a lot with Azure Automation lately. It’s a great product, helping organize the use of Powershell making an awesome language even better. With AA as any other of the Azure services…
Give me security; WordPress&MySQL!
This is a follow-up on a previous blog post of mine. I donāt like to leave the security of the solution hanging as we are exposing the MySQL database to the internet up in the cloud. There exist a possibility to use Azure internal virtual network, though for that your web site must use a…
Give me more datadisks
With lower tier VMās in Azure you have a limit on how many data disk you can attach. As an example an A1 can only have 2 datadisks of 1 TB each attached. So if you just want to use Azure for storing a lot of data like backup you are kind of out of…
AzureRM WordPress migrate to Docker MySQL complete story
Wanted to document my journey to get this blog up and going in Azure. This was a experiment as much as anything. Though the result was not too shabby. First we start by creating a new Azure WordPress Web App. Press New and searchĀ for WordPress Choose the WordPress web app and accept the terms. Fill…