Skip to main content

Totally Terraform (Or, Introducing Terraform DevOps Cloud Engineer Proceedures to A Company)

Hey, I have a per-small-project job - Contracted to build things in Terraform and push them to Azure to a company building out their Azure department.

80% of the time, it's pretty fun. I had to teach myself Terraform, but that's what this entire blog is about; Teaching myself things and hoping for work sometimes to make money and being employed by multiple people. You can be the next one!

Anyway, what do I like about Terraform? A lot.

Check out my live-post troubleshooting on a specific issue here.

 

Likes:

 

It clearly tells you what an error is! Troubleshooting was mostly such a breeze, and since I wasn't getting [too] annoyed, I could more easily learn where the mistakes where. For instance, the first line in the main code ('provider') - the 'azurerm' part is not a random name;

provider "azurerm"

It's an actual thing that connects to Azure.

 

You can make variables in a different file and use them in the main code. You will need 3 files - the main code, the variables file, and the place to establish the variables.

 

It doesn't tell you all the errors at once. If you fix one, another pops up after 'terraform plan' is ran. It makes troubleshooting easier to deal with when it's one problem at a time. You may prefer a long list of errors to deduce, so this is a case by case thing.

 

Dislikes:

 

if you're a beginner, it can still be difficult to parse. I had to take some code snippets from the demo I used.

In another instances, it couldn't reference a count variable I had placed under another resource. Why not? Research said it was ... something about how I was formatting it?...it was above my learning level at the time.


Some Error messages are just not helpful:

Error: Network Interface “Net-Connection” (Resource Group “Admins”) was not found!

You look at this and think "Well, that's obvious." 

Then you look at my code and see both aspects are there. The resource network interface and the variable that says "Admins is my resource group".

So, what's the actual problem?

My environment was corrupted; It was looking for elements that weren't there, and wasn't trying to create them as it should. The fix was easy, but the error message was lacking.


Further Research Needed

The documentation I've found is a little unclear sometimes. Some parts of the code, It took more context clues to find out what meant what - and I'm still not 100% sure.

 

 resource "azurerm_virtual_machine" "CloudskilsDevVM"

 

I'm pretty sure the name of the second part ("CloudskilsDevVM") would be the name, however, the next line ithin the brackets is


name = "cloudskillsvm"

 

So what is "CloudskilsDevVM"?

I still haven't figured it out, but my code works. So, whoo! Can't wait to learn more. This will come in handy when I build out Azure Companies.


 

 

Comments

Popular posts from this blog

What Do You Need? [AKA; List of Offered Services / My Next Role] (2020)

UPDATED 2021 I am a trusted outsourced remote consultant for your company.   I enjoy having the flexibility to take on temporary projects from time to time! I start at part-time, temp work for now. If we like each other, we can renegotiate. If anything sounds weird, out there, or unusual - Feel free to e-mail me .  3 Services Offered Technical: Cloud Technician     Azure [ See tag ] WORKING ON: Infrastructure As Code (Specifically Terraform/Azure and CloudFormation/AWS)  Support [Web: Example Job Description ] [Text : Example Description ]     I help you with adjustments in HTML, CSS, and Javascript.     When you email a business a question and they answer? That's me.   IT Operations Tech [ Example Job Description ]     Hardware and SaaS support.     Cisco routing and switching (Networking). CCNA, A+, Sec+, Azure certified WORKING ON: Junos Networking  Writing :      You want to pay me to write more of *waves hand* this blog? I am game .     I write B2C e-mails going out to o

Contactless Tech’s Role in the New Guest Experience ft. Intelity and The George

 Contactless hospitality technology is growing. You want to get away, and you'll be damned if a little thing like a deadly virus will stop you! But you still don't want to touch things. Ew. During the chat between INTELITY CEO Robert Stevenson and THE GEORGE Director of Operations Kerrie Hunter, you’ll learn how the historic boutique hotel has adapted a mobile-first guest experience in the wake of COVID-19—and how they see contactless technology affecting the future of hospitality. I don't remember how I found INTELITY (probably hoping to score a position with them), but I liked them enough to stay on the e-mail lists.  

Connecting IoT Devices to a Registration Server (Packet Tracer, Cisco)

In Packet Tracer, a demo software made by Cisco Systems. It certainly has changed a lot since 2016. It's almost an Olympic feat to even get started with it now, but it does look snazzy. This is for the new CCNA, that integrates, among other things, IoT and Automation, which I've worked on here before. Instructions here . I don't know if this is an aspect of "Let's make sure people are paying attention and not simply following blindly", or an oversight - The instructions indicate a Meraki Server, when a regular one is the working option here. I have to enable the IoT service on this server. Also, we assign the server an IPv4 address from a DHCP pool instead of giving it a static one. For something that handles our IoT business, perhaps that's safer; Getting a new IPv4 address every week or so is a minimal step against an intruder, but it is a step. There are no devices associated with this new server; In an earlier lab (not shown), I attached them to 'H