Как создать экземпляр Google Cloud Compute из шаблона экземпляра - PullRequest
0 голосов
/ 25 мая 2020

Я хочу создать виртуальную машину из своего пользовательского образа с помощью механизма шаблона экземпляра. Я вижу, что шаблон экземпляра доступен. Ниже приведена моя конфигурация:

config = {
        'name': name,
        'machineType': machine_type,

        # Specify the boot disk and the image to use as a source.
        'disks': [
            {
                'boot': True,
                'autoDelete': True,
                'initializeParams': {
                    'sourceImage': source_disk_image,
                }
            }
        ],

        # Specify a network interface with NAT to access the public
        # internet.
        'networkInterfaces': [{
            'network': 'global/networks/default',
            'accessConfigs': [
                {'type': 'ONE_TO_ONE_NAT', 'name': 'External NAT'}
            ]
        }],

        # Allow the instance to access cloud storage and logging.
        'serviceAccounts': [{
            'email': 'default',
            'scopes': [
                'https://www.googleapis.com/auth/devstorage.read_write',
                'https://www.googleapis.com/auth/logging.write'
            ]
        }],

        # Metadata is readable from the instance and allows you to
        # pass configuration from deployment scripts to instances.
        'metadata': {
            'items': [{
                # Startup script is automatically executed by the
                # instance upon startup.
                'key': 'startup-script',
                'value': startup_script,
                'VIDEOPATH': videopath,
                'uuid': uuid
            }]
        }
    }

Как я могу использовать python api для создания экземпляра виртуальной машины через шаблон экземпляра?

compute.instances().insert(
        project=project,
        zone=zone,
        body=config).execute()

1 Ответ

1 голос
/ 28 мая 2020

Приведенный ниже элемент необходимо добавить к json, включая имя устройства и исходное изображение, и экземпляр Google Compute Instance будет создан из конкретного изображения.

    # Specify the boot disk and the image to use as a source.
    "disks": [
        {
            "kind": "compute#attachedDisk",
            "type": "PERSISTENT",
            "boot": True,
            "mode": "READ_WRITE",
            "autoDelete": True,
            "deviceName": "instance-template-1",
            "initializeParams": {
                "sourceImage": "projects/supereye/global/images/image-1",
                "diskType": "projects/supereye/zones/europe-west2-b/diskTypes/pd-standard",
                "diskSizeGb": "10"
            }, "diskEncryptionKey": {}
        }
    ],
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...