<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Debug School: Li Xuan</title>
    <description>The latest articles on Debug School by Li Xuan (@xyuanan_152).</description>
    <link>https://www.debug.school/xyuanan_152</link>
    <image>
      <url>https://www.debug.school/images/kCwyjpaKKYybEv06tcwQp2uySF8JXs72we5pckrsRKc/rs:fill:90:90/g:sm/mb:500000/ar:1/aHR0cHM6Ly93d3cu/ZGVidWcuc2Nob29s/L3VwbG9hZHMvdXNl/ci9wcm9maWxlX2lt/YWdlLzY4NC9kNjY5/ZTEwYi0yZDE5LTQ2/ZDYtOWFkOS1lZWYy/YmFlOGYyNTcucG5n</url>
      <title>Debug School: Li Xuan</title>
      <link>https://www.debug.school/xyuanan_152</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://www.debug.school/feed/xyuanan_152"/>
    <language>en</language>
    <item>
      <title>Assignment</title>
      <dc:creator>Li Xuan</dc:creator>
      <pubDate>Tue, 19 Sep 2023 06:10:02 +0000</pubDate>
      <link>https://www.debug.school/xyuanan_152/assignment-3p17</link>
      <guid>https://www.debug.school/xyuanan_152/assignment-3p17</guid>
      <description>&lt;p&gt;&lt;strong&gt;Keypair&lt;/strong&gt;&lt;br&gt;
variable "EC2_Key" {default="httpdserverkey"}&lt;br&gt;
resource "tls_private_key" "httpdkey" {&lt;br&gt;
  algorithm = "RSA"&lt;br&gt;
  rsa_bits  = 4096&lt;br&gt;
}&lt;br&gt;
 &lt;br&gt;
// Creating AWS key-pair&lt;br&gt;
 &lt;br&gt;
resource "aws_key_pair" "li_key" {&lt;br&gt;
  key_name   = var.EC2_Key&lt;br&gt;
  public_key = tls_private_key.httpdkey.public_key_openssh&lt;br&gt;
}&lt;br&gt;
 &lt;br&gt;
// Creating security group&lt;br&gt;
 &lt;br&gt;
resource "aws_security_group" "httpdsecurity" {&lt;br&gt;
 &lt;br&gt;
depends_on = [&lt;br&gt;
    aws_key_pair.li_key,&lt;br&gt;
  ]&lt;br&gt;
 &lt;br&gt;
  name         = "httpdsecurity"&lt;br&gt;
  description  = "allow ssh and httpd"&lt;/p&gt;

&lt;p&gt;  ingress {&lt;br&gt;
    description = "SSH Port"&lt;br&gt;
    from_port   = 22&lt;br&gt;
    to_port     = 22&lt;br&gt;
    protocol    = "tcp"&lt;br&gt;
    cidr_blocks = ["0.0.0.0/0"]&lt;br&gt;
  }&lt;br&gt;
  ingress {&lt;br&gt;
    description = "HTTPD Port"&lt;br&gt;
    from_port   = 80&lt;br&gt;
    to_port     = 80&lt;br&gt;
    protocol    = "tcp"&lt;br&gt;
    cidr_blocks = ["0.0.0.0/0"]&lt;br&gt;
  }&lt;br&gt;
 &lt;br&gt;
  egress {&lt;br&gt;
    from_port   = 0&lt;br&gt;
    to_port     = 0&lt;br&gt;
    protocol    = "-1"&lt;br&gt;
    cidr_blocks = ["0.0.0.0/0"]&lt;br&gt;
  }&lt;br&gt;
  tags = {&lt;br&gt;
    Name = "httpdsecurity"&lt;br&gt;
  }&lt;br&gt;
}&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Ubuntu&lt;/strong&gt;&lt;br&gt;
// Creating EC2 Instance and Installing Required Softwares in it.&lt;br&gt;
 &lt;br&gt;
resource "aws_instance" "HttpdInstance" {&lt;br&gt;
 &lt;br&gt;
depends_on = [&lt;br&gt;
    aws_security_group.httpdsecurity,&lt;br&gt;
  ]&lt;br&gt;
 &lt;br&gt;
  ami           = "ami-0447a12f28fddb066"&lt;br&gt;
  instance_type = "t2.micro"&lt;br&gt;
  key_name      = var.EC2_Key&lt;br&gt;
  security_groups = [ "${aws_security_group.httpdsecurity.name}" ]&lt;br&gt;
  connection {&lt;br&gt;
    type     = "ssh"&lt;br&gt;
    user     = "ec2-user"&lt;br&gt;
    private_key = tls_private_key.httpdkey.private_key_pem&lt;br&gt;
    host     = aws_instance.HttpdInstance.public_ip&lt;br&gt;
  }&lt;br&gt;
  provisioner "remote-exec" {&lt;br&gt;
    inline = [&lt;br&gt;
    "sudo apt-get update",&lt;br&gt;
      "sudo apt-get install apache2 -y",&lt;br&gt;
    "sudo HttpdServer1 start apache2",&lt;br&gt;
  ]&lt;br&gt;
  }&lt;br&gt;
 &lt;br&gt;
  tags = {&lt;br&gt;
    Name = "HttpdServer1"&lt;br&gt;
  }&lt;br&gt;
}&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Terraform</title>
      <dc:creator>Li Xuan</dc:creator>
      <pubDate>Tue, 19 Sep 2023 01:29:46 +0000</pubDate>
      <link>https://www.debug.school/xyuanan_152/terraform-4adp</link>
      <guid>https://www.debug.school/xyuanan_152/terraform-4adp</guid>
      <description>&lt;p&gt;&lt;strong&gt;Why do we need terraform&lt;/strong&gt;?&lt;br&gt;
To code all cloud infrastructure from different providers in one language.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is Providers&lt;/strong&gt;?&lt;br&gt;
Company that provide the cloud infrastructure&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What is Resources&lt;/strong&gt;?&lt;br&gt;
Various infrastructure objects such as: virtual machines, vpc.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;List out Top 8 Commands which we have learnt so far&lt;/strong&gt;?&lt;br&gt;
Terraform init&lt;br&gt;
Terraform validate &lt;br&gt;
Terraform plan&lt;br&gt;
Terraform apply &lt;br&gt;
Terraform show&lt;br&gt;
Terraform destroy&lt;br&gt;
Terraform apply —-auto-approve&lt;br&gt;
Terraform output&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What are the block we have used in .tf file? Explain in Short&lt;/strong&gt;&lt;br&gt;
Can be used to specify which part of terraform cloud we would like to configure&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
