Presentation is loading. Please wait.

Presentation is loading. Please wait.

Block Storage 1: Using the normative AttachesTo Relationship Type my_server Compute Attributes private_address public_address networks ports Requirements.

Similar presentations


Presentation on theme: "Block Storage 1: Using the normative AttachesTo Relationship Type my_server Compute Attributes private_address public_address networks ports Requirements."— Presentation transcript:

1 Block Storage 1: Using the normative AttachesTo Relationship Type my_server Compute Attributes private_address public_address networks ports Requirements Attachment Capabilities Container Scalable Bindable Endpoint my_storage BlockStorage Capabilities Attachment Properties size volume_id snapshot_id OperatingSystem AttachesTo

2 Block Storage 2: Using a custom AttachesTo Relationship Type my_server Compute Attributes private_address public_address networks ports Requirements Attachment Capabilities Container Scalable Bindable Endpoint my_storage BlockStorage Capabilities Attachment Properties size volume_id snapshot_id OperatingSystem MyCustomAttachesTo

3 Block Storage 3: Using a Relationship Template of type AttachesTo my_server Compute Attributes private_address public_address networks ports Requirements Attachment Capabilities Container Scalable Bindable Endpoint my_storage BlockStorage Capabilities Attachment Properties size volume_id snapshot_id OperatingSystem storage_attachment AttachesTo

4 Block Storage 4: Single Block Storage shared by 2-Tier Application with custom AttachesTo Type and implied relationships my_web_app_tier_1 Compute Attributes private_address public_address networks ports Requirements Attachment Capabilities … … my_storage BlockStorage Capabilities Attachment Properties size volume_id snapshot_id MyAttachesTo my_web_app_tier_2 Compute Attributes private_address public_address networks ports Requirements Attachment Capabilities … … Properties location: /default_location MyAttachesTo Properties location: /some_other_data_location

5 Block Storage 5: Single Block Storage shared by 2-Tier Application with custom AttachesTo Type and explicit Relationship Templates my_web_app_tier_1 Compute Attributes private_address public_address networks ports Requirements Attachment Capabilities … … my_storage BlockStorage Capabilities Attachment Properties size volume_id snapshot_id storage_attachesto_1 MyAttachesTo my_web_app_tier_2 Compute Attributes private_address public_address networks ports Requirements Attachment Capabilities … … Properties location: /my_data_location storage_attachesto_2 MyAttachesTo Properties location: /some_other_data_location

6 Block Storage 6: Multiple Block Storage attached to different Servers my_server Compute Attributes private_address public_address networks ports Requirements Attachment Capabilities … … my_storage BlockStorage Capabilities Attachment Properties size volume_id snapshot_id AttachesTo my_server2 Compute Attributes private_address public_address networks ports Requirements Attachment Capabilities … … Properties location: AttachesTo Properties location: my_storage2 BlockStorage Capabilities Attachment Properties size volume_id snapshot_id

7 ObjectStorage 1: Creating an Object Storage service obj_store_server ObjectStorage Capabilities Endpoint Properties name: size: maxsize:

8 my_network Network Network 1: Server bound to a new network my_server Compute Attributes private_address public_address networks ports Capabilities BindsTo my_port Port Requirements Bindable Capabilities LinksTo Properties network_name: ip_version: 4 cidr: '192.168.0.0/24‘ start_ip: '192.168.0.50‘ end_ip: '192.168.0.200‘ gateway_ip: '192.168.0.1' Linkable Bindable

9 my_network Network Network 2: Server bound to an existing network my_server Compute Attributes private_address public_address networks ports Capabilities BindsTo my_port Port Requirements Bindable Capabilities LinksTo Properties network_name: Bindable Linkable

10 LinksTo my_network Network Network 3: Two servers bound to a single network my_server Compute Capabilities BindsTo my_port Port Requirements Bindable Capabilities Properties network_name: … Bindable Linkable my_server2 Compute Capabilities BindsTo Bindable my_port2 Port Requirements Bindable LinksTo Linkable Attributes … Attributes …

11 LinksTo Network 3: Two servers bound to a single network my_server Compute Capabilities BindsTo my_port1 Port Requirements Bindable Linkable my_port2 Port Requirements Bindable LinksTo Linkable Attributes … LinksTo my_network3 Network Capabilities Properties … Linkable BindsTo my_port3 Port Requirements Bindable Linkable my_network2 Network Capabilities Properties … Linkable my_network1 Network Capabilities Properties … Linkable Bindable

12 WebServer-DBMS-1: WordPress - MySQL name WebServer Properties component_version: admin_credential: Requirements Container server Compute Capabilities Container HostedOn Capabilities Container wordpress WebApplication Properties context_root: Requirements Container HostedOn mysql_dbms DBMS Properties component_version admin_credential root_password port Requirements Container HostedOn Capabilities Container mysql_database Database Properties password user port name Requirements Container HostedOn Capabilities ConnectsTo Endpoint.DB

13 WebServer-DBMS-3: Nodejs - MongoDB nodejs WebServer Artifacts nodejs_sample_app Requirements Container app_server Compute Capabilities Container HostedOn Capabilities Container paypal_sample WebApplication Properties context_root: Requirements Container HostedOn mongo_dbms DBMS Properties port Requirements Container HostedOn Capabilities Container mongo_database Database Properties password user port name Requirements Container HostedOn Capabilities ConnectsTo Endpoint.DB GitHub Repo. Artifacts: nodejs_sample_app mongo_server Compute Capabilities Container

14 Slides that follow are “in-progress” use cases and do not reflect any final use cases or designs

15 Use Case: Floating (IP) Address name LoadBalancer(.Public} Requirements Endpoint.Private 0..N Endpoint.Private 0..N (server-side endpoint, not client) Needs to know: protocol load dist. algo. some_app SoftwareComponent Requirement Container Properties TBD Capabilities Scalable Capabilities RoutesTo ConnectsTo RoutesTo ConnectsTo Endpoint.Private Virtual IP Endpoint.Private Virtual IP Floating IP implies a mapping from public to private (route created) and is part of a firewall -lifespan of floating IP stays after application dies -Load Balancer for internal use/private network (like VPN) -floating IP is assigned to virtual IP ; virtual IP lifespan is as long as the LoadBalancer -MUST MAKE SURE Floating is NOT required Capability tenant_application Internal Client (VPN) Properties algo: parm_map Endpoint.PublicFloating ip_address DNS name Scoping / aliases occurrences[0, N] public network ID associate with a port (bind to compute, load balancer or anything) 0..N Endpoint.PublicFloating ip_address DNS name Scoping / aliases occurrences[0, N] public network ID associate with a port (bind to compute, load balancer or anything) 0..N ConenctsTo web_browser Internet Client

16 Floating (IP) Address: Rejected option my_server Compute Attributes private_address public_address networks ports Requirements Attachment Capabilities Container Bindable Endpoint.Admin name FloatingAddress Requirements Endpoint.Private 1..N Endpoint.Private 1..N Properties TBD Capabilities Endpoint.Private RoutesTo OperatingSystem (server-side endpoint, not client) Needs to know: protocol load dist. algo. some_app SoftwareComponent Requirement Container Properties TBD Capabilities Scalable Capabilities LoadBalancing HostedOn Endpoint.Public

17 Use Case: Floating (IP) Address: Reverse Option LB inside Floating Address: Rejected name Floating Address Requirements Endpoint.Private 1..N Endpoint.Private 1..N Properties DNS name Scoping / aliases? (server-side endpoint, not client) Needs to know: protocol load dist. algo. Use Cases: some_app SoftwareComponent Requirement Container Properties TBD Capabilities Scalable Capabilities LoadBalancing properties: algo: parm_map LoadBalancing properties: algo: parm_map RoutesTo Endpoint.Public properties: address Endpoint.Public properties: address Endpoint.Private

18 my_server Compute Attributes private_address public_address networks ports Requirements Attachment Capabilities Container Scalable Bindable Endpoint.Admin name LoadBalancer Requirements Endpoint.Private Properties TBD Capabilities Endpoint.Private RoutesTo OperatingSystem name FloatingIP Requirements Endpoint.Public Properties TBD RoutesTo Capabilities Endpoint.Private Use Case: Floating (IP) Address and Load Balancer both as nodes: Still an option Derek: recommend not create properties for Load Balancer in node instead treat as extended properties on the Endpoint (avoid creaing new endpoint types)


Download ppt "Block Storage 1: Using the normative AttachesTo Relationship Type my_server Compute Attributes private_address public_address networks ports Requirements."

Similar presentations


Ads by Google