ionos-cloud / docker-machine-driver

IONOS Cloud Docker Machine Driver
Apache License 2.0
6 stars 3 forks source link

Deployment of Nodes with our own image fails #78

Closed mueller-tobias closed 1 year ago

mueller-tobias commented 1 year ago

Description

To fulfill the bsi requirement we've to use secured images for our vm. We've uploaded an ubuntu cloud image for some tests, but it is not possible to use those image to deploy kubernetes nodes. When we deploy the nodes we get the error: failed to create server due to error: [(root).entities.volumes.items.[0].properties.image] Not a public image: 4292035b-0bb7-11ee-8e1b-52f1c6822ebb

Our Image has Cloud Init Support V1 enabled in the Image Management. Via DCD or Terraform i can successfully deploy server with this image and a cloud configuration.

Expected behavior

You can supply the id of a custom image and the vm will be created properly

Environment

Rancher Machine version:

rancher-machine version v0.15.0-rancher100, build 2c59804f

Docker Machine Driver Ionos Cloud version:

6.1.3

OS:

linux - ubuntu 20.04

How to Reproduce

Create a Cluster with a VM with the ID of a Custom Image. We've already set the image password empty because this feature is only allowed on ionos images, but that didn't solved the problem.

Error and Debug Output

Docker Machine Version:  v0.15.0-rancher100, build 2c59804f
Found binary path at /data/dev/docker-machine/docker-machine-driver-ionoscloud
Launching plugin server for driver ionoscloud
Plugin server listening at address 127.0.0.1:35443
() Calling .GetVersion
Using API Version  1
() Calling .SetConfigRaw
() Calling .GetMachineName
(flag-lookup) Calling .GetMachineName
(flag-lookup) Calling .DriverName
(flag-lookup) Calling .GetCreateFlags
Found binary path at /data/dev/docker-machine/docker-machine-driver-ionoscloud
Launching plugin server for driver ionoscloud
Plugin server listening at address 127.0.0.1:35231
() Calling .GetVersion
Using API Version  1
() Calling .SetConfigRaw
() Calling .GetMachineName
(test) Calling .GetMachineName
(test) Calling .DriverName
(test) Calling .GetCreateFlags
(test) Calling .GetCreateFlags
(test) Calling .GetCreateFlags
(test) Calling .SetConfigFromFlags
Reading certificate data from /home/ubuntu/.docker/machine/certs/ca.pem
Decoding PEM data...
Parsing certificate...
Reading certificate data from /home/ubuntu/.docker/machine/certs/cert.pem
Decoding PEM data...
Parsing certificate...
Running pre-create checks...
(test) Calling .PreCreateCheck
(test) IONOS Cloud Driver Version: 6.1.3
(test) SDK-GO Version: 6.1.3
(test) Got existing LAN!
(test) Creating machine under LAN 2
(test) Creating machine under vdc-service datacenter
(test) Calling .GetConfigRaw
Creating machine...
(test) Calling .Create
(test) Creating SSH key...
(test) DBG | SSH Key generated in file: /home/ubuntu/.docker/machine/machines/test/id_rsa.pub
(test) DBG | Getting existing datacenter..
(test) DBG | Datacenter ID: 94f5ba0e-5786-47f4-9366-63c36933f658
(test) Got existing LAN!
(test) Using user data: I2Nsb3VkLWNvbmZpZwoKY2EtY2VydHM6CiAgcmVtb3ZlX2RlZmF1bHRzOiBmYWxzZQogIHRydXN0ZWQ6CiAgICAtIHwKICAgICAgLS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCiAgICAgIE1JSUJxVENDQVU2Z0F3SUJBZ0lSQUlFdWZzR1hUUnlVQzR0c0lXMzk4U013Q2dZSUtvWkl6ajBFQXdJd01qRVQKICAgICAgTUJFR0ExVUVDaE1LUkdWMlQzQnpJRXhoWWpFYk1Ca0dBMVVFQXhNU1JHVjJUM0J6SUV4aFlpQlNiMjkwSUVOQgogICAgICBNQjRYRFRJeU1ERXhOVEE0TXpBd01Wb1hEVE15TURFeE16QTRNekF3TVZvd01qRVRNQkVHQTFVRUNoTUtSR1YyCiAgICAgIFQzQnpJRXhoWWpFYk1Ca0dBMVVFQXhNU1JHVjJUM0J6SUV4aFlpQlNiMjkwSUVOQk1Ga3dFd1lIS29aSXpqMEMKICAgICAgQVFZSUtvWkl6ajBEQVFjRFFnQUUzQ2NHcGdkNS9qTUR0NDJuT0I5OERWb3BwQWRaMXZZMFVzMldydFE3bnY1cwogICAgICBpWmVuRGlJbUc5VGRjZVIzUDdhMnd2bmhVQW1pQmlaelQweXgvbWxjd3FORk1FTXdEZ1lEVlIwUEFRSC9CQVFECiAgICAgIEFnRUdNQklHQTFVZEV3RUIvd1FJTUFZQkFmOENBUUV3SFFZRFZSME9CQllFRkZRODkvNmp6NFFpNFQ1OUJIWUMKICAgICAgcUpsamFOVHFNQW9HQ0NxR1NNNDlCQU1DQTBrQU1FWUNJUURJNVpzbmczdlFUSlFtM1RpTnRGQ2xTK3hjSUlZegogICAgICBCQVN1Q0dpRzZMbVo3d0loQUpYSHdyUHBYakVWOEI0TUwwUVgzSXdJaDNjdkEraUxYb0hBdHZvbEY1KzAKICAgICAgLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQoKdXNlcnM6CiAgLSBkZWZhdWx0ICNEZWZpbmUgYSBkZWZhdWx0IHVzZXIKICAtIG5hbWU6IHRlc3QKICAgIGdlY29zOiB0ZXN0CiAgICBncm91cHM6IHN1ZG8sIHVzZXJzLCBhZG1pbgogICAgc3VkbzogQUxMPShBTEwpIE5PUEFTU1dEOkFMTAogICAgc2hlbGw6IC9iaW4vYmFzaAogICAgbG9ja19wYXNzd2Q6IGZhbHNlCiAgICBzc2hfYXV0aG9yaXplZF9rZXlzOgogICAgICAtIHNzaC1yc2EgQUFBQUIzTnphQzF5YzJFQUFBQURBUUFCQUFBQmdRQ3hDRy85T09rbzFIbFVVZ21EYmVWQVZ1d1VJejRnaFk1N0JGUzkrM3ppNUh3ZERkL2tJbC9hRGN2Z0V0QUVYN09maXdRc3NvQXRSVUhCRWppd2tFUGMwREVSNmtLa0RidHhHUVJSOFRHWlphV1lxREhPT0pKRXF0MTRTREp0WU9wcHZ6MXdBNlk3cWlORndDUmgwWXJ5dkRINWdmOVZWbFNaa0FYbFM5SUNUNDRXNUV5YjZ2UVpxSHhXak9BekZZSGRNcFQ0QWs3Y1JZSDdqUkVMVFcwUUNtc2JJcWZTd2lPN3BJZk95dWtPaklvWkJXWDJMaUJaL05qZDY2U04wK3JpMkhvSTdQN2s3T2VqcUlKb2orVEpZM2gxZ2t3dGJ0ZUoxam9WQU04em1OWFdNblE5aTREcGJaUWZ2Um82NnlHd0RDbFBFYTB6TzhsV29CYnpRa2RQalpsZ01NMEM0aVI3NVJ0cndZSE9sRFBaMytWY3M5cG44KzkyK1VTZ3hWa0phczJKS3p3T0swTG13eG1wcjBNeGRvOTJkZXdIR3ZlSTJCdkNPTVVwMkhXaDVTSUFhTVMwWUxFVzN6T2ROMDlJY05kejBDTE5ZMW5udGNsR3VWQW1oY1laR3VhRS9PdXozcTBpa3VEbGZqcDBrSkJQZ3FXZ2JVUFZjb0lXZFcwPSB0b2JpYXNtdWxsZXJATUJQMDEubG9jYWwKCnN5c3RlbV9pbmZvOgogIGRlZmF1bHRfdXNlcjoKICAgIG5hbWU6IHVidW50dQogICAgZ2Vjb3M6IHVidW50dQogICAgbG9ja19wYXNzd2Q6IGZhbHNlCiAgICBncm91cHM6IHN1ZG8sIHVzZXJzLCBhZG1pbgogICAgc2hlbGw6IC9iaW4vYmFzaAogICAgc3VkbzogWyJBTEw9KEFMTCkgTk9QQVNTV0Q6QUxMIl0KICAgIHNzaF9hdXRob3JpemVkX2tleXM6CiAgICAgIC0gc3NoLXJzYSBBQUFBQjNOemFDMXljMkVBQUFBREFRQUJBQUFCZ1FDeENHLzlPT2tvMUhsVVVnbURiZVZBVnV3VUl6NGdoWTU3QkZTOSszemk1SHdkRGQva0lsL2FEY3ZnRXRBRVg3T2Zpd1Fzc29BdFJVSEJFaml3a0VQYzBERVI2a0trRGJ0eEdRUlI4VEdaWmFXWXFESE9PSkpFcXQxNFNESnRZT3Bwdnoxd0E2WTdxaU5Gd0NSaDBZcnl2REg1Z2Y5VlZsU1prQVhsUzlJQ1Q0NFc1RXliNnZRWnFIeFdqT0F6RllIZE1wVDRBazdjUllIN2pSRUxUVzBRQ21zYklxZlN3aU83cElmT3l1a09qSW9aQldYMkxpQlovTmpkNjZTTjArcmkySG9JN1A3azdPZWpxSUpvaitUSlkzaDFna3d0YnRlSjFqb1ZBTTh6bU5YV01uUTlpNERwYlpRZnZSbzY2eUd3RENsUEVhMHpPOGxXb0JielFrZFBqWmxnTU0wQzRpUjc1UnRyd1lIT2xEUFozK1ZjczlwbjgrOTIrVVNneFZrSmFzMkpLendPSzBMbXd4bXByME14ZG85MmRld0hHdmVJMkJ2Q09NVXAySFdoNVNJQWFNUzBZTEVXM3pPZE4wOUljTmR6MENMTlkxbm50Y2xHdVZBbWhjWVpHdWFFL091ejNxMGlrdURsZmpwMGtKQlBncVdnYlVQVmNvSVdkVzA9IHRvYmlhc211bGxlckBNQlAwMS5sb2NhbAoKI0Rpc2FibGUgcm9vdCBMb2dpbgpkaXNhYmxlX3Jvb3Q6IHRydWUKZGlzYWJsZV9yb290X29wdHM6IG5vLXBvcnQtZm9yd2FyZGluZyxuby1hZ2VudC1mb3J3YXJkaW5nLG5vLVgxMS1mb3J3YXJkaW5nLGNvbW1hbmQ9ImVjaG8gJ1BsZWFzZSBsb2dpbiBhcyBub3JtYWwgdXNlciByYXRoZXIgdGhhbiB0aGUgdXNlciBcIiRESVNBQkxFX1VTRVJcIi4nO2VjaG87c2xlZXAgMTA7ZXhpdCAxNDIiCgojIERpc2FibGUgc3NoIHBhc3N3b3JkIGF1dGhlbnRpY2F0aW9uCnNzaF9wd2F1dGg6IGZhbHNlICNVc2UgcHdkIHRvIGFjY2VzcyAob3RoZXJ3aXNlIGZvbGxvdyBvZmZpY2lhbCBkb2MgdG8gdXNlIHNzaC1rZXlzKQoKd3JpdGVfZmlsZXM6CiAgLSBwYXRoOiAvZXRjL211bHRpcGF0aC5jb25mCiAgICBjb250ZW50OiB8CiAgICAgIGJsYWNrbGlzdCB7CiAgICAgICAgZGV2bm9kZSAiXnNkW2MtejAtOV0rIgogICAgICB9CiAgICBhcHBlbmQ6IHRydWUKICAtIHBhdGg6IC9ldGMvYXB0L2FwdC5jb25mLmQvOTlkaXNhYmxlLWlwdjYKICAgIGNvbnRlbnQ6IHwKICAgICAgQWNxdWlyZTo6Rm9yY2VJUHY0ICJ0cnVlIjsKICAtIHBhdGg6IC9ldGMvc3lzY3RsLmQvOTktc3lzY3RsLmNvbmYKICAgIGNvbnRlbnQ6IHwKICAgICAgbmV0LmlwdjYuY29uZi5hbGwuZGlzYWJsZV9pcHY2ID0gMQogICAgICBuZXQuaXB2Ni5jb25mLmRlZmF1bHQuZGlzYWJsZV9pcHY2ID0gMQogICAgICBuZXQuaXB2Ni5jb25mLmxvLmRpc2FibGVfaXB2NiA9IDEKCnBhY2thZ2VfdXBkYXRlOiB0cnVlCnBhY2thZ2VfdXBncmFkZTogdHJ1ZQojcGFja2FnZV9yZWJvb3RfaWZfcmVxdWlyZWQ6IHRydWUKCnBhY2thZ2VzOgogICMgTGlzdCBvZiBEZWZhdWx0IHBhY2tlcywgdGhhdCB3aWxsIGFsd2F5cyBiZSBpbnN0YWxsZWQKICAtIG5mcy1jb21tb24KCm1hbmFnZV9ldGNfaG9zdHM6IHRydWUKYXB0OgoKdGltZXpvbmU6IEV1cm9wZS9CZXJsaW4KbG9jYWxlOiBkZV9ERQo=
(test) Image Id: 4292035b-0bb7-11ee-8e1b-52f1c6822ebb
(test) DBG | Datacenter Id: 94f5ba0e-5786-47f4-9366-63c36933f658
(test) DBG | Server Id:
(test) WARNING: Error creating machine. Rolling back...
(test) NOTICE: Please check IONOS Cloud Console/CLI to ensure there are no leftover resources.
(test) Starting deleting resources...
(test) DBG | Starting deleting Nic with Id:
(test) DBG | Starting deleting Volume with Id:
(test) DBG | Starting deleting Server with Id:
(test) DBG | Starting deleting IpBlock with Id:
Error creating machine: Error in driver during machine creation: failed to create server due to error: [(root).entities.volumes.items.[0].properties.image] Not a public image: 4292035b-0bb7-11ee-8e1b-52f1c6822ebb
 Removing created resources: 4 errors occurred:
    * error deleting NIC: Resource does not exist
    * error removing volume: Http method 'DELETE' not allowed. Expected one of [POST,GET,OPTIONS]
    * error deleting server: Http method 'DELETE' not allowed. Expected one of [POST,GET,OPTIONS]
    * error deleting ipblock: Http method 'DELETE' not allowed. Expected one of [POST,GET,OPTIONS]
rmocanu-ionos commented 1 year ago

This should be fixed with 6.1.4, please reopen the issue if you have any more problems