OS : Linux
PHP Version : 7.4.33
Software : Apache/2.4.6 (CentOS) PHP/7.4.33
Information System : Linux apprendre2 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
Disable Function : ó
oBú]c @ sq d Z d d l Z d d l Z d d l Z d d l m Z d d l m Z d d l m Z d d l m
Z
e j e ƒ Z
d Z d e f d „ ƒ YZ e j e j f Z d
e j f d „ ƒ YZ d „ Z d
„ Z d d d d „ Z d „ Z d „ Z d „ Z e e j f f g Z d „ Z e d k rmd d l Z e j d d ƒ Z! e! j" ƒ Z# e ƒ Z$ e
j% e$ ƒ GHn d S( s, Datasource for IBMCloud.
IBMCloud is also know as SoftLayer or BlueMix.
IBMCloud hypervisor is xen (2018-03-10).
There are 2 different api exposed launch methods.
* template: This is the legacy method of launching instances.
When booting from an image template, the system boots first into
a "provisioning" mode. There, host <-> guest mechanisms are utilized
to execute code in the guest and configure it. The configuration
includes configuring the system network and possibly installing
packages and other software stack.
After the provisioning is finished, the system reboots.
* os_code: Essentially "launch by OS Code" (Operating System Code).
This is a more modern approach. There is no specific "provisioning" boot.
Instead, cloud-init does all the customization. With or without
user-data provided, an OpenStack ConfigDrive like disk is attached.
Only disks with label 'config-2' and UUID '9796-932E' are considered.
This is to avoid this datasource claiming ConfigDrive. This does
mean that 1 in 8^16 (~4 billion) Xen ConfigDrive systems will be
incorrectly identified as IBMCloud.
The combination of these 2 launch methods and with or without user-data
creates 6 boot scenarios.
A. os_code with user-data
B. os_code without user-data
Cloud-init is fully operational in this mode.
There is a block device attached with label 'config-2'.
As it differs from OpenStack's config-2, we have to differentiate.
We do so by requiring the UUID on the filesystem to be "9796-932E".
This disk will have the following files. Specifically note, there
is no versioned path to the meta-data, only 'latest':
openstack/latest/meta_data.json
openstack/latest/network_data.json
openstack/latest/user_data [optional]
openstack/latest/vendor_data.json
vendor_data.json as of 2018-04 looks like this:
{"cloud-init":"#!/bin/bash
echo 'root:$6$