- Timestamp:
- Sep 10, 2019 6:27:33 PM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/doc/manual/en_US/SDKRef.xml
r77977 r80711 2549 2549 <xi:include href="SDKRef_apiref.xml" xpointer="xpointer(/book/*)" 2550 2550 xmlns:xi="http://www.w3.org/2001/XInclude" /> 2551 2552 <chapter id="cloud"> 2553 <title>Working with the Cloud</title> 2554 2555 <para>VirtualBox supports and goes towards the Oracle tendencies like "move to the Cloud".</para> 2556 2557 <sect1> 2558 <title>OCI features</title> 2559 <para>VirtualBox supports the Oracle Cloud Infrastructure (OCI). See the interfaces: 2560 <link linkend="ICloudClient">ICloudClient</link>, 2561 <link linkend="ICloudProvider">ICloudProvider</link>, 2562 <link linkend="ICloudProfile">ICloudProfile</link>, 2563 <link linkend="ICloudProviderManager">ICloudProviderManager</link>. 2564 </para> 2565 <para>Each cloud interface has own implementation to support OCI features. There are everal functions in the implementation 2566 which should be explained in details because OCI requires some special data or settings. 2567 </para> 2568 <para> 2569 Also see the enumeration <link linkend="VirtualSystemDescriptionType">VirtualSystemDescriptionType</link> for the possible values. 2570 </para> 2571 </sect1> 2572 2573 <sect1> 2574 <title>Function ICloudClient::exportVM</title> 2575 <para> 2576 See the <link linkend="ICloudClient__exportVM">ICloudClient::exportVM</link>. 2577 The function exports an existing virtual machine into OCI. The final result of this operation is creation a custom image 2578 from the bootable image of VM. The Id of created image is returned in the parameter "description" (which is 2579 <link linkend="IVirtualSystemDescription">IVirtualSystemDescription</link>) as an entry with the type 2580 VirtualSystemDescriptionType::CloudImageId. The standard steps here are: 2581 <itemizedlist> 2582 <listitem> 2583 <para>Upload VBox image to OCI Object Storage.</para> 2584 </listitem> 2585 <listitem> 2586 <para>Create OCI custom image from the uploaded object.</para> 2587 </listitem> 2588 </itemizedlist> 2589 Parameter "description" must contain all information and settings needed for creation a custom image in OCI. 2590 At least next entries must be presented there before the call: 2591 <itemizedlist> 2592 <listitem> 2593 <para>VirtualSystemDescriptionType::Name - Name of new instance in OCI.</para> 2594 </listitem> 2595 <listitem> 2596 <para>VirtualSystemDescriptionType::HardDiskImage - The local path or id of bootable VM image.</para> 2597 </listitem> 2598 <listitem> 2599 <para>VirtualSystemDescriptionType::CloudBucket - A cloud bucket name where the exported image is uploaded.</para> 2600 </listitem> 2601 <listitem> 2602 <para>VirtualSystemDescriptionType::CloudImageDisplayName - A name which is assigned to a new custom image in the OCI.</para> 2603 </listitem> 2604 <listitem> 2605 <para>VirtualSystemDescriptionType::CloudKeepObject - Whether keep or delete an uploaded object after its usage.</para> 2606 </listitem> 2607 <listitem> 2608 <para>VirtualSystemDescriptionType::CloudLaunchInstance - Whether launch or not a new instance.</para> 2609 </listitem> 2610 </itemizedlist> 2611 </para> 2612 </sect1> 2613 2614 <sect1> 2615 <title>Function ICloudClient::launchVM</title> 2616 <para> 2617 See the <link linkend="ICloudClient__launchVM">ICloudClient::launchVM</link>. 2618 The function launches a new instance in OCI with a previously created custom image as a bootable image in OCI. 2619 The final result of this operation is a running instance. The id of created instance is returned 2620 in the parameter "description" (which is <link linkend="IVirtualSystemDescription">IVirtualSystemDescription</link>) 2621 as an entry with the type VirtualSystemDescriptionType::CloudInstanceId. Parameter "description" must contain all information 2622 and settings needed for creation a new instance in OCI. At least next entries must be presented there before the call: 2623 <itemizedlist> 2624 <listitem> 2625 <para>VirtualSystemDescriptionType::Name - Name of new instance in OCI.</para> 2626 </listitem> 2627 <listitem> 2628 <para>VirtualSystemDescriptionType::CloudOCISubnet - OCID of existing subnet in OCI which will be used by the instance.</para> 2629 </listitem> 2630 <listitem> 2631 <para>VirtualSystemDescriptionType::CloudImageId - OCID of custom image used as a bootable image for the instance.</para> 2632 </listitem> 2633 <listitem> 2634 <para> VirtualSystemDescriptionType::CloudBootDiskSize - The size of instance bootable image in GB.</para> 2635 </listitem> 2636 <listitem> 2637 <para>VirtualSystemDescriptionType::CloudInstanceShape - The shape of instance according to OCI documentation, 2638 defines the number of CPUs and RAM memory.</para> 2639 </listitem> 2640 <listitem> 2641 <para>VirtualSystemDescriptionType::CloudLaunchInstance - Whether launch or not a new instance.</para> 2642 </listitem> 2643 <listitem> 2644 <para>VirtualSystemDescriptionType::CloudDomain - Availability domain in OCI where new instance is created.</para> 2645 </listitem> 2646 <listitem> 2647 <para>VirtualSystemDescriptionType::CloudPublicIP - Whether the instance will have a public IP or not.</para> 2648 </listitem> 2649 </itemizedlist> 2650 </para> 2651 </sect1> 2652 2653 <sect1> 2654 <title>Function ICloudClient::getInstanceInfo</title> 2655 <para> 2656 See the <link linkend="ICloudClient__getInstanceInfo">ICloudClient::getInstanceInfo</link>. 2657 The function takes an instance id (parameter "uid"), finds the requested instance in OCI and gets back information 2658 about the found instance in the parameter "description" (which is <link linkend="IVirtualSystemDescription">IVirtualSystemDescription</link>) 2659 The entries with next types will be presented in the object: 2660 <itemizedlist> 2661 <listitem> 2662 <para>VirtualSystemDescriptionType::Name - Displayed name of the instance.</para> 2663 </listitem> 2664 <listitem> 2665 <para>VirtualSystemDescriptionType::CloudDomain - Availability domain in OCI.</para> 2666 </listitem> 2667 <listitem> 2668 <para>VirtualSystemDescriptionType::CloudImageId - Name of custom image used for creation this instance.</para> 2669 </listitem> 2670 <listitem> 2671 <para>VirtualSystemDescriptionType::CloudInstanceId - The OCID of the instance.</para> 2672 </listitem> 2673 <listitem> 2674 <para>VirtualSystemDescriptionType::OS - Guest OS type of the instance.</para> 2675 </listitem> 2676 <listitem> 2677 <para>VirtualSystemDescriptionType::CloudBootDiskSize - Size of instance bootable image.</para> 2678 </listitem> 2679 <listitem> 2680 <para>VirtualSystemDescriptionType::CloudInstanceState - The instance state according to OCI documentation.</para> 2681 </listitem> 2682 <listitem> 2683 <para>VirtualSystemDescriptionType::CloudInstanceShape - The instance shape according to OCI documentation</para> 2684 </listitem> 2685 <listitem> 2686 <para>VirtualSystemDescriptionType::Memory - RAM memory in GB allocated for the instance.</para> 2687 </listitem> 2688 <listitem> 2689 <para>VirtualSystemDescriptionType::CPU - Number of virtual CPUs allocated for the instance.</para> 2690 </listitem> 2691 </itemizedlist> 2692 </para> 2693 </sect1> 2694 2695 <sect1> 2696 <title>Function ICloudClient::importInstance</title> 2697 <para> 2698 See the <link linkend="ICloudClient__importInstance">ICloudClient::importInstance</link>. 2699 The API function imports an existing instance from the OCI to the local host. 2700 The standard steps here are: 2701 <itemizedlist> 2702 <listitem> 2703 <para>Create a custom image from an existing OCI instance.</para> 2704 </listitem> 2705 <listitem> 2706 <para>Export the custom image to OCI object (the object is created in the OCI Object Storage).</para> 2707 </listitem> 2708 <listitem> 2709 <para>Download the OCI object to the local host.</para> 2710 </listitem> 2711 </itemizedlist> 2712 As the result of operation user will have a file with the suffix ".oci" on the local host. This file is a TAR archive which 2713 contains a bootable instance image converted into the VMDK format and a JSON file with some metadata related to 2714 the imported instance. The function takes the parameter "description" 2715 (which is <link linkend="IVirtualSystemDescription">IVirtualSystemDescription</link>) 2716 Parameter "description" must contain all information and settings needed for successful operation result. 2717 At least next entries must be presented there before the call: 2718 <itemizedlist> 2719 <listitem> 2720 <para>VirtualSystemDescriptionType::Name is used for the several purposes: 2721 <itemizedlist> 2722 <listitem> 2723 <para>As a custom image name. A custom image is created from an instance.</para> 2724 </listitem> 2725 <listitem> 2726 <para>As OCI object name. An object is a file in OCI Object Storage. The object is created from the custom image.</para> 2727 </listitem> 2728 <listitem> 2729 <para>Name of imported instance on the local host. Because the result of import is a file, the file will have this 2730 name and extension ".oci".</para> 2731 </listitem> 2732 </itemizedlist> 2733 </para> 2734 </listitem> 2735 <listitem> 2736 <para>VirtualSystemDescriptionType::CloudInstanceId - The OCID of the existing instance.</para> 2737 </listitem> 2738 <listitem> 2739 <para>VirtualSystemDescriptionType::CloudBucket - a cloud bucket name in OCI Object Storage where created an OCI object 2740 from a custom image. 2741 </para> 2742 </listitem> 2743 </itemizedlist> 2744 </para> 2745 </sect1> 2746 2747 </chapter> 2551 2748 2552 2749 <chapter id="hgcm">
Note:
See TracChangeset
for help on using the changeset viewer.