Как да

Как да настроите AWS VPC мрежа с CloudFormation

Как да настроите AWS VPC мрежа с CloudFormation

Статията ръководи потребителя за автоматизиране на внедряването на инфраструктура на AWS с помощта на CloudFormation. Шаблонът специално автоматизира създаването на:

Предпоставки

Шаблонът за облачна формация

Следният скрипт се използва за автоматизиране на създаването на мрежова инфраструктура, както е обяснено по-горе. Потребителят може да модифицира шаблона, за да отговаря на неговите предпочитани нужди. Частите, които трябва да бъдат модифицирани, включват:

--- AWSTemplateFormatVersion: "2010-09-09" Описание: Шаблон за създаване на нашата тестова среда Мрежова архитектура с 4 частни подмрежи и 2 публични подмрежи Параметри: VPCBlock: Тип: Описание на низа: CIDR блокът за VPC по подразбиране: 192.168.0.0/16 PrivateSubnet01Block: Тип: String Описание: CIDR блокът за частната подмрежа 01 По подразбиране: 192.168.1.0/26 PrivateSubnet02Block: Тип: String Описание: CIDR блокът за частната подмрежа 02 По подразбиране: 192.168.1.64/26 PrivateSubnet03Block: Тип: String Описание: CIDR блокът за частната подмрежа 03 По подразбиране: 192.168.1.128/26 PrivateSubnet04Block: Тип: String Описание: CIDR блокът за частната подмрежа 04 По подразбиране: 192.168.1.192/26 PublicSubnet01Block: Тип: String Описание: CIDR блокът за публичната подмрежа 01 По подразбиране: 192.168.0.0/28 PublicSubnet02Block: Тип: String Описание: CIDR блокът за публичната подмрежа 02 По подразбиране: 192.168.0.16/28 Ресурси: VPC: Тип: AWS :: EC2 :: VPC свойства: CidrBlock: !Ref VPCBlock EnableDnsHostnames: true EnableDnsSupport: true InstanceTenancy: default Tags: - Key: Име Стойност: eu-central-1-test-Environment-VPC - Key: created По стойност: Maureen Barasa - Key: Project Value: test-blog - Key: Стойност на околната среда: тест IGW: Тип: AWS :: EC2 :: Свойства на InternetGateway: Етикети: - Ключ: Име Стойност: eu-central-1-test-Environment-IGW - Ключ: създаден По стойност: Maureen Barasa - Ключ: Стойност на проекта: test-blog - Ключ: Стойност на околната среда: тест VPCGatewayAttachment: Тип: AWS :: EC2 :: VPCGatewayAttachment Свойства: InternetGatewayId: !Ref IGW VpcId: !Ref VPC NatGateway01: DependsOn: - PublicSubnet01 - VPCGatewayAttachment Type: AWS :: EC2 :: NatGateway Properties: AllocationId: eipalloc - *************** SubnetId: !Ref PublicSubnet01 Тагове: - Ключ: Име Стойност: eu-central-1-test-Environment-NatGateway01 - Ключ: createdBy Стойност: Maureen Barasa - Ключ: Стойност на проекта: test-blog - Ключ: Стойност на околната среда: тест NatGateway02: DependsOn: - PublicSubnet02 - VPCGatewayAttachment Type: AWS :: EC2 :: NatGateway Properties: AllocationId: eipalloc - ****************** SubnetId: !Ref PublicSubnet02 Тагове: - Ключ: Име Стойност: eu-central-1-test-Environment-NatGateway02 - Ключ: createdBy Стойност: Maureen Barasa - Ключ: Стойност на проекта: test-blog - Ключ: Стойност на околната среда: test PublicRouteTable: Тип: AWS :: EC2 :: Свойства на RouteTable: VpcId: !Ref VPC Tags: - Ключ: Име Стойност: eu-central-1-test-Environment-PublicRouteTable - Ключ: createdBy Стойност: Maureen Barasa - Ключ: Стойност на проекта: test-blog - Ключ: Стойност на околната среда: тест PrivateRouteTable01: Тип: AWS :: EC2 :: Свойства на RouteTable: VpcId: !Ref VPC Tags: - Ключ: Име Стойност: eu-central-1-test-Environment-PrivateRouteTable01 - Ключ: createdBy Стойност: Maureen Barasa - Ключ: Стойност на проекта: test-blog - Ключ: Стойност на околната среда: тест PrivateRouteTable02: Тип: AWS :: EC2 :: Свойства на RouteTable: VpcId: !Ref VPC Tags: - Key: Име Стойност: eu-central-1-test-Environment-PrivateRouteTable02 - Key: createdBy Value: Maureen Barasa - Key: Project Value: test-blog - Key: Environment Value: test PublicRoute: DependsOn: VPCGatewayAttachment Тип: AWS :: EC2 :: Свойства на маршрута: RouteTableId: !Ref PublicRouteTable DestinationCidrBlock: 0.0.0.0/0 GatewayId: !Ref IGW PrivateRoute01: DependsOn: - VPCGatewayAttachment - NatGateway01 Тип: AWS :: EC2 :: Свойства на маршрута: RouteTableId: !Ref PrivateRouteTable01 DestinationCidrBlock: 0.0.0.0/0 NatGatewayId: !Ref NatGateway01 PrivateRoute02: DependsOn: - VPCGatewayAttachment - NatGateway02 Тип: AWS :: EC2 :: Свойства на маршрута: RouteTableId: !Ref PrivateRouteTable02 DestinationCidrBlock: 0.0.0.0/0 NatGatewayId: !Ref NatGateway02 PrivateSubnet01: Тип: AWS :: EC2 :: Свойства на подмрежата: НаличностЗона: eu-central-1a CidrBlock: !Ref PrivateSubnet01Block VpcId: !Ref VPC Тагове: - Ключ: Име Стойност: eu-central-1-test-Environment-PrivateSubnet01 - Ключ: създаден По стойност: Maureen Barasa - Ключ: Стойност на проекта: test-blog - Ключ: Стойност на околната среда: тест PrivateSubnet02: Тип: AWS :: EC2 :: Свойства на подмрежата: НаличностЗона: eu-central-1b CidrBlock: !Ref PrivateSubnet02Block VpcId: !Ref VPC Tags: - Ключ: Име Стойност: eu-central-1-test-Environment-PrivateSubnet02 - Ключ: createdBy Стойност: Maureen Barasa - Ключ: Стойност на проекта: test-blog - Ключ: Стойност на околната среда: тест PrivateSubnet03: Тип: AWS :: EC2 :: Свойства на подмрежата: НаличностЗона: eu-central-1a CidrBlock: !Ref PrivateSubnet03Block VpcId: !Ref VPC Тагове: - Ключ: Име Стойност: eu-central-1-test-Environment-PrivateSubnet03 - Ключ: createdBy Стойност: Maureen Barasa - Ключ: Стойност на проекта: test-blog - Ключ: Стойност на околната среда: тест PrivateSubnet04: Тип: AWS :: EC2 :: Свойства на подмрежата: НаличностЗона: eu-central-1b CidrBlock: !Ref PrivateSubnet04Block VpcId: !Ref VPC Tags: - Ключ: Име Стойност: eu-central-1-test-Environment-PrivateSubnet04 - Ключ: createdBy Стойност: Maureen Barasa - Ключ: Стойност на проекта: test-blog - Ключ: Стойност на околната среда: тест PublicSubnet01: Тип: AWS :: EC2 :: Свойства на подмрежата: MapPublicIpOnLaunch: true AvailabilityZone: eu-central-1a CidrBlock: !Ref PublicSubnet01Block VpcId: !Ref VPC Tags: - Ключ: Име Стойност: eu-central-1-test-Environment-PublicSubnet01 - Ключ: createdBy Value: Maureen Barasa - Ключ: Стойност на проекта: test-blog - Ключ: Стойност на околната среда: test PublicSubnet02: Тип: AWS :: EC2 :: Свойства на подмрежата: MapPublicIpOnLaunch: true AvailabilityZone: eu-central-1b CidrBlock: !Ref PublicSubnet02Block VpcId: !Ref VPC Tags: - Key: Име на стойност: eu-central-1-test-Environment-PublicSubnet02 - Key: createdBy Value: Maureen Barasa - Key: Project Value: test-blog - Key: Environment Value: test PublicSubnet01RouteTableAssociation: Type: AWS :: EC2 :: SubnetRouteTableAssociation Properties: SubnetId: !Ref PublicSubnet01 RouteTableId: !Ref PublicRouteTable PublicSubnet02RouteTableAssociation: Тип: AWS :: EC2 :: SubnetRouteTableAssociation Свойства: SubnetId: !Ref PublicSubnet02 RouteTableId: !Ref PublicRouteTable PrivateSubnet01RouteTableAssociation: Тип: AWS :: EC2 :: SubnetRouteTableAssociation Свойства: SubnetId: !Ref PrivateSubnet01 RouteTableId: !Ref PrivateRouteTable01 PrivateSubnet02RouteTableAssociation: Тип: AWS :: EC2 :: SubnetRouteTableAssociation Свойства: SubnetId: !Ref PrivateSubnet02 RouteTableId: !Ref PrivateRouteTable02 PrivateSubnet03RouteTableAssociation: Тип: AWS :: EC2 :: SubnetRouteTableAssociation Свойства: SubnetId: !Ref PrivateSubnet03 RouteTableId: !Ref PrivateRouteTable01 PrivateSubnet04RouteTableAssociation: Тип: AWS :: EC2 :: SubnetRouteTableAssociation Свойства: SubnetId: !Ref PrivateSubnet04 RouteTableId: !Ref PrivateRouteTable02 Изходи: PublicSubnet01Id: Описание: Публична подмрежа 01 ID във VPC Стойност: !Ref PublicSubnet01 Експорт: Име: !Под "$ AWS :: StackName -PublicSubnet01Id" PublicSubnet02Id: Описание: Идентификатор на публична подмрежа 02 във VPC Стойност: !Ref PublicSubnet02 Експорт: Име: !Под "$ AWS :: StackName -PublicSubnet02Id" PrivateSubne01tId: Описание: Частна подмрежа 01 ID във VPC Стойност: !Ref PrivateSubnet01 Експорт: Име: !Под "$ AWS :: StackName -PrivateSubnetId" PrivateSubne02tId: Описание: Частна подмрежа 02 ID във VPC Стойност: !Ref PrivateSubnet02 Експорт: Име: !Под "$ AWS :: StackName -PrivateSubnet02Id" PrivateSubne03tId: Описание: Частна подмрежа 03 ID във VPC Стойност: !Ref PrivateSubnet03 Експорт: Име: !Под "$ AWS :: StackName -PrivateSubnet03Id" PrivateSubne04tId: Описание: Идентификатори на частна подмрежа във VPC Стойността: !Ref PrivateSubnet04 Експорт: Име: !Под "$ AWS :: StackName -PrivateSubnet04Id" VpcId: Описание: Стойността на VPC Id: !Ref VPC Export: Име: !Под "$ AWS :: StackName -VPCID"

Обяснен шаблон / скрипт

Нашият шаблон има три раздела:

Разделът за параметри: Разделът позволява на потребителя да въвежда персонализирани стойности за ресурсите, които създава. Най-добре е да се използва с динамични стойности. Тези стойности, които ще се променят редовно във вашия шаблон.

Раздел „Ресурси“: Този раздел позволява на потребителя да дефинира ресурсите на AWS, които иска да създаде, използвайки шаблона.

Изходната секция: Разделът съдържа имената на създадените ресурси. Също така, ако е необходимо да експортирате тези ресурси, за да бъдат използвани в други стекове, изходният раздел предоставя тази опция чрез сесията за експортиране.

Създайте стек за изпълнение на шаблона

След като приключите с редактирането на вашия скрипт / шаблон за вход в акаунта ви в AWS облак. Под търсене на услуги за CloudFormation. След това на конзолата CloudFormation щракнете върху създаване на стек според изображението по-долу.

Създайте стека на CloudFormation

От падащото меню изберете създаване на стек с нови ресурси. Както по-долу изображение.

Създайте стека на CloudFormation с нови ресурси

В прозореца за създаване на стек изберете качване на шаблон. След това изберете файла / скрипта, който сте създали в горния раздел. Щракнете върху следващия.

Качете шаблона на CloudFormation

Прозорецът, който се отваря, позволява на потребителя да въведе името на стека и параметрите на шаблона. Тук Потребителят може да реши да промени стойностите по подразбиране на шаблона на свои собствени персонализирани стойности. Когато сте готови, щракнете напред.

Въведете име и параметри на стека

В следващия прозорец конфигурирайте опциите за стека. Това включва етикетите, политиката на стека, конфигурациите за връщане и т.н. След като приключите, щракнете напред. Това ще отвори прозорец за преглед, за да проверите всички конфигурации, направени по-рано. Ако потребителят е доволен, той може да щракне върху създаване на стека.

Също така, тъй като ресурсите се създават с помощта на шаблона, потребителят може да гледа събитията в конзолата CloudFormation. Вижте изображението по-долу.

Гледайте събития за създаване на стека

Когато създаването на шаблона завърши, ще имате всички ресурси в този шаблон. Вашата мрежова архитектура вече е готова.

Важни връзки

https: // docs.aws.амазонка.com / AWSCloudFormation / latest / UserGuide / parameters-section-structure.html

https: // docs.aws.амазонка.com / AWSCloudFormation / latest / UserGuide / cfn-ug.pdf

Щастлива сграда

Още статии за AWS:

Как да предаваме дневници в AWS от CloudWatch към ElasticSearch

Настройте Elasticsearch клъстер с Kibana на AWS

Дайте достъп на разработчиците до клъстер EKS Kubernetes

Инсталирайте Istio Service Mesh в клъстер EKS Kubernetes

Как да експортирам и импортирам изображения / контейнери от Docker
В това ръководство ще разгледаме как можете да експортирате и импортирате Docker изображения и контейнери. Преди да можете да експортирате контейнер н...
Внедрете Kubernetes Cluster на CentOS 7 / CentOS 8 с Ansible и Calico CNI
Искате да настроите три възела Kubernetes Cluster на CentOS 7 / CentOS 8 за вашите проекти за развитие - 1 Учител и Две или повече работни възли?. Тов...
Как да конфигурирам репликация на OpenLDAP сървър на CentOS 8
В това ръководство ще разгледаме как да настроим репликация на OpenLDAP доставчик-потребител (официално репликация Master-Slave) на CentOS 8. При този...