当前位置: 首页>>代码示例>>Python>>正文


Python VPCConnection.allocate_address方法代码示例

本文整理汇总了Python中boto.vpc.VPCConnection.allocate_address方法的典型用法代码示例。如果您正苦于以下问题:Python VPCConnection.allocate_address方法的具体用法?Python VPCConnection.allocate_address怎么用?Python VPCConnection.allocate_address使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在boto.vpc.VPCConnection的用法示例。


在下文中一共展示了VPCConnection.allocate_address方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: DiscoEIP

# 需要导入模块: from boto.vpc import VPCConnection [as 别名]
# 或者: from boto.vpc.VPCConnection import allocate_address [as 别名]
class DiscoEIP(object):
    """
    A simple class to manage EIP's
    """

    def __init__(self):
        self.vpc_conn = VPCConnection()

    def list(self):
        """Returns all of our currently allocated EIPs"""
        return self.vpc_conn.get_all_addresses()

    def allocate(self):
        """Allocates a new VPC EIP"""
        return self.vpc_conn.allocate_address(domain='vpc')

    def release(self, eip_address, force=False):
        """
        Releases an EIP.

        If it is currently associated with a machine we do not release it unless
        the force param is set.
        """
        eip = self.vpc_conn.get_all_addresses([eip_address])[0]

        if eip.association_id:
            if force:
                eip.disassociate()
            else:
                return False

        return eip.release()
开发者ID:Angakkuit,项目名称:asiaq-aws,代码行数:34,代码来源:disco_eip.py

示例2: DiscoEIP

# 需要导入模块: from boto.vpc import VPCConnection [as 别名]
# 或者: from boto.vpc.VPCConnection import allocate_address [as 别名]
class DiscoEIP(object):
    """
    A simple class to manage EIP's
    """

    def __init__(self):
        self.vpc_conn = VPCConnection()
        self.ec2_conn = boto3.client('ec2')

    def list(self):
        """Returns all of our currently allocated EIPs"""
        return self.vpc_conn.get_all_addresses()

    def allocate(self):
        """Allocates a new VPC EIP"""
        return self.vpc_conn.allocate_address(domain='vpc')

    def tag_dynamic(self, eip_allocation_id):
        """
        Tag an EIP as dynamic
        "Tags": [
            {
                "Key": "dynamic",
                "Value": "true"
            }
        ]
        """
        return throttled_call(self.ec2_conn.create_tags, Resources=[eip_allocation_id],
                              Tags=[{'Key': 'dynamic', 'Value': 'true'}])

    def release(self, eip_address, force=False):
        """
        Releases an EIP.

        If it is currently associated with a machine we do not release it unless
        the force param is set.
        """
        eip = self.vpc_conn.get_all_addresses([eip_address])[0]

        if eip.association_id:
            if force:
                eip.disassociate()
            else:
                return False

        return eip.release()

    def find_eip_address(self, eip):
        """ Finds the EIP Address for the public eip specified. """
        address_filter = {'public-ip': eip}
        try:
            return self.vpc_conn.get_all_addresses(filters=address_filter)[0]
        except IndexError:
            return None
开发者ID:amplifylitco,项目名称:asiaq,代码行数:56,代码来源:disco_eip.py

示例3:

# 需要导入模块: from boto.vpc import VPCConnection [as 别名]
# 或者: from boto.vpc.VPCConnection import allocate_address [as 别名]
print "created security groups"

reservation = connection.run_instances(image_id=nat_linux_image, instance_type='t2.micro', key_name='kaihon', subnet_id=public_subnet.id, security_group_ids=[host_security_group.id])
instance = reservation.instances[0]

connection.modify_instance_attribute(instance.id, attribute='sourceDestCheck', value=False)

print "modified instance to ignore source and destination checks"

## the following does not work
while instance.state == 'pending':
	time.sleep(5)
	instance.update()

instance.add_tag('Name', 'Nat-Instance')

public_route_table	= connection.create_route_table(private_cloud.id)
print "created public route table"
private_route_table = connection.create_route_table(private_cloud.id)
print "created private route table"

connection.create_route(public_route_table.id, '0.0.0.0/0', igw.id, None, None, None, False)
connection.create_route(private_route_table.id, '0.0.0.0/0', None, instance.id, None, None, False)

connection.associate_route_table(private_route_table.id, private_subnet.id)
connection.associate_route_table(public_route_table.id, public_subnet.id)

elastic_ip = connection.allocate_address(domain=None, dry_run=False)
elastic_ip.associate(instance_id=instance.id, network_interface_id=None, private_ip_address=None, allow_reassociation=False, dry_run=False)

开发者ID:kaiho,项目名称:awstests,代码行数:31,代码来源:create-environment.py


注:本文中的boto.vpc.VPCConnection.allocate_address方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。