|
|
@@ -227,6 +227,7 @@ While these resources are similarly unlabeled, they do not follow the same
|
|
|
general rules as the ones listed above. Firstly, they differ by the fact
|
|
|
that they take neither a `name` nor a `label` parameter at creation.
|
|
|
Moreover, each of them has other special properties.
|
|
|
+
|
|
|
The FloatingIP resource has a traditional resource ID, but instead of a
|
|
|
traditional name, its `name` property maps to its Public IP. Thus, the name
|
|
|
seen in the Azure web portal will not map to the CloudBridge name, but will
|
|
|
@@ -241,7 +242,7 @@ with no need for an Internet gateway. However, in order to keep resources
|
|
|
consistent across providers, the CloudBridge Gateway resource exists
|
|
|
regardless of provider. For Azure, the gateway object created through
|
|
|
CloudBridge will not appear on the dashboard, but will rather be a cached
|
|
|
-CloudBridge-level wrapper object.\
|
|
|
+CloudBridge-level wrapper object.
|
|
|
For a succinct comparison between AWS Gateways and Azure, see `this answer
|
|
|
<https://social.msdn.microsoft.com/Forums/en-US/
|
|
|
814ccee0-9fbb-4c04-8135-49d0aaea5f38/
|
|
|
@@ -254,15 +255,58 @@ These rules can be found within each Firewall (i.e. Security Group) in the
|
|
|
Azure web portal, and will have an automatically generated `name` of the form
|
|
|
'cb-rule-[int]'.
|
|
|
|
|
|
+AWS Dashboard
|
|
|
+-------------
|
|
|
+AWS has a particular dashboard as resources are found within different
|
|
|
+services. The following table lists the dashboard location of each resource,
|
|
|
+and the below screenshot shows how the switch between the various services.
|
|
|
+
|
|
|
++------------------------+-----+
|
|
|
+| Instance | EC2 |
|
|
|
++------------------------+-----+
|
|
|
+| MachineImage (Private) | EC2 |
|
|
|
++------------------------+-----+
|
|
|
+| Volume | EC2 |
|
|
|
++------------------------+-----+
|
|
|
+| Snapshot | EC2 |
|
|
|
++------------------------+-----+
|
|
|
+| VMFirewall | EC2 |
|
|
|
++------------------------+-----+
|
|
|
+| FloatingIP | EC2 |
|
|
|
++------------------------+-----+
|
|
|
+| KeyPair | EC2 |
|
|
|
++------------------------+-----+
|
|
|
+| VMFirewallRule | EC2 |
|
|
|
++------------------------+-----+
|
|
|
+| Network | VPC |
|
|
|
++------------------------+-----+
|
|
|
+| Subnet | VPC |
|
|
|
++------------------------+-----+
|
|
|
+| Router | VPC |
|
|
|
++------------------------+-----+
|
|
|
+| InternetGateway | VPC |
|
|
|
++------------------------+-----+
|
|
|
+| Bucket | S2 |
|
|
|
++------------------------+-----+
|
|
|
+| BucketObject | S2 |
|
|
|
++------------------------+-----+
|
|
|
+
|
|
|
+.. figure:: captures/aws-services-dash.png
|
|
|
+ :scale: 50 %
|
|
|
+ :alt: EC2, VPC, and S3
|
|
|
+
|
|
|
+ Resources in AWS are separated into three dashboards depending on the
|
|
|
+ type of service handling the resources
|
|
|
+
|
|
|
|
|
|
AWS - Labeled Resources
|
|
|
--------------------------
|
|
|
+-----------------------
|
|
|
+------------------------+-------------------+----------------+----------------+----------+
|
|
|
| Labeled Resource | AWS Resource Type | CB ID | CB Name | CB Label |
|
|
|
+------------------------+-------------------+----------------+----------------+----------+
|
|
|
| Instance | Instance | Instance ID | Instance ID | tag:Name |
|
|
|
+------------------------+-------------------+----------------+----------------+----------+
|
|
|
-| MachineImage (Private) | AMI | AMI ID | AMI Name | tag:Name |
|
|
|
+| MachineImage | AMI | AMI ID | AMI Name | tag:Name |
|
|
|
+------------------------+-------------------+----------------+----------------+----------+
|
|
|
| Network | VPC | VPC ID | VPC ID | tag:Name |
|
|
|
+------------------------+-------------------+----------------+----------------+----------+
|
|
|
@@ -314,3 +358,69 @@ web portal.
|
|
|
column.
|
|
|
|
|
|
|
|
|
+AWS - Unlabeled Resources
|
|
|
+---------------------------
|
|
|
++--------------------+--------------------+-------+---------+----------+
|
|
|
+| Unlabeled Resource | AWS Resource Type | CB ID | CB Name | CB Label |
|
|
|
++--------------------+--------------------+-------+---------+----------+
|
|
|
+| KeyPair | Key Pair | Name | Name | - |
|
|
|
++--------------------+--------------------+-------+---------+----------+
|
|
|
+| Bucket | Bucket | Name | Name | - |
|
|
|
++--------------------+--------------------+-------+---------+----------+
|
|
|
+| BucketObject | Bucket Object | Key | Key | - |
|
|
|
++--------------------+--------------------+-------+---------+----------+
|
|
|
+
|
|
|
+The resources listed above are unlabeled. They thus only have the `name`
|
|
|
+property in CloudBridge. These resources require a mandatory `name`
|
|
|
+parameter at creation, which will directly map to the unchangeable `name`
|
|
|
+property. Additionally, for these resources, the `ID` property also maps to
|
|
|
+the `name` in AWS, as these resources don't have an `ID` in the
|
|
|
+traditional sense and can be located by name. Finally, unlabeled resources
|
|
|
+support a `name` parameter for the `find` method in their corresponding
|
|
|
+services.
|
|
|
+
|
|
|
+.. figure:: captures/aws-bucket.png
|
|
|
+ :scale: 50 %
|
|
|
+ :alt: list of buckets on AWS dashboard
|
|
|
+
|
|
|
+ Buckets can be found in the Amazon S3 portal. BucketObjects are contained
|
|
|
+ within each Bucket.
|
|
|
+
|
|
|
+
|
|
|
+AWS - Special Unlabeled Resources
|
|
|
+-----------------------------------
|
|
|
++--------------------+------------------------+-------+------------------------------------------------------------------------+----------+
|
|
|
+| Unlabeled Resource | Azure Resource Type | CB ID | CB Name | CB Label |
|
|
|
++--------------------+------------------------+-------+------------------------------------------------------------------------+----------+
|
|
|
+| FloatingIP | Elastic IP | ID | [public_ip] | - |
|
|
|
++--------------------+------------------------+-------+------------------------------------------------------------------------+----------+
|
|
|
+| InternetGateway | Internet Gateway | ID | tag:Name | - |
|
|
|
++--------------------+------------------------+-------+------------------------------------------------------------------------+----------+
|
|
|
+| VMFirewallRule | Network Security Rules | ID | Generated: [direction]-[protocol]-[from_port]-[to_port]-[cidr]-[fw_id] | - |
|
|
|
++--------------------+------------------------+-------+------------------------------------------------------------------------+----------+
|
|
|
+
|
|
|
+While these resources are similarly unlabeled, they do not follow the same
|
|
|
+general rules as the ones listed above. Firstly, they differ by the fact
|
|
|
+that they take neither a `name` nor a `label` parameter at creation.
|
|
|
+Moreover, each of them has other special properties.
|
|
|
+
|
|
|
+The FloatingIP resource has a traditional resource ID, but instead of a
|
|
|
+traditional name, its `name` property maps to its Public IP.
|
|
|
+Moreover, the corresponding `find` method for Floating IPs can thus help
|
|
|
+find a resource by `Public IP Address`.
|
|
|
+
|
|
|
+In terms of the gateway, given that gateways are not their own objects in
|
|
|
+other providers, we do not treat them like labeled resources in AWS although
|
|
|
+they could support labels. Thus, the internet gateway create method does not
|
|
|
+take a name parameter, and the `name` property is set automatically to a
|
|
|
+default value. Note that since this value is stored in the tag with key Name,
|
|
|
+the AWS dashboard does allow for its modification, although that is not
|
|
|
+encouraged as the default name is expected for the
|
|
|
+`get_or_create_inet_gateway` method.
|
|
|
+
|
|
|
+Finally, Firewall Rules in AWS differ from traditional unlabeled resources
|
|
|
+by the fact that they do not take a `name` parameter at creation, and the
|
|
|
+`name` property is automatically generated from the rule's properties, as
|
|
|
+shown above. These rules can be found within each Firewall (i.e. Security
|
|
|
+Group) in the AWS EC2 portal, and will not have any name in the AWS dashboard
|
|
|
+
|