[Openstack] file injection problem

Volodymyr Litovka doka.ua at gmx.com
Thu Oct 26 07:41:18 UTC 2017


Answer is:

as written in source code, "config-drive = true" and file injection 
using personality are mutually exclusive mechanisms.

On 10/25/17 2:14 AM, Volodymyr Litovka wrote:
> Also, python-guestfs package installed as well, so Nova is able to use 
> it, at least quick check (snipped from Nova sources) passed:
>
> # python2.7
> Python 2.7.12 (default, Nov 19 2016, 06:48:10)
> [GCC 5.4.0 20160609] on linux2
> Type "help", "copyright", "credits" or "license" for more information.
> >>> from oslo_utils import importutils
> >>> g = importutils.import_module('guestfs')
> >>> print g
> <module 'guestfs' from '/usr/lib/python2.7/dist-packages/guestfs.pyc'>
> >>> from eventlet import tpool
> >>> t = tpool.Proxy(g.GuestFS())
> >>> t.add_drive("/dev/null")
> >>> t.launch()
> >>> print t
> <guestfs.GuestFS object at 0x7f99c437e410>
>
> No ideas why I'm facing this problem. Anybody can comment on this?
>
> Thanks again.
>
> On 10/25/17 1:24 AM, Volodymyr Litovka wrote:
>> Hi colleagues,
>>
>> it makes me crazy, but how to make it work file injection into instance?
>>
>> nova.conf already configured with
>>
>> ======
>> [DEFAULT]
>> debug=true
>>
>> [libvirt]
>> inject_partition = -1
>>
>> [guestfs]
>> debug=true
>>
>> [quota]
>> injected_files = 5
>> injected_file_content_bytes = 10240
>> injected_file_path_length = 255
>> =======
>>
>> libguestfs and libguestfs-tools are installed (on host machine):
>>
>> libguestfs-hfsplus:amd64            1:1.32.2-4ubuntu2
>> libguestfs-perl                     1:1.32.2-4ubuntu2
>> libguestfs-reiserfs:amd64           1:1.32.2-4ubuntu2
>> libguestfs-tools                    1:1.32.2-4ubuntu2
>> libguestfs-xfs:amd64                1:1.32.2-4ubuntu2
>> libguestfs0:amd64                   1:1.32.2-4ubuntu2
>>
>> and, finally,
>>
>> nova --debug boot --config-drive true --image <image> --flavor 
>> <flavor> --security-groups <group> --key-name <key> --file 
>> /etc/qqq=/dTest.txt --nic [...] dtest
>>
>> makes a correct request (note a personality parameter)
>>
>> REQ: curl -g -i -X POST http://controller:8774/v2.1/servers -H 
>> "Accept: application/json" -H "User-Agent: python-novaclient" -H 
>> "OpenStack-API-Version: compute 2.53" -H 
>> "X-OpenStack-Nova-API-Version: 2.53" -H "X-Auth-Token: 
>> {SHA1}11e6bac1ea20a124903ff967873c186a179d545e" -H "Content-Type: 
>> application/json" -d '{"server": {"name": "dtest", "imageRef": 
>> "12c86830-8d76-4159-a6bc-81966d7a220e", "key_name": "xxx", 
>> "flavorRef": "d0ff4bc5-df38-4f20-8908-afc516d594e6", "max_count": 1, 
>> "min_count": 1, *"personality": [{"path": "/etc/qqq", "contents": 
>> "ZG9rYSB0ZXN0CmRva2EgdGVzdApkb2thIHRlc3QK"}]*, "networks": [{"uuid": 
>> "9cc72002-fe24-44a5-aa04-22221ac0470f"}], "security_groups": 
>> [{"name": "dfc7d642-b55f-465c-84c2-9d95c9c565bf"}], "config_drive": 
>> true}}'
>>
>> but nothing everywhere - neither '/etc/qqq' on guest VM nor logs 
>> (according to guestfs.debug=true) on host machine.
>>
>> It's Pike on Ubuntu 16.04.3.
>>
>> What I'm doing wrong?
>>
>> Thanks.
>>
>> -- 
>> Volodymyr Litovka
>>    "Vision without Execution is Hallucination." -- Thomas Edison
>
> -- 
> Volodymyr Litovka
>    "Vision without Execution is Hallucination." -- Thomas Edison

-- 
Volodymyr Litovka
   "Vision without Execution is Hallucination." -- Thomas Edison

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20171026/299bec7a/attachment.html>


More information about the Openstack mailing list