<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Let&#39;s Learn DevOps</title>
    <link>https://letslearndevops.com/</link>
    <description>Recent content on Let&#39;s Learn DevOps</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <copyright>Lets Learn DevOps</copyright>
    <lastBuildDate>Tue, 25 Aug 2020 14:23:22 +0100</lastBuildDate>
    
	<atom:link href="https://letslearndevops.com/index.xml" rel="self" type="application/rss+xml" />
    
    
    <item>
      <title>Adding an ebs volume to an AWS EC2 instance and format as GPT</title>
      <link>https://letslearndevops.com/2020/08/25/adding_gpt_ebs_volume_to_ec2/</link>
      <pubDate>Tue, 25 Aug 2020 14:23:22 +0100</pubDate>
      
      <guid>https://letslearndevops.com/2020/08/25/adding_gpt_ebs_volume_to_ec2/</guid>
      <description>In this post i&amp;rsquo;m going to show you how to mount a volume larger than 2TB to a Linux EC2 instance. Make sure you back up your data before proceeding! Using the standard MBR Partitioning scheme we are limited to a block size of 2TB, docs here..
This means as time goes on you can end up in a situation where you have something like this..Arrghh! Not pretty, and a total pain to restore from snapshots.</description>
    </item>
    
    <item>
      <title>Using the format function, Terraform &gt; 0.12</title>
      <link>https://letslearndevops.com/2019/10/20/create-s3-bucket/</link>
      <pubDate>Sun, 20 Oct 2019 14:23:22 +0100</pubDate>
      
      <guid>https://letslearndevops.com/2019/10/20/create-s3-bucket/</guid>
      <description>In this post we are going to create an S3 bucket with a random name using the Terraform format function. As usual we have our provider block.
# Provider provider &amp;quot;aws&amp;quot; { region = &amp;quot;eu-west-1&amp;quot; }  Next we create a random string with the resource &amp;quot;random_id&amp;quot; 5 random bytes which produces 12 bits of randomness.
# Create a random string resource &amp;quot;random_id&amp;quot; &amp;quot;random_string&amp;quot; { byte_length = 5 }  Next we create a variable for the bucket name</description>
    </item>
    
    <item>
      <title>AWS ALB Redirect using Terraform</title>
      <link>https://letslearndevops.com/2019/08/20/aws-alb-redirect/</link>
      <pubDate>Tue, 20 Aug 2019 11:14:59 +0100</pubDate>
      
      <guid>https://letslearndevops.com/2019/08/20/aws-alb-redirect/</guid>
      <description>Redirects with AWS ALB This is a great new feature from AWS. No more need to spin up a separate server to do redirects.
 Application Load Balancer now supports two new actions: redirect and fixed-response. You can configure these actions as part of the content-based routing rules, enabling you to offload this functionality to the load balancer. This simplifies deployments while benefiting from the scale, the availability, and the reliability of Elastic Load Balancing.</description>
    </item>
    
    <item>
      <title>Useful Linux Commands</title>
      <link>https://letslearndevops.com/2019/04/03/useful-linux-commands/</link>
      <pubDate>Wed, 03 Apr 2019 09:12:01 +0100</pubDate>
      
      <guid>https://letslearndevops.com/2019/04/03/useful-linux-commands/</guid>
      <description>Add an extra line to a number of files echo &amp;quot;LINE TO ADD&amp;quot; | tee -a FILE*  Run a command recursivly on an entire directory find . -type f -print0 | xargs -0 dos2unix  Simple for loop This is useful if you want to run the same command on a list of IP addresses Here we have a file called ip-list
192.168.1.1 192.168.1.2 192.168.1.3 192.168.1.4 192.168.1.5  And here we have the script that will loop through the list if IP addresses and perform a specific command</description>
    </item>
    
    <item>
      <title>ECS Cluster With Dynamic Port Mappings Using Terraform</title>
      <link>https://letslearndevops.com/2018/12/24/ecs-cluster/</link>
      <pubDate>Mon, 24 Dec 2018 14:21:06 +0000</pubDate>
      
      <guid>https://letslearndevops.com/2018/12/24/ecs-cluster/</guid>
      <description>Creating an ECS cluster with Terraform AWS introduced dynamic port mapping for ECS around 18 months ago. This is a very useful feature that allows you to run multiple containers with the same port on the same host. This feature is only avaliable with the AWS application load balancer. The ALB automatically detects and reconfigures itself to map to a port inbetween 32768 and 65535.
So let&amp;rsquo;s automate creating an ECS cluster with Terraform.</description>
    </item>
    
    <item>
      <title>Getting Your Own Public IP With Terraform </title>
      <link>https://letslearndevops.com/2018/09/24/getting-own-ip/</link>
      <pubDate>Mon, 24 Sep 2018 08:27:13 +0100</pubDate>
      
      <guid>https://letslearndevops.com/2018/09/24/getting-own-ip/</guid>
      <description>This is a very handy trick to get your own public IP within Terrafrom. Very useful if your public IP changes a lot and you want to use it with a security group.
provider &amp;quot;aws&amp;quot; { region = &amp;quot;eu-west-1&amp;quot; } data &amp;quot;external&amp;quot; &amp;quot;myipaddr&amp;quot; { program = [&amp;quot;bash&amp;quot;, &amp;quot;-c&amp;quot;, &amp;quot;curl -s &#39;https://ipinfo.io/json&#39;&amp;quot;] } output &amp;quot;my_public_ip&amp;quot; { value = &amp;quot;${data.external.myipaddr.result.ip}&amp;quot; }  The simply run terrafrom init to download your provider and then terrafrom apply to run.</description>
    </item>
    
    <item>
      <title>Terraform and S3 Lifecycle Rules</title>
      <link>https://letslearndevops.com/2018/09/19/terraform-and-s3-lifecycle-rules/</link>
      <pubDate>Wed, 19 Sep 2018 10:37:25 +0100</pubDate>
      
      <guid>https://letslearndevops.com/2018/09/19/terraform-and-s3-lifecycle-rules/</guid>
      <description>Object Lifecycle Management in S3 is used to manage your objects so that they are stored cost effectively throughout their lifecycle. Simply put, this means that you can save money if you move your S3 files onto cheaper storage and then eventually delete the files as they age or are accessed less frequently.
There are two types of actions:
 Transition actions  Define when objects transition to another storage class.</description>
    </item>
    
    <item>
      <title>Get The Latest AWS AMI IDs With Terraform</title>
      <link>https://letslearndevops.com/2018/08/23/terraform-get-latest-centos-ami/</link>
      <pubDate>Thu, 23 Aug 2018 20:08:28 +0100</pubDate>
      
      <guid>https://letslearndevops.com/2018/08/23/terraform-get-latest-centos-ami/</guid>
      <description>Querying the AWS API for the latest AMIs This is a great time saver, it stops you from having to hard code any AMI IDs within Terraform. This solution will also enable you to get the latest AMIs in the region you&amp;rsquo;re working in by dynamically querying the AWS API. Good stuff!
You can manually get the latest CentOS AMI IDs from here, the latest ECS AMI IDs from here, and the latest Ubuntu AMI IDs from here.</description>
    </item>
    
    <item>
      <title>Run Docker as Non Root</title>
      <link>https://letslearndevops.com/2018/08/23/run-docker-as-non-root/</link>
      <pubDate>Thu, 23 Aug 2018 14:30:18 +0100</pubDate>
      
      <guid>https://letslearndevops.com/2018/08/23/run-docker-as-non-root/</guid>
      <description>Want to run docker as non root user? This has a variaty of use cases, mine specifically was that I was using docker to download some files around and wanted another service with different permissions to access those files. Another use case is when building software in docker, you need your Jenkins build server to be able to access the files in the next step of the build.
First you need to add a docker group and add your user to it</description>
    </item>
    
    <item>
      <title>Main</title>
      <link>https://letslearndevops.com/page/main/</link>
      <pubDate>Sun, 21 Jan 2018 11:46:32 +0000</pubDate>
      
      <guid>https://letslearndevops.com/page/main/</guid>
      <description>##Welcome
Page hoder</description>
    </item>
    
    <item>
      <title>Terraform Workspaces</title>
      <link>https://letslearndevops.com/2017/08/11/terraform-workspaces/</link>
      <pubDate>Fri, 11 Aug 2017 12:48:38 +0100</pubDate>
      
      <guid>https://letslearndevops.com/2017/08/11/terraform-workspaces/</guid>
      <description>Terraform Workspaces are used to manage your state files in different environments. In this Terraform workspace demo I&amp;rsquo;m going to be using the files from demo.3 from the following git repo https://github.com/terraformtraining/terraform.git and using version &amp;gt; 0.10 of Terraform.
[markb@feddy demo.3] $ terraform -v Terraform v0.10.0  So to start off with I have the following files within my working folder.
-rw-rw-r--. 1 markb markb 246 Jul 29 12:20 deploy_website.sh -rw-rw-r--.</description>
    </item>
    
    <item>
      <title>Terraform And Remote State With S3</title>
      <link>https://letslearndevops.com/2017/07/29/terraform-and-remote-state-with-s3/</link>
      <pubDate>Sat, 29 Jul 2017 19:51:58 +0100</pubDate>
      
      <guid>https://letslearndevops.com/2017/07/29/terraform-and-remote-state-with-s3/</guid>
      <description>Storing your Terraform state file locally is a bad idea. Every time you apply Terrafrom it writes a copy of the current state of your infrastructure to a file called terraform.tfstate if this file is already present then it will move the old state file to a file called terraform.tfstate.backup and will create a new terraform.tfstate file. This presents three problems.
 When stored locally the state files can be lost or deleted.</description>
    </item>
    
    <item>
      <title>Projects</title>
      <link>https://letslearndevops.com/page/project/</link>
      <pubDate>Fri, 28 Jul 2017 13:52:51 +0100</pubDate>
      
      <guid>https://letslearndevops.com/page/project/</guid>
      <description></description>
    </item>
    
    <item>
      <title>How To Create A VPC With Terraform</title>
      <link>https://letslearndevops.com/2017/07/24/how-to-create-a-vpc-with-terraform/</link>
      <pubDate>Mon, 24 Jul 2017 18:22:31 +0100</pubDate>
      
      <guid>https://letslearndevops.com/2017/07/24/how-to-create-a-vpc-with-terraform/</guid>
      <description>How to create a new Virtual Private Cloud using Terraform on AWS. This new VPC will contain the following -
 Two private subnets. Two public subnets. Internet Gateway. Routing tables (internet access) for the public subnets. Created in the Oregon AWS region. NAT Gateway for the private subnets (optional).  If you are running applications in production it&amp;rsquo;s a very good idea to have all your servers in a private subnet listening behind a load balancer.</description>
    </item>
    
    <item>
      <title>How To Secure AWS Terraform Credentials</title>
      <link>https://letslearndevops.com/2017/07/24/how-to-secure-terraform-credentials/</link>
      <pubDate>Mon, 24 Jul 2017 16:03:54 +0100</pubDate>
      
      <guid>https://letslearndevops.com/2017/07/24/how-to-secure-terraform-credentials/</guid>
      <description>In this post I am going to look at securing AWS Terraform API keys. Method one  The first method involves installing the AWS CLI. I&amp;rsquo;ll then add my AWS API keys to /home/markb/.aws/credentials Then instructing Terraform to use a particular profile when it runs.  So first I install the AWS CLI.
sudo yum install python-pip -y pip install --user awscli Then we run aws configure.
[markb@feddy demo.2] $ aws configure AWS Access Key ID [None]: ENTER-YOUR-ACCESS-KEY-HERE AWS Secret Access Key [None]: ENTER-YOUR-SECRET-KEY-HERE Default region name [None]: us-west-2 Default output format [None]: The joy of the .</description>
    </item>
    
    <item>
      <title>How To Set Up Terraform Credentials</title>
      <link>https://letslearndevops.com/2017/07/24/how-to-set-up-terraform-credentials/</link>
      <pubDate>Mon, 24 Jul 2017 13:24:29 +0100</pubDate>
      
      <guid>https://letslearndevops.com/2017/07/24/how-to-set-up-terraform-credentials/</guid>
      <description>Signing up for Amazon Web Services To sign up to Amazon Web Services just click here. You will need a credit card to sign up and it&amp;rsquo;s also advisable to read about [Amazon Free Tier Limits] (http://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/free-tier-limits.html) so that you dont incur any unexpected charges. With a new account you can run a t2.micro or t1.micro Linux and Microsoft server for one year.
 AMIs that are eligible for the free tier are marked in the Amazon EC2 Launch Wizard as Free tier eligible.</description>
    </item>
    
    <item>
      <title>How To Install Terraform</title>
      <link>https://letslearndevops.com/2017/07/23/how-to-install-terraform/</link>
      <pubDate>Sun, 23 Jul 2017 18:43:54 +0100</pubDate>
      
      <guid>https://letslearndevops.com/2017/07/23/how-to-install-terraform/</guid>
      <description>Install Terraform Terraform is distributed as a binary package for all supported platforms and architectures. Older versions are avaliable here.
Installing Terraform is a relatively trivial affair. Simply head over to Terraform select your operating system and download the corresponding zip file. Once downloaded extract the file to a convienient location on your computer and add to your path.
Terraform version history is located here.
Install Terraform on Linux Method 1 The easiest way to install Terraform on Linux is download the file using wget then unzip the file and then move to /usr/local/bin/.</description>
    </item>
    
    <item>
      <title>About Me</title>
      <link>https://letslearndevops.com/page/about/</link>
      <pubDate>Mon, 03 Jul 2017 02:13:50 +0000</pubDate>
      
      <guid>https://letslearndevops.com/page/about/</guid>
      <description>About I&amp;rsquo;ve been working in IT for over 10 years and have extensive experience in a range of positions.
I started with user support, then moved into managing infrastructure for large organisations.
I’m currently a Sysadmin/DevOps Engineer for ONYX InSight based in Nottingham, England.
I spend most of my time working with Amazon Web Services, CentOS,Terraform and Docker.</description>
    </item>
    
    <item>
      <title>Contact</title>
      <link>https://letslearndevops.com/page/contact/</link>
      <pubDate>Fri, 03 Apr 2015 02:13:50 +0000</pubDate>
      
      <guid>https://letslearndevops.com/page/contact/</guid>
      <description>Contact Hello, you can contact me via LinkedIn or click the mail icon at the top of the page.</description>
    </item>
    
  </channel>
</rss>