amazonka-ec2-1.6.1: Amazon Elastic Compute Cloud SDK.

Copyright(c) 2013-2018 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay+amazonka@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.AWS.EC2.CreateVPC

Contents

Description

Creates a VPC with the specified IPv4 CIDR block. The smallest VPC you can create uses a 28 netmask (16 IPv4 addresses), and the largest uses a 16 netmask (65,536 IPv4 addresses). To help you decide how big to make your VPC, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide .

You can optionally request an Amazon-provided IPv6 CIDR block for the VPC. The IPv6 CIDR block uses a /56 prefix length, and is allocated from Amazon's pool of IPv6 addresses. You cannot choose the IPv6 range for your VPC.

By default, each instance you launch in the VPC has the default DHCP options, which includes only a default DNS server that we provide (AmazonProvidedDNS). For more information about DHCP options, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide .

You can specify the instance tenancy value for the VPC when you create it. You can't change this value for the VPC after you create it. For more information, see Dedicated Instances in the Amazon Elastic Compute Cloud User Guide .

Synopsis

Creating a Request

createVPC Source #

Arguments

:: Text

cvCidrBlock

-> CreateVPC 

Creates a value of CreateVPC with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • cvAmazonProvidedIPv6CidrBlock - Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You cannot specify the range of IP addresses, or the size of the CIDR block.
  • cvInstanceTenancy - The tenancy options for instances launched into the VPC. For default , instances are launched with shared tenancy by default. You can launch instances with any tenancy into a shared tenancy VPC. For dedicated , instances are launched as dedicated tenancy instances by default. You can only launch instances with a tenancy of dedicated or host into a dedicated tenancy VPC. Important: The host value cannot be used with this parameter. Use the default or dedicated values only. Default: default
  • cvDryRun - Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation . Otherwise, it is UnauthorizedOperation .
  • cvCidrBlock - The IPv4 network range for the VPC, in CIDR notation. For example, 10.0.0.0/16 .

data CreateVPC Source #

Contains the parameters for CreateVpc.

See: createVPC smart constructor.

Instances
Eq CreateVPC Source # 
Instance details

Defined in Network.AWS.EC2.CreateVPC

Data CreateVPC Source # 
Instance details

Defined in Network.AWS.EC2.CreateVPC

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CreateVPC -> c CreateVPC #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CreateVPC #

toConstr :: CreateVPC -> Constr #

dataTypeOf :: CreateVPC -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c CreateVPC) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CreateVPC) #

gmapT :: (forall b. Data b => b -> b) -> CreateVPC -> CreateVPC #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CreateVPC -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CreateVPC -> r #

gmapQ :: (forall d. Data d => d -> u) -> CreateVPC -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> CreateVPC -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> CreateVPC -> m CreateVPC #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CreateVPC -> m CreateVPC #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CreateVPC -> m CreateVPC #

Read CreateVPC Source # 
Instance details

Defined in Network.AWS.EC2.CreateVPC

Show CreateVPC Source # 
Instance details

Defined in Network.AWS.EC2.CreateVPC

Generic CreateVPC Source # 
Instance details

Defined in Network.AWS.EC2.CreateVPC

Associated Types

type Rep CreateVPC :: Type -> Type #

Hashable CreateVPC Source # 
Instance details

Defined in Network.AWS.EC2.CreateVPC

AWSRequest CreateVPC Source # 
Instance details

Defined in Network.AWS.EC2.CreateVPC

Associated Types

type Rs CreateVPC :: Type #

ToHeaders CreateVPC Source # 
Instance details

Defined in Network.AWS.EC2.CreateVPC

Methods

toHeaders :: CreateVPC -> [Header] #

ToPath CreateVPC Source # 
Instance details

Defined in Network.AWS.EC2.CreateVPC

ToQuery CreateVPC Source # 
Instance details

Defined in Network.AWS.EC2.CreateVPC

NFData CreateVPC Source # 
Instance details

Defined in Network.AWS.EC2.CreateVPC

Methods

rnf :: CreateVPC -> () #

type Rep CreateVPC Source # 
Instance details

Defined in Network.AWS.EC2.CreateVPC

type Rep CreateVPC = D1 (MetaData "CreateVPC" "Network.AWS.EC2.CreateVPC" "amazonka-ec2-1.6.1-GgG1M0FWcBrE5I5IM2QktE" False) (C1 (MetaCons "CreateVPC'" PrefixI True) ((S1 (MetaSel (Just "_cvAmazonProvidedIPv6CidrBlock") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Bool)) :*: S1 (MetaSel (Just "_cvInstanceTenancy") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Tenancy))) :*: (S1 (MetaSel (Just "_cvDryRun") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Bool)) :*: S1 (MetaSel (Just "_cvCidrBlock") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text))))
type Rs CreateVPC Source # 
Instance details

Defined in Network.AWS.EC2.CreateVPC

Request Lenses

cvAmazonProvidedIPv6CidrBlock :: Lens' CreateVPC (Maybe Bool) Source #

Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You cannot specify the range of IP addresses, or the size of the CIDR block.

cvInstanceTenancy :: Lens' CreateVPC (Maybe Tenancy) Source #

The tenancy options for instances launched into the VPC. For default , instances are launched with shared tenancy by default. You can launch instances with any tenancy into a shared tenancy VPC. For dedicated , instances are launched as dedicated tenancy instances by default. You can only launch instances with a tenancy of dedicated or host into a dedicated tenancy VPC. Important: The host value cannot be used with this parameter. Use the default or dedicated values only. Default: default

cvDryRun :: Lens' CreateVPC (Maybe Bool) Source #

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation . Otherwise, it is UnauthorizedOperation .

cvCidrBlock :: Lens' CreateVPC Text Source #

The IPv4 network range for the VPC, in CIDR notation. For example, 10.0.0.0/16 .

Destructuring the Response

createVPCResponse Source #

Creates a value of CreateVPCResponse with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

data CreateVPCResponse Source #

Contains the output of CreateVpc.

See: createVPCResponse smart constructor.

Instances
Eq CreateVPCResponse Source # 
Instance details

Defined in Network.AWS.EC2.CreateVPC

Data CreateVPCResponse Source # 
Instance details

Defined in Network.AWS.EC2.CreateVPC

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CreateVPCResponse -> c CreateVPCResponse #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CreateVPCResponse #

toConstr :: CreateVPCResponse -> Constr #

dataTypeOf :: CreateVPCResponse -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c CreateVPCResponse) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CreateVPCResponse) #

gmapT :: (forall b. Data b => b -> b) -> CreateVPCResponse -> CreateVPCResponse #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CreateVPCResponse -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CreateVPCResponse -> r #

gmapQ :: (forall d. Data d => d -> u) -> CreateVPCResponse -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> CreateVPCResponse -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> CreateVPCResponse -> m CreateVPCResponse #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CreateVPCResponse -> m CreateVPCResponse #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CreateVPCResponse -> m CreateVPCResponse #

Read CreateVPCResponse Source # 
Instance details

Defined in Network.AWS.EC2.CreateVPC

Show CreateVPCResponse Source # 
Instance details

Defined in Network.AWS.EC2.CreateVPC

Generic CreateVPCResponse Source # 
Instance details

Defined in Network.AWS.EC2.CreateVPC

Associated Types

type Rep CreateVPCResponse :: Type -> Type #

NFData CreateVPCResponse Source # 
Instance details

Defined in Network.AWS.EC2.CreateVPC

Methods

rnf :: CreateVPCResponse -> () #

type Rep CreateVPCResponse Source # 
Instance details

Defined in Network.AWS.EC2.CreateVPC

type Rep CreateVPCResponse = D1 (MetaData "CreateVPCResponse" "Network.AWS.EC2.CreateVPC" "amazonka-ec2-1.6.1-GgG1M0FWcBrE5I5IM2QktE" False) (C1 (MetaCons "CreateVPCResponse'" PrefixI True) (S1 (MetaSel (Just "_cvrsVPC") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe VPC)) :*: S1 (MetaSel (Just "_cvrsResponseStatus") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Int)))

Response Lenses

cvrsVPC :: Lens' CreateVPCResponse (Maybe VPC) Source #

Information about the VPC.

cvrsResponseStatus :: Lens' CreateVPCResponse Int Source #

  • - | The response status code.