Is this you? As a journalist, you can create a free Muck Rack account to customize your profile, list your contact preferences, and upload a portfolio of your best work.
Claim your profile
Articles by Non-production Environment
The Practical Guide to Installing and Configuring k3s Kubernetes Cluster
If you want to test a Kubernetes cluster quickly with low laptop resources or absolutely no cloud billing, k3s is the best option for you. Here's why, especially for testing and development. Setting up a K3s is very fast and lightweight. A normal k8s cluster needs 2-4 GB RAM just to start. k3s starts in ∼5 seconds with ∼512MB RAM in a single binary. For testing, you can spin up and destroy a cluster 10 times a day. 1.
Mastering Local Kubernetes: How to Install and Configure Minikube
Minikube lets you run a full single-node Kubernetes cluster on your laptop - no cloud bill needed. In this guide, I'll show you how I set it up on Ubuntu (works the same on WSL2) using Docker as the driver. We'll install kubectl, Docker, Minikube, and boot your first cluster in under 10 minutes. I use MiniKube personally a lot as it is very easy to setup for local development without needing any cloud infrastructure.
Install and Configure Complete Kubernetes Cluster Using MicroK8s- Step by Step
MicroK8s is a lightweight, all-inclusive Kubernetes distribution packaged by Canonical via Snap. Unlike kubeadm, it installs a complete single-node or high-availability cluster with a single command snap install microk8s --classic and includes built-in, easy-to-enable add-ons like DNS, storage, and load-balancing. In this guide, I will show you how I built a 2-node MicroK8s lab on Ubuntu - ubuntu001 as the control-plane and ubuntu002 as the worker node.
Connecting to Ubuntu Linux from Windows Using VS Code Remote SSH
This is a step by step guide to setting up Visual Studio Code - Remote SSH. This helps to connect to Linux system remotely and add, edit, delete files and folder with Visual Studio code, at the same time I can execute script files. This helps to manage Linux and use it as all in one tool for DevOps activities. As VS Code is open source tool and SSH extension is free (Author Microsoft), I don't have to pay for any other commercial tools. To start configuration, I am on my windows system.
How to Install KIND and Create a Local Kubernetes Cluster - Step by Step
In my home lab, I wanted a quick way to test Kubernetes workloads without spinning up multiple VMs or paying for a cloud cluster. After trying minikube and k3s, I found KIND (Kubernetes on Docker) to be the fastest and cleanest solution. In this post, I'll walk you through how I installed KIND, configured kubectl, and got my first local Kubernetes cluster up and running on Ubuntu for lab testing. I have my Ubuntu server ready, Before starting anything I update and upgrade Ubuntu OS.
PowerShell How to store multiple credentials in CLIXML
Microsoft Powershell lets you store credentials securely using CLIXML, which is ideal for reusing multiple logins without typing passwords every time without revealing them to anyone.. The best part of CLIXML is passwords inside CLIXML file aren't stored in plain text. Windows encrypts them with DPAPI (Data Protection API), tied specifically to your user profile. That means the file can't be decrypted if it's copied to another computer or used by a different user. # 1.
Converting CSV String Values to Boolean in PowerShell
While working with CSV file I had few column in the true and false boolean value. But when I was importing csv file in PowerShell it was treating them as a string value instead of boolean in the output. Here I will explore how to convert true and false values to boolean. Method 1 To safely use and convert string value in CSV file to boolean I am using [System.Convert] .net object and its method ToBoolean(). Below is the step by step guide on how to use it.
How to Capture PowerShell Trace and Debug Messages in DebugView
When you’re running Powershell scripts as scheduled tasks, background jobs, Runspace jobs, or on remote servers, normal Write-Host or Write-Debug output often disappears. That’s where System.Diagnostics.Trace comes in. System.Diagnostics.Trace is a built-in.NET class designed to instrument, monitor, and log application execution at runtime.
Navigating Nested Loops in PowerShell A Guide to Loop Labels
At first glance, as in the below shared PowerShell script looks like a simple set of nested foreach loops printing numbers. But it has very powerful - and always overlooked - control structure: called Loop Label.
How to Get Installed Software Features List Using PowerShell WMI-CIM
While working with Vmware Tools, I needed to audit exactly which features/components were installed on a VM. VMware Tools isn’t just one package — it installs several sub-features like drivers, services, and utilities. I wanted a clean report showing each component and whether it was actually installed locally. WMI/CIM has a class called Win32_SoftwareFeature that tracks individual features of MSI-based products.
How to Audit HPE iLO Active Directory Settings with PowerShell and Redfish API
This script focuses on automating the audit of Active Directory and LDAP settings across multiple generations of Hpe Ilo using PowerShell and the Redfish API. Before running the script First you will need to create a CSV file with HPE Generation, IP, username and password information as shown in the below csv format.
Part 3 Deploying a Dual-Homed Jump Server for Secure Nested Lab Access
Share the post Part 3 Deploying a Dual-Homed Jump Server for Secure Nested Lab Access Facebook Pinterest ×
Terraform module Azure function app with private endpoint and storage account
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151...
Terraform Azure function app with private endpoint and storage account
In this article I am Creating Azure Function App linked to Private Endpoint and Storage Account using Terraform. This terraform configuration file will deploy all these resources within couple of minute. In this automation Resource Group, User Assigned Identity, Virtual Network, Subnet, Private DNS Zone and Network Link is already exist on Azure cloud platform.
Terraform Azure provider passing multiple alias environment and credentials in child module
While working with Terraform modules I wanted to pass on multiple provider aliases with specific credentials and azure subscription details to child module. Ideas was to create resources with assigned privileged users. Non privileged users should not be able to create services in Azure. In this step by step guide I defined two provider azurerm blocks, alias information each with dev and prod. For each provider block I have given assigned privileged service principal details as per the environment.
Terraform Azure provider alias passing credentials and configuration in module resources
In this article I will be configuring alias in AzureRM provider and passing it to child module. Which will allow me to configure/deploy resources with given settings and credentials. In this demo in my Parent module, I will use specific client_id, client_secret, subscription_id, tenant_id to authenticate to Azure and create Storage Account in specified Resource Group where service principle has privileges to create resource.
PowerShell create resources on Azure using Rest API with user account
Using client id (Service Principal) and client secret to connect Azure Rest Api is fairly easy and simple. As I have shown in my earlier articles. I am using another way of using your organization Username of Password to connect to azure Rest API instead of client id and client secret. You generate a OAuth2 token to connect Azure Rest API. To retrieve this oauth2 token, I am using az PowerShell module.
Azure Rest API connect with Powershell and create resources
I had a task to explore and deploy resources in Microsoft Azure using Rest API. Very good and detailed documentation is provided by Microsoft for Azure Rest API here https://learn.microsoft.com/en-us/rest/api/azure/. In this example I will use PowerShell to automate Azure Rest API and create Resource Group and Storage Account. For the new resource group name, location and storage account name I have provided in variables.
Terraform filter map and list object with if condition in for_each loop examples
In terraform there is no actual if else condition block. But still you can use if condition to filter map or list of objects to get the required keys or values. In below example I have scenario where I wanted to create Resource Group in Azure to defined locations only. Incase no data is provided or match it should not deploy anything (It should be empty loop) same like count in terraform, if 0 value is provided. In below example I have map of object for Resource Group names and Location as values.
Terraform variable precedence and priority
This is a informational article on how the Variable precedence works in Terraform. This is how the priority is defined for variable when you use it in different ways. In the following diagram, it shows the information of variable priority matrix. Lower the number it has higher the priority and it will always override the sub variables you defined. This documentation will help you to troubleshoot, variable related inforamation. I have here five different ways to pass variables in terraform.
Terraform passing different credentials to different subscriptions with provider alias
While planning and designing Terraform configuration files for Azure deployment, I wanted to deploy resources to different environment in different subscriptions. In the designing code idea was to use different multiple credentials while deploying environments and referencing them with alias. To achieve this here is my very simple demo code. I have created two Resource Groups and two App Registration (Service Principal) named dev and prod in Microsoft Azure Portal.
Unlocking TF State File on Azure backend with PowerShell and Terraform Force-Unlock Command
While working on collaborative environment of Terraform deployments, you might encounter an error of acquiring the tf state locking issue. In Terraform word when backend is configured to store state file on remote. It limits multiple users from making changes to environment at the same time to avoid conflicts and changes. In below example I set two terraform window side by side.
Create storage account and Service Principal using PowerShell for Terraform Azure Backend
While working on earlier article Configure Azure Storage Account Blob as Terraform backend to store tfstate file, I wanted to test terraform backend configuration with Azure Service Principal (App registrations) account. To configure initial resources on Azure for backend, I have automated all the steps using PowerShell with Az module. With this PowerShell script it helps me to create new Storage Account with Blob container and new Service Principal in Azure Intra ID app registrations.
Configure Azure Storage Account Blob as Terraform backend to store tfstate file
In the HashiCorp Terraform context state file is a crucial file when deploying resources through terraform configuration tf file. State file's extension is .tfstate. It is a JSON information/documentation that stores and records details about your organization infrastructure and its configuration. This contains resource IDs, attributes, and dependencies.
Terraform variable validation example
In Terraform, the can function is used to determine whether a given expression or operation can be evaluated without causing an error. It returns true if the expression can be evaluated without errors, and false otherwise. This can be particularly useful for handling optional or dynamic attributes that may not always be present. In below example I am doing Variable validation of provided value. I want to make sure whenever user add value to variable it should be either Allow or Deny.
Terraform create Azure Virtual Machines from map of objects
I had a task to create multiple Ubuntu Virtual Machines on Microsoft Azure using Terraform. Below is the code for the same. Requirement was VM information should be put into variable with type of map object (Multiple VMs will be created using it). Another requirement was there is already core infrastructure exists for Resource Group and Virtual Network vNet exist, use it as a data sources instead of creating new environment.
Automate chrome browser with PowerShell using selenium
Working with deprecated Internet Explorer using PowerShell to automate it was very easy earlier. To automated clicks or auto type on Internet Explorer, I was just using native .net com objects, which was a very simple and comprehensive. But since Internet Explorer is deprecated, I switched to Google Chrome / Microsoft Edge browser to automate Web Sites actions such as typing on textbox, clicking button etc, etc.. Below is the sample code for Internet Explorer browser automation.
Creating a Private Endpoint for Azure Storage Account with Terraform example 3
This is third part of the script and little bit improvement and 2 separate logics I have added to the script. It is modification of earlier written part Creating a Private Endpoint for Azure Storage Account with Terraform example 2. In the script I wanted to create multiple endpoint for sub resource based on input in Storage account kind, tier and replication type. Below are the output of the tf configuration after deployment. I can do the deployment with below 2 examples.
Terraform refactoring moved block example
While working with Azure Terraform I converted/updated existing resource block to module (Removed resource block and added module replacing it). But after running terraform plan command I found that earlier created resource using resource block will be destroyed and it will be creating a complete new resource from module as tfstate doesn't allow it, because of old information came from resource block.
Terraform create Azure Virtual Network subnets from map of object and show name in the header
This is a second part and little update to Using element function with count meta argument example Terraform Azure subnets. After submitting PR (Pull Request), reviewer asked they want small change in the output how it shows on the console. As I am using count to loop through subnet address prefixes on the each subnet name it shows number in the header iteration. They wanted me to make change and show the name of the subnet instead of count numbers.
Creating a Private Endpoint for Azure Storage Account with Terraform example 2
This part is a revised earlier article of Terraform Azure Create Private Endpoint to existing Storage Account with Custom Private DNS zone record link. when I raised PR (Pull Request) for this configuration, Reviewer asked me to make some changes such way that while creating Private Endpoint, name of the sub resources should reflect on the header like shown in the below screenshot. Earlier it was showing only for_each loop iteration numbers.
Creating a Private Endpoint for Azure Storage Account with required sub services using Terraform
This is a second part of Terraform Azure Create Private Endpoint to existing Storage Account with Custom Private DNS zone record link. This article is little bit advance, and here I am creating multiple Private Endpoint based on the provided details in Storage account kind. For example if kind is StorageV2, which is a general-purpose and has multi sub resources such as blob, file, table and queue.
Terraform Azure Create Private Endpoint to existing Storage Account with Custom Private DNS zone record link
I had a task to create Private Endpoint in Microsoft Azure and was requirement to automate this job using HashiCorp Terraform automation tf configuration files. This Private endpoint will be linked to existing Storage Account and Virtual Network. Other required sub resources Virtual Network Links and other connection and Private DNS zone A record will be created in custom Private DNS zone. This is the output after applying terraform configuration.
Azure Web App Containers Cannot perform credential operations for providers Microsoft.ContainerRegistry ad admin user is disabled, enable it
While creating a new resource Service Plan Web APP with Container, while choosing option Image Source from Azure Container Registry (ACR) and selecting docker image I was receiving error Cannot perform credential operations for /subscriptions/9e22xxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/vcloud-lab.com/providers/Microsoft.ContainerRegistry/registries/testvault0007 as admin user is disabled.
Adding parameters in Azure DevOps pipelines examples Part 1
This is an example of how to use parameters in Azure DevOps Pipeline YAML configurations. To start with this I have added first parameters: in the YAML file configuration. Under it I have multiple parameters, to create basic string parameter 3 properties are required name, displayName and type as shown in A section. When you don't define default value (Section A and B), from the right side you can see input is mandatory and required.
PowerShell convert shared folder permissions SDDL to readable format
While working with shared folder permissions, I wanted to document access and permissions of folders in readable format in automation way with PowerShell, You can see the permissions with below command of a folder. Access and permissions are in SDDL format, not in user friendly format to read, it contents SIDs, and permissions in shortform. The Security Descriptor Definition Language (SDDL) is a format that characterizes a security descriptor as a text string in Windows.
Generate PowerShell Tree View HTML diagram of Active Directory group recursive memberships
Long back I wrote article on Powershell Active Directory: Show treeview of User or Group memberof hierarchy, where it was showing group Tree View on the PowerShell command console. In the hierarchy it was only showing Tree View of groups only. I improvised this script and included users as well. As adding users and multiple groups on the screen console was possible but not much practical to view it on the screen. So I generated diagram in HTML with the using of https://mermaid.js.org/.
Reboot remote Linux server from PHP PowerShell web server
This web portal is part of Executing a Linux programs from PHP web Server. In earlier part I used only PHP to remotely execute commands on Linux server. In this it is a combination of PHP and PowerShell. Once you launch portal you will need to provide Domain username and password to authenticate and Linux server IP/Hostname to reboot Server. To run command on Linux from windows it uses plink.exe tool utility to connect through SSH.
Executing a Linux programs from PHP web server
This is a small web automation project I created to execute remote Linux command through web Server. The web language I used in this project is PHP (It is little similar to PowerShell so I was able to grasp it quickly and code the way I want). Using this tool users without having access to Linux server or without sharing credentials/Password, they can check information or you can enforce them to execute command they want on remote Linux. Here is the example of web page.
Azure DevOps Enable creation of classic build release pipelines grayed out
While configuring new Azure DevOps Pipelines in the project I found classic editor is not visible in Pipelines section also few options under Pipelines were not visible such as releases and task groups. There is s a option to enable classic editor in Project Settings. To make changes navigate to Project Settings >> Pipelines >> Settings.
Developing and writing custom Ansible Python module Part 2
This is a second part of Developing and writing Ansible Python custom module for VMware pyvmomi example. In this example I have extended writing python module for VMware ansible to get more information from vCenter server from one single python ansible module script. Download this custom ansible module for vCenter example here or it is also available github.com.
Testing domain AD credential with PowerShell one liner
This is a one liner command script to connect to Active Directory and verify user name and password credentials provided. I am using System.DirectoryServices.DirectoryEntry .net object here to connect to LDAP server (In my case it is Active Directory). When you are connected successful with correct information you get DistinguishedName and Path information of Active Directory in return.
Exploring Storage Virtualization and Data Protection Trends with BDRSuite
We are thrilled to introduce Bdrsuite version 7.0.0, now ready for production use. This release represents a significant leap in our commitment to innovation, bringing a host of exciting new features and improvements aimed at enhancing your data protection experience. Notably, this release includes groundbreaking capabilities like KVM and Azure backups, along with enhancements such as support for standalone tape drives and centralized Backup for MSSQL and MySQL.
Developing and writing Ansible Python custom module for VMware pyvmomi example
There may be requirement in RedHat Ansible when you write custom module when you don't fine tasks module for certain objects, that time you will need to write your own custom python module. In this given example I was using community VMware vSphere module with ansible and wanted to list all ESXi servers in the vCenter server, but I didn't find the required task module as shown on the official guide https://docs.ansible.com/ansible/latest/collections/community/vmware/index.html.
Part 3: Using HashiCorp Packer to build a Windows Server VM template for VMware vSphere
This is last and final (3rd) part of How to use HashiCorp Packer to automate and create a Windows Server Virtual Machine template on VMware vCenter server. You can refer to below article and they are prerequisite.
Convert PowerShell ps1 to EXE using native windows tool iexpress
Some times it is essentials to convert your codes to EXE. In my scenario when I try to provide script to end users and if I expect them not to modify the script before running or executing it, I can convert any cmd bat or PS1 script to EXE easily using Native Windows Tool called iExpress.exe, and export them. This tool is very handy for normal ps1 script to convert to EXE.
Update vCenter Server Appliance (VCSA) from VAMI portal
This is a step by step procedure updating Vcenter Server Appliance (VCSA) using VAMI portal. Before making update to vCenter server make sure you properly backup vCenter server using article Backup VMware vCenter server using SMB protocol. As I am testing update in DEV environment I have taken a snapshot of the VCSA vm.
Git clone or push Missing or invalid credentials fatal authentication failed
Tags: fatal authentication failed invalid credentials error git clone While working with Git Clone I was receiving fatal: Authentication failed and Missing or invalid credentials error. This happens due to missing password or it is not mentioned. [[email protected] variablepass]$ git clone http://[email protected]/Bonobo.Git.Server/ansibleawx.git Cloning into 'ansibleawx'...
PowerShell GUI get patch updates information with disk space and uptime
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151...
HOW to Add multiple email addresses to Distribution Groups in Exchange online Office 365
I was working with one of my client on a automation solution with PowerShell for Exchange Online. I wanted to write a PowerShell script to add Secondary alias Email addresses to Distribution Groups in Exchange online Office 365. Related Articles The problem of healing … or not Heali… Chaves Redencion 229 7 Day Sirtfood Diet Plan Creating and Selling Digital Products Getresponse.com Base of the script is Set-DistributionGroup cmdlet which does all the deadlift.
Show More
loading
Actions
Is this you?
As a journalist, you can create a free Muck Rack account to customize your profile, list your contact preferences, and upload a portfolio of your best work.Get in touch with Non-production
Contact Non-production, search articles and posts on X, monitor coverage, and track replies from one place.
Learn more about Muck Rack