diff --git a/assets/images/quickstart/dark/minione_aws_configure_storage.png b/assets/images/quickstart/dark/minione_aws_configure_storage.png new file mode 100644 index 00000000..ba574acf Binary files /dev/null and b/assets/images/quickstart/dark/minione_aws_configure_storage.png differ diff --git a/assets/images/quickstart/dark/minione_aws_instance_name.png b/assets/images/quickstart/dark/minione_aws_instance_name.png new file mode 100644 index 00000000..80a80285 Binary files /dev/null and b/assets/images/quickstart/dark/minione_aws_instance_name.png differ diff --git a/assets/images/quickstart/dark/minione_aws_instance_type.png b/assets/images/quickstart/dark/minione_aws_instance_type.png new file mode 100644 index 00000000..c4cfd3ca Binary files /dev/null and b/assets/images/quickstart/dark/minione_aws_instance_type.png differ diff --git a/assets/images/quickstart/dark/minione_aws_key_pair.png b/assets/images/quickstart/dark/minione_aws_key_pair.png new file mode 100644 index 00000000..e6eaf6cb Binary files /dev/null and b/assets/images/quickstart/dark/minione_aws_key_pair.png differ diff --git a/assets/images/quickstart/dark/minione_aws_network_settings_lower.png b/assets/images/quickstart/dark/minione_aws_network_settings_lower.png new file mode 100644 index 00000000..12e17d18 Binary files /dev/null and b/assets/images/quickstart/dark/minione_aws_network_settings_lower.png differ diff --git a/assets/images/quickstart/dark/minione_aws_network_settings_upper.png b/assets/images/quickstart/dark/minione_aws_network_settings_upper.png new file mode 100644 index 00000000..fae3ad95 Binary files /dev/null and b/assets/images/quickstart/dark/minione_aws_network_settings_upper.png differ diff --git a/assets/images/quickstart/dark/minione_aws_os_image.png b/assets/images/quickstart/dark/minione_aws_os_image.png new file mode 100644 index 00000000..1d2fa8d5 Binary files /dev/null and b/assets/images/quickstart/dark/minione_aws_os_image.png differ diff --git a/assets/images/quickstart/dark/sunstone_dashboard.png b/assets/images/quickstart/dark/sunstone_dashboard.png new file mode 100644 index 00000000..f61f8c28 Binary files /dev/null and b/assets/images/quickstart/dark/sunstone_dashboard.png differ diff --git a/assets/images/quickstart/dark/sunstone_instantiate_vm_1.png b/assets/images/quickstart/dark/sunstone_instantiate_vm_1.png new file mode 100644 index 00000000..c235555b Binary files /dev/null and b/assets/images/quickstart/dark/sunstone_instantiate_vm_1.png differ diff --git a/assets/images/quickstart/dark/sunstone_instantiate_vm_2.png b/assets/images/quickstart/dark/sunstone_instantiate_vm_2.png new file mode 100644 index 00000000..a240b17f Binary files /dev/null and b/assets/images/quickstart/dark/sunstone_instantiate_vm_2.png differ diff --git a/assets/images/quickstart/dark/sunstone_login_page.png b/assets/images/quickstart/dark/sunstone_login_page.png new file mode 100644 index 00000000..23c446a6 Binary files /dev/null and b/assets/images/quickstart/dark/sunstone_login_page.png differ diff --git a/assets/images/quickstart/dark/sunstone_network_details.png b/assets/images/quickstart/dark/sunstone_network_details.png new file mode 100644 index 00000000..3a9d177f Binary files /dev/null and b/assets/images/quickstart/dark/sunstone_network_details.png differ diff --git a/assets/images/quickstart/dark/sunstone_select_vnetwork.png b/assets/images/quickstart/dark/sunstone_select_vnetwork.png new file mode 100644 index 00000000..f1943590 Binary files /dev/null and b/assets/images/quickstart/dark/sunstone_select_vnetwork.png differ diff --git a/assets/images/quickstart/dark/sunstone_vm_instances.png b/assets/images/quickstart/dark/sunstone_vm_instances.png new file mode 100644 index 00000000..4b061930 Binary files /dev/null and b/assets/images/quickstart/dark/sunstone_vm_instances.png differ diff --git a/assets/images/quickstart/dark/sunstone_vm_templates_alpine.png b/assets/images/quickstart/dark/sunstone_vm_templates_alpine.png new file mode 100644 index 00000000..e3169901 Binary files /dev/null and b/assets/images/quickstart/dark/sunstone_vm_templates_alpine.png differ diff --git a/assets/images/quickstart/dark/sunstone_vnc_alpine.png b/assets/images/quickstart/dark/sunstone_vnc_alpine.png new file mode 100644 index 00000000..c488a384 Binary files /dev/null and b/assets/images/quickstart/dark/sunstone_vnc_alpine.png differ diff --git a/assets/images/quickstart/light/minione_aws_configure_storage.png b/assets/images/quickstart/light/minione_aws_configure_storage.png new file mode 100644 index 00000000..74d1012f Binary files /dev/null and b/assets/images/quickstart/light/minione_aws_configure_storage.png differ diff --git a/assets/images/quickstart/light/minione_aws_instance_name.png b/assets/images/quickstart/light/minione_aws_instance_name.png new file mode 100644 index 00000000..ab143b46 Binary files /dev/null and b/assets/images/quickstart/light/minione_aws_instance_name.png differ diff --git a/assets/images/quickstart/light/minione_aws_instance_type.png b/assets/images/quickstart/light/minione_aws_instance_type.png new file mode 100644 index 00000000..4b7cb11f Binary files /dev/null and b/assets/images/quickstart/light/minione_aws_instance_type.png differ diff --git a/assets/images/quickstart/light/minione_aws_key_pair.png b/assets/images/quickstart/light/minione_aws_key_pair.png new file mode 100644 index 00000000..a9bb5bde Binary files /dev/null and b/assets/images/quickstart/light/minione_aws_key_pair.png differ diff --git a/assets/images/quickstart/light/minione_aws_network_settings_lower.png b/assets/images/quickstart/light/minione_aws_network_settings_lower.png new file mode 100644 index 00000000..29a766f0 Binary files /dev/null and b/assets/images/quickstart/light/minione_aws_network_settings_lower.png differ diff --git a/assets/images/quickstart/light/minione_aws_network_settings_upper.png b/assets/images/quickstart/light/minione_aws_network_settings_upper.png new file mode 100644 index 00000000..68f29704 Binary files /dev/null and b/assets/images/quickstart/light/minione_aws_network_settings_upper.png differ diff --git a/assets/images/quickstart/light/minione_aws_os_image.png b/assets/images/quickstart/light/minione_aws_os_image.png new file mode 100644 index 00000000..749c7f55 Binary files /dev/null and b/assets/images/quickstart/light/minione_aws_os_image.png differ diff --git a/assets/images/quickstart/light/sunstone_dashboard.png b/assets/images/quickstart/light/sunstone_dashboard.png new file mode 100644 index 00000000..29b1d271 Binary files /dev/null and b/assets/images/quickstart/light/sunstone_dashboard.png differ diff --git a/assets/images/quickstart/light/sunstone_instantiate_vm_1.png b/assets/images/quickstart/light/sunstone_instantiate_vm_1.png new file mode 100644 index 00000000..24caacc3 Binary files /dev/null and b/assets/images/quickstart/light/sunstone_instantiate_vm_1.png differ diff --git a/assets/images/quickstart/light/sunstone_instantiate_vm_2.png b/assets/images/quickstart/light/sunstone_instantiate_vm_2.png new file mode 100644 index 00000000..64d43636 Binary files /dev/null and b/assets/images/quickstart/light/sunstone_instantiate_vm_2.png differ diff --git a/assets/images/quickstart/light/sunstone_login_page.png b/assets/images/quickstart/light/sunstone_login_page.png new file mode 100644 index 00000000..433e4bce Binary files /dev/null and b/assets/images/quickstart/light/sunstone_login_page.png differ diff --git a/assets/images/quickstart/light/sunstone_network_details.png b/assets/images/quickstart/light/sunstone_network_details.png new file mode 100644 index 00000000..e2bbaa6f Binary files /dev/null and b/assets/images/quickstart/light/sunstone_network_details.png differ diff --git a/assets/images/quickstart/light/sunstone_select_vnetwork.png b/assets/images/quickstart/light/sunstone_select_vnetwork.png new file mode 100644 index 00000000..751759d2 Binary files /dev/null and b/assets/images/quickstart/light/sunstone_select_vnetwork.png differ diff --git a/assets/images/quickstart/light/sunstone_vm_instances.png b/assets/images/quickstart/light/sunstone_vm_instances.png new file mode 100644 index 00000000..93cb2ceb Binary files /dev/null and b/assets/images/quickstart/light/sunstone_vm_instances.png differ diff --git a/assets/images/quickstart/light/sunstone_vm_templates_alpine.png b/assets/images/quickstart/light/sunstone_vm_templates_alpine.png new file mode 100644 index 00000000..11c3c4d4 Binary files /dev/null and b/assets/images/quickstart/light/sunstone_vm_templates_alpine.png differ diff --git a/assets/images/quickstart/light/sunstone_vnc_alpine.png b/assets/images/quickstart/light/sunstone_vnc_alpine.png new file mode 100644 index 00000000..cb4a5b1d Binary files /dev/null and b/assets/images/quickstart/light/sunstone_vnc_alpine.png differ diff --git a/content/getting_started/try_opennebula/opennebula_sandbox_deployment/deploy_opennebula_on_aws.md b/content/getting_started/try_opennebula/opennebula_sandbox_deployment/deploy_opennebula_on_aws.md index 93c6fcaf..a0424ca3 100644 --- a/content/getting_started/try_opennebula/opennebula_sandbox_deployment/deploy_opennebula_on_aws.md +++ b/content/getting_started/try_opennebula/opennebula_sandbox_deployment/deploy_opennebula_on_aws.md @@ -42,36 +42,64 @@ If you don't already have an AWS account, [create one](https://aws.amazon.com/pr Click on **Launch instance**, this will take you to the [Launch Instance Wizard](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html). In the name and tags section enter an appropriate and memorable name such as `minione-test`: -{{< image path="/images/minione-aws-instance-name.png" alt="AWS instance names" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/minione_aws_instance_name.png" + path="/images/quickstart/light/minione_aws_instance_name.png" + alt="Name instance" align="center" width="90%" mb="20px" +>}} Choose the **Ubuntu Server 24.04 LTS (HVM), SSD Volume Type** Amazon Machine Image (AMI). Leave the architecture as **64-bit (x86)**: -{{< image path="/images/minione-aws-os-image.png" alt="AWS instance image" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/minione_aws_os_image.png" + path="/images/quickstart/light/minione_aws_os_image.png" + alt="AMI" align="center" width="90%" mb="20px" +>}} Choose the `c5.metal` instance type: - -{{< image path="/images/minione-aws-instance-type.png" alt="AWS instance type" align="center" width="90%" pb="20px" >}} ++ +{{< image + pathDark="/images/quickstart/dark/minione_aws_instance_type.png" + path="/images/quickstart/light/minione_aws_instance_type.png" + alt="Instance type" align="center" width="90%" mb="20px" +>}} If you don't already have a key pair (a `.pem` or `.ppk` file), select **Create new key pair** in the **Key pair (login)** section. Choose a sensible name for the key pair, it cannot be renamed later. You may either use your name or a context such as `minione-admin`. Select EC25519 for **Key pair type** and choose the format: * `.pem` (Linux/Mac) * `.ppk` (Windows with PuTTY). -{{< image path="/images/minione-aws-key-pair.png" alt="AWS instance key pair" align="center" width="50%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/minione_aws_key_pair.png" + path="/images/quickstart/light/minione_aws_key_pair.png" + alt="Key pair" align="center" width="50%" mb="20px" +>}} Click **Create key pair**. A `.pem` or `.ppk` file will be downloaded to your computer through the browser. Store the key in a secure and memorable location on your local machine, you will need it to access the AWS instance. It is recommended to change the permissions on the file such that only your user can access the key file. In **Network settings** click **Edit** in the top right corner of the section and select **Create security group**: -{{< image path="/images/minione-aws-network-settings-upper.png" alt="AWS network settings" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/minione_aws_network_settings_upper.png" + path="/images/quickstart/light/minione_aws_network_settings_upper.png" + alt="Network settings" align="center" width="90%" mb="20px" +>}} In the section labelled **Inbound Security Group Rules** click **Add security group rule** (leave the existing settings for port 22). In the **Port range** field enter port 80 and change the **Source type** field to **Anywhere**. -{{< image path="/images/minione-aws-network-settings-lower.png" alt="AWS network settings" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/minione_aws_network_settings_lower.png" + path="/images/quickstart/light/minione_aws_network_settings_lower.png" + alt="Network settings" align="center" width="90%" mb="20px" +>}} In the **Configure storage** section select **80 GiB** of `gp3` storage. You do not need to edit the **Advanced details** section. -{{< image path="/images/minione-aws-configure-storage.png" alt="AWS configure storage" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/minione_aws_configure_storage.png" + path="/images/quickstart/light/minione_aws_configure_storage.png" + alt="Configure storage" align="center" width="90%" mb="20px" +>}} Now click **Launch instance**. AWS will now schedule your instance. Note that `c5.metal` instances can take several minutes to be scheduled depending on availability and account settings. Contact your DevOps team or system administrator if you have trouble launching your instance. @@ -238,13 +266,21 @@ Now verify the installation by logging in to OpenNebula's Sunstone UI. Point your browser to the Edge IP and port provided by the miniONE report, which is normally the same as the public IP of the AWS instance. You should be greeted with the Sunstone login screen: -{{< image path="/images/quickstart/sunstone-login-page.png" alt="Sunstone login" align="center" width="50%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/sunstone_login_page.png" + path="/images/quickstart/light/sunstone_login_page.png" + alt="Sunstone login" align="center" width="50%" mb="20px" +>}} In the **Username** input field, type `oneadmin`. For **Password**, enter the password provided by miniONE at the end of the report (in this example, `ZMCoOWUsBg`) then press `Enter` or click **SIGN IN NOW**. The screen will display the Sunstone Dashboard: -{{< image path="/images/sunstone-dashboard.png" alt="Sunstone login" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/sunstone_dashboard.png" + path="/images/quickstart/light/sunstone_dashboard.png" + alt="Sunstone dashboard" align="center" width="90%" mb="20px" +>}} As you can see, the Dashboard indicates the following installed components: @@ -254,11 +290,20 @@ As you can see, the Dashboard indicates the following installed components: The existing Virtual Network is a bridged network attached to a local interface named `vnet`. To inspect this network, in Sunstone open the left-hand menu (hover the mouse over the left-hand sidebar), then click **Networks** --> **Virtual Networks**: -{{< image path="/images/sunstone-select_vnetwork.png" alt="Sunstone select vnet" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/sunstone_select_vnetwork.png" + path="/images/quickstart/light/sunstone_select_vnetwork.png" + alt="Sunstone select vnet" align="center" width="90%" mb="20px" +>}} + Sunstone will display the **Virtual networks** screen. Click the item labelled `vnet` to display information about this network: -{{< image path="/images/sunstone-network_details.png" alt="Sunstone vnet details" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/sunstone_network_details.png" + path="/images/quickstart/light/sunstone_network_details.png" + alt="Sunstone vnet screen" align="center" width="90%" mb="20px" +>}} During installation, a KVM virtualization host was automatically configured on the local machine. To inspect the KVM host, in Sunstone open the left-hand menu, then click **Infrastructure** -> **Hosts**. @@ -268,7 +313,11 @@ miniONE automatically downloaded the template for a VM with Alpine Linux 3.20 pr To deploy the Alpine Linux VM, in the left-hand sidebar go to **Templates** -> **VM Templates**. This screen displays a list of all VM templates installed on the system. In this case, only the **Alpine Linux 3.20** template is installed: -{{< image path="/images/sunstone-vm_templates-alpine.png" alt="Sunstone VM template" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/sunstone_vm_templates_alpine.png" + path="/images/quickstart/light/sunstone_vm_templates_alpine.png" + alt="Sunstone login" align="center" width="90%" mb="20px" +>}} To instantiate the VM template, click the template item and click the **Instantiate** icon @@ -277,19 +326,31 @@ To instantiate the VM template, click the template item and click the **Instanti Sunstone will display the first screen of the **Instantiate VM Template** wizard: -{{< image path="/images/sunstone-instantiate_vm-1.png" alt="Sunstone instantiate VM" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/sunstone_instantiate_vm_1.png" + path="/images/quickstart/light/sunstone_instantiate_vm_1.png" + alt="Sunstone instantiate VM 1" align="center" width="90%" mb="20px" +>}} Leave the **Capacity**, **Ownership** and **VM Group** parameters with their default values. Click **Next**. The next screen allows you to see and modify further parameters for the VM, including selecting the Virtual Network or scheduling actions. -{{< image path="/images/sunstone-instantiate_vm-2.png" alt="Sunstone instantiate VM" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/sunstone_instantiate_vm_2.png" + path="/images/quickstart/light/sunstone_instantiate_vm_2.png" + alt="Sunstone instantiate VM 2" align="center" width="90%" mb="20px" +>}} Click **Finish**. OpenNebula will instantiate the VM template. For the Alpine Linux VM, this should take just a few seconds. Once instantiation is complete, Sunstone should display the **Instances** -> **VMs** screen, with the Alpine Linux VM as the sole instance: -{{< image path="/images/sunstone-vm_instances.png" alt="Sunstone VM instances" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/sunstone_vm_instances.png" + path="/images/quickstart/light/sunstone_vm_instances.png" + alt="Sunstone login" align="center" width="90%" mb="20px" +>}} The green dot to the left of the VM name indicates that the VM is running. Note that you may need to click the **Refresh** icon @@ -303,7 +364,11 @@ The green dot to the left of the VM name indicates that the VM is running. Note The quickest way to login to the VM is by VNC, available directly in Sunstone. Just click the VNC icon and Sunstone will display the VM boot messages screen directly in your browser in another tab. -{{< image path="/images/sunstone-VNC-alpine.png" alt="Alpine VM VNC" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/sunstone_vnc_alpine.png" + path="/images/quickstart/light/sunstone_vnc_alpine.png" + alt="Sunstone login" align="center" width="90%" mb="20px" +>}} Login as root with password `opennebula`. You can then use the command line to explore the VM and run processes: diff --git a/content/getting_started/try_opennebula/opennebula_sandbox_deployment/deploy_opennebula_onprem_with_minione.md b/content/getting_started/try_opennebula/opennebula_sandbox_deployment/deploy_opennebula_onprem_with_minione.md index d642d98d..d7bc8e20 100644 --- a/content/getting_started/try_opennebula/opennebula_sandbox_deployment/deploy_opennebula_onprem_with_minione.md +++ b/content/getting_started/try_opennebula/opennebula_sandbox_deployment/deploy_opennebula_onprem_with_minione.md @@ -18,7 +18,7 @@ In this tutorial, we will install an OpenNebula Front-end in under ten minutes, miniONE is a straightforward tool for deploying an evaluation version of OpenNebula. After running the miniONE script, all the OpenNebula services needed to use, manage and run a small cloud deployment will be installed on a single server. -This tutorial covers installation of a Front-end and KVM hypervisor node on a local machine with a screen attached. If you are installing miniONE on remote infrastructure you will need to use SSH and port forwarding to access user interfaces in your local browser, please refer to the [port forwarding instructions](#ssh-and-port-forwarding) before continuing. +This tutorial covers installation of a Front-end and KVM hypervisor node on a local machine with a screen attached. If you are installing miniONE on remote infrastructure you may need to use SSH and port forwarding to access user interfaces in your local browser, please refer to the [port forwarding instructions](#ssh-and-port-forwarding) before continuing. During this tutorial we will complete the following steps: @@ -27,7 +27,7 @@ During this tutorial we will complete the following steps: 3. Verify the installation. 4. Instantiate a Virtual Machine (VM) with Alpine Linux. -Once you have completed this tutorial, you will have an evaluation version of OpenNebula installed on your machine and you will understand how to use the [Sunstone user interface]({{% relref fireedge_sunstone %}}) to instantiate a VM. +Once you have completed this tutorial, you will have an evaluation version of OpenNebula installed on your machine and you will understand how to use the [Sunstone User Interface]({{% relref fireedge_sunstone %}}) to instantiate a VM. ## Before Starting @@ -65,7 +65,7 @@ To run the miniONE script, you will need a physical server with a fresh installa : - 22 (SSH) - 80 (for the web UI) -This tutorial was tested on on Ubuntu 22.04 and 24.04. We strongly advise to use a physical server rather than a Virtual Machine (VM). If you choose to follow this installation on a VM you may experience instability due to nested virtualization during the follow-up [Kubernetes installation guides]({{% relref try_kubernetes_on_opennebula %}}). You may also need to use [port forwarding](#ssh-and-port-forwarding) to access the Sunstone UI. +This tutorial was tested on on Ubuntu 22.04 and 24.04. We strongly advise to use a physical server rather than a Virtual Machine (VM). If you choose to follow this installation on a VM you may experience instability due to nested virtualization during the follow-up [Kubernetes Installation Guides]({{% relref try_kubernetes_on_opennebula %}}). You may also need to use [port forwarding](#ssh-and-port-forwarding) to access the Sunstone UI. ## Step 2: Download and Install miniONE @@ -77,9 +77,16 @@ sudo -i Download miniONE, run: +{{% if-version is="7.0" %}} ```bash wget 'https://github.com/OpenNebula/minione/releases/download/v7.0.1/minione' ``` +{{% /if-version %}} +{{% if-version is="7.1" %}} +```bash +wget 'https://github.com/OpenNebula/minione/releases/latest/download/minione' +``` +{{% /if-version %}} Make the `minione` script executable: @@ -125,13 +132,21 @@ Now verify the installation by logging in to OpenNebula's Sunstone UI. Point your browser to the Edge IP and port provided by the miniONE report, in this case `192.168.1.130`, or simply to `http://localhost`. You should be greeted with the Sunstone login screen: -{{< image path="/images/quickstart/sunstone-login-page.png" alt="Sunstone login" align="center" width="50%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/sunstone_login_page.png" + path="/images/quickstart/light/sunstone_login_page.png" + alt="Sunstone login" align="center" width="50%" mb="20px" +>}} In the **Username** input field, type `oneadmin`. For **Password**, enter the password provided by miniONE at the end of the report (in this example, `ZMCoOWUsBg`) then press `Enter` or click **SIGN IN NOW**. The screen will display the Sunstone Dashboard: -{{< image path="/images/sunstone-dashboard.png" alt="Sunstone dashboard" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/sunstone_dashboard.png" + path="/images/quickstart/light/sunstone_dashboard.png" + alt="Sunstone dashboard" align="center" width="90%" mb="20px" +>}} As you can see, the Dashboard indicates the following installed components: @@ -141,11 +156,19 @@ As you can see, the Dashboard indicates the following installed components: The existing Virtual Network is a bridged network attached to a local interface named `vnet`. To inspect this network, in Sunstone open the left-hand menu (hover the mouse over the left-hand sidebar), then click **Networks** --> **Virtual Networks**: -{{< image path="/images/sunstone-select_vnetwork.png" alt="Sunstone select vnet" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/sunstone_select_vnetwork.png" + path="/images/quickstart/light/sunstone_select_vnetwork.png" + alt="Sunstone select vnet" align="center" width="90%" mb="20px" +>}} Sunstone will display the **Virtual networks** screen. Click the item labelled `vnet` to display information about this network: -{{< image path="/images/sunstone-network_details.png" alt="Sunstone network details" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/sunstone_network_details.png" + path="/images/quickstart/light/sunstone_network_details.png" + alt="Sunstone vnet screen" align="center" width="90%" mb="20px" +>}} During installation, a KVM virtualization host was automatically configured on the local machine. To inspect the KVM host, in Sunstone open the left-hand menu, then click **Infrastructure** -> **Hosts**. @@ -155,25 +178,41 @@ miniONE automatically downloaded the template for a VM with Alpine Linux 3.20 pr To deploy the Alpine Linux VM, in the left-hand sidebar go to **Templates** -> **VM Templates**. This screen displays a list of all VM templates installed on the system. In this case, only the **Alpine Linux 3.20** template is installed: -{{< image path="/images/sunstone-vm_templates-alpine.png" alt="Sunstone VM templates" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/sunstone_vm_templates_alpine.png" + path="/images/quickstart/light/sunstone_vm_templates_alpine.png" + alt="Sunstone login" align="center" width="90%" mb="20px" +>}} To instantiate the VM template, click the template item and click the **Instantiate** icon at the top. Sunstone will display the first screen of the **Instantiate VM Template** wizard: -{{< image path="/images/sunstone-instantiate_vm-1.png" alt="Sunstone instantiate VM" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/sunstone_instantiate_vm_1.png" + path="/images/quickstart/light/sunstone_instantiate_vm_1.png" + alt="Sunstone instantiate VM 1" align="center" width="90%" mb="20px" +>}} Leave the **Capacity**, **Ownership** and **VM Group** parameters with their default values. Click **Next**. The next screen allows you to see and modify further parameters for the VM, including selecting the Virtual Network or scheduling actions. -{{< image path="/images/sunstone-instantiate_vm-2.png" alt="Sunstone instantiate VM" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/sunstone_instantiate_vm_2.png" + path="/images/quickstart/light/sunstone_instantiate_vm_2.png" + alt="Sunstone instantiate VM 2" align="center" width="90%" mb="20px" +>}} Click **Finish**. OpenNebula will instantiate the VM template. For the Alpine Linux VM, this should take just a few seconds. Once instantiation is complete, Sunstone should display the **Instances** -> **VMs** screen, with the Alpine Linux VM as the sole instance: -{{< image path="/images/sunstone-vm_instances.png" alt="Sunstone VM instances" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/sunstone_vm_instances.png" + path="/images/quickstart/light/sunstone_vm_instances.png" + alt="Sunstone login" align="center" width="90%" mb="20px" +>}} The green dot to the left of the VM name indicates that the VM is running. Note that you may need to click the **Refresh** icon @@ -187,7 +226,11 @@ The green dot to the left of the VM name indicates that the VM is running. Note The quickest way to log into the VM is by VNC, available directly in Sunstone. Just click the VNC icon and Sunstone will display the VM boot messages screen directly in your browser in another tab. -{{< image path="/images/sunstone-VNC-alpine.png" alt="Sunstone Alpine VM" align="center" width="90%" pb="20px" >}} +{{< image + pathDark="/images/quickstart/dark/sunstone_vnc_alpine.png" + path="/images/quickstart/light/sunstone_vnc_alpine.png" + alt="Sunstone login" align="center" width="90%" mb="20px" +>}} Log in as `root` with password `opennebula`. You can then use the command line to explore the VM and run processes: @@ -196,16 +239,16 @@ Log in as `root` with password `opennebula`. You can then use the command line t Congratulations! You've now installed an OpenNebula Front-end with a KVM hypervisor and Virtual Network, then deployed a VM. -{{< alert title="Tip" color="primary" >}}Please note that miniONE is an evaluation version of OpenNebula and is intended for experimentation and learning. You should not use miniONE for a production cloud deployment. Please refer to the [production installation guide]({{% relref installation_process %}}) for details on deploying in a production environment.{{< /alert >}} +{{< alert title="Tip" color="primary" >}}Please note that miniONE is an evaluation version of OpenNebula and is intended for experimentation and learning. You should not use miniONE for a production cloud deployment. Please refer to the [Production Installation Guide]({{% relref installation_process %}}) for details on deploying in a production environment.{{< /alert >}} ## Next Steps Now that you have a working miniONE OpenNebula installation, we suggest that you explore OpenNebula's functionality further with the following guides: -* [Deploy a WordPress virtual machine]({{% relref "/getting_started/try_opennebula/opennebula_sandbox_deployment/validate_the_environment.md#downloading-and-deploying-a-virtual-machine" %}}) -* [Deploy a Kubernetes cluster with the OneKE appliance]({{% relref "/getting_started/try_opennebula/try_kubernetes_on_opennebula/running_kubernetes_clusters.md" %}}) -* [Deploy a Kubernetes cluster using Rancher and the Cluster API]({{% relref "/getting_started/try_opennebula/try_kubernetes_on_opennebula/managing_k8s_with_rancher" %}}) -* [Further validate your miniONE installation]({{% relref "/getting_started/try_opennebula/opennebula_sandbox_deployment/validate_the_environment.md" %}}) and learn how to download appliances from the [OpenNebula Marketplace](https://marketplace.opennebula.io/) +* [Deploy a WordPress Virtual Machine]({{% relref "/getting_started/try_opennebula/opennebula_sandbox_deployment/validate_the_environment.md#downloading-and-deploying-a-virtual-machine" %}}) +* [Deploy a Kubernetes Cluster with the OneKE Appliance]({{% relref "/getting_started/try_opennebula/try_kubernetes_on_opennebula/running_kubernetes_clusters.md" %}}) +* [Deploy a Kubernetes Cluster using Rancher and the Cluster API]({{% relref "/getting_started/try_opennebula/try_kubernetes_on_opennebula/managing_k8s_with_rancher" %}}) +* [Further validate your miniONE Installation]({{% relref "/getting_started/try_opennebula/opennebula_sandbox_deployment/validate_the_environment.md" %}}) and learn how to download appliances from the [OpenNebula Marketplace](https://marketplace.opennebula.io/) ## SSH and Port Forwarding diff --git a/layouts/shortcodes/if-version.html b/layouts/shortcodes/if-version.html new file mode 100644 index 00000000..fa7dc0c0 --- /dev/null +++ b/layouts/shortcodes/if-version.html @@ -0,0 +1,30 @@ +{{- $currentVersion := .Site.Params.version -}} +{{- $targetVersion := .Get "is" -}} +{{- $notVersion := .Get "not" -}} + +{{- if $targetVersion -}} + {{- if eq (string $currentVersion) (string $targetVersion) -}} + {{ .Inner }} + {{- end -}} +{{- else if $notVersion -}} + {{- if ne (string $currentVersion) (string $notVersion) -}} + {{ .Inner }} + {{- end -}} +{{- else -}} + {{ .Inner }} +{{- end -}} + \ No newline at end of file diff --git a/layouts/shortcodes/image.html b/layouts/shortcodes/image.html index 3c35a2ac..6aa8062c 100755 --- a/layouts/shortcodes/image.html +++ b/layouts/shortcodes/image.html @@ -1,60 +1,68 @@ -{{ $path := .Get "path" }} -{{ $alt := .Get "alt" | default "" }} -{{ $width := .Get "width" }} -{{ $class := .Get "class" | default "" }} -{{ $align := .Get "align" | default "" }} -{{ $pb := .Get "pb" | default "" }} -{{ $pt := .Get "pt" | default "" }} - -{{ $srcPath := strings.TrimPrefix "/" $path }} -{{ $src := resources.Get $srcPath }} - -{{ if $src }} - {{ $isSVG := eq $src.MediaType.SubType "svg" }} - - {{/* 1. Build CSS Styles (This works for both SVG and Raster) */}} - {{ $finalStyle := "" }} - {{ if eq $align "center" }} - {{ $finalStyle = "display: block; margin-left: auto; margin-right: auto;" }} - {{ end }} - {{ if $width }} - {{ $styleWidth := $width }} - {{ if not (findRE "[a-z%]" $width) }}{{ $styleWidth = printf "%spx" $width }}{{ end }} - {{ $finalStyle = printf "%s width: %s;" $finalStyle $styleWidth }} - {{ end }} - {{ if $pb }} - {{ $finalStyle = printf "%s padding-bottom: %s;" $finalStyle $pb }} - {{ end }} - {{ if $pt }} - {{ $finalStyle = printf "%s padding-top: %s;" $finalStyle $pt }} - {{ end }} - - {{/* 2. Render Output */}} - {{ if $isSVG }} - {{/* SVG: No .Width call, no .Process call */}} - {{ $alt }} - {{ else }} +{{- $path := .Get "path" -}} +{{- $pathDark := .Get "pathDark" -}} +{{- $alt := .Get "alt" | default "" -}} +{{- $width := .Get "width" -}} +{{- $class := .Get "class" | default "" -}} +{{- $align := .Get "align" | default "" -}} +{{- $mb := .Get "mb" | default "" -}} +{{- $mt := .Get "mt" | default "" -}} +{{- $border := .Get "border" | default "true" -}} +{{- $roundBorder := .Get "roundBorder" | default "true" -}} +{{- $shadow := .Get "shadow" | default "true" -}} +{{- $borderClass := cond (eq $border "true") "borderImage" "" -}} +{{- $roundClass := cond (eq $roundBorder "true") "roundBorderImage" "" -}} +{{- $shadowClass := cond (eq $shadow "true") "shadowImage" "" -}} +{{- $finalClass := printf "%s %s %s %s" $class $roundClass $borderClass $shadowClass | strings.TrimSpace -}} +{{- $srcPath := strings.TrimPrefix "/" $path -}} +{{- $src := resources.Get $srcPath -}} +{{- $srcDark := "" -}} +{{- if $pathDark -}} + {{- $srcDark = resources.Get (strings.TrimPrefix "/" $pathDark) -}} +{{- end -}} +{{- if $src -}} + {{- $isSVG := eq $src.MediaType.SubType "svg" -}} + {{- $finalStyle := "" -}} + {{- if eq $align "center" -}} + {{- $finalStyle = "margin-left: auto; margin-right: auto;" -}} + {{- end -}} + {{- if $width -}} + {{- $styleWidth := $width -}} + {{- if not (findRE "[a-z%]" $width) -}}{{- $styleWidth = printf "%spx" $width -}}{{- end -}} + {{- $finalStyle = printf "%s width: %s;" $finalStyle $styleWidth -}} + {{- end -}} + {{- if $mb -}} + {{- $finalStyle = printf "%s margin-bottom: %s;" $finalStyle $mb -}} + {{- end -}} + {{- if $mt -}} + {{- $finalStyle = printf "%s margin-top: %s;" $finalStyle $mt -}} + {{- end -}} + {{- if $isSVG -}} +
+ {{ $alt }} + {{- if $srcDark -}} + {{ $alt }} + {{- end -}} +
+ {{- else -}} {{/* RASTER: Now it is safe to call .Width and .Process */}} - {{ $procWidth := $src.Width }} - {{ if $width }} - {{ if not (in $width "%") }} - {{ $procWidth = strings.TrimSuffix "px" $width }} - {{ end }} - {{ end }} - + {{- $procWidth := $src.Width -}} + {{- if $width -}} + {{- if not (in $width "%") -}} + {{- $procWidth = strings.TrimSuffix "px" $width -}} + {{- end -}} + {{- end -}} {{- $procCommand := printf "resize %dx webp" (int $procWidth) -}} {{- with $src.Process $procCommand -}} - {{ $alt }} - {{- end }} - {{ end }} - -{{ else }} -

- Hugo Error: Image not found at assets/{{ $srcPath }} -

-{{ end }} \ No newline at end of file +
+ {{ $alt }} + {{- if $srcDark -}} + {{ $alt }} + {{- end -}} +
+ {{- end -}} +{{- end -}} +{{- else -}} +

+ Hugo Error: Image not found at assets/{{- $srcPath -}} +

+{{- end -}} \ No newline at end of file