From 318d25eb077b4659c6bd2f93283f18d0451aec95 Mon Sep 17 00:00:00 2001 From: Pasha Date: Wed, 24 Aug 2022 23:52:13 +0000 Subject: update readme and cloud_native --- cloud_native | 79 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 cloud_native (limited to 'cloud_native') diff --git a/cloud_native b/cloud_native new file mode 100644 index 0000000..964a6aa --- /dev/null +++ b/cloud_native @@ -0,0 +1,79 @@ + +Cloud native way (currently not working fully as iproute2 package is missing) + +1. create user account "debian". (openstack will try to push selected ssh key based login for this account.) +2. workaround: currnet GNU Hurd in openstack could not read login metadata. Therefore, create another account name hurdstack. We will use this account to login via ssh. + +------------------- +set console output +------------------- +# sed -i 's/{GRUB_CMDLINE_GNUMACH}/{GRUB_CMDLINE_GNUMACH} console=com0/' /etc/grub.d/10_hurd +# export PATH=$PATH:/usr/sbin/:/sbin/ +# update-grub + +------------------ +install packages +------------------ +# apt-get install patch cloud-init inetutils-tools + +----------------------------------------------- +patch cloud-init for inetutils-ifconfig support +----------------------------------------------- +# patch /usr/lib/python3/dist-packages/cloudinit/netinfo.py < netinfo.py.patch + +(md5sum /usr/lib/python3/dist-packages/cloudinit/netinfo.py and set the value - optional) + +# sed -i "s/004c853827df095227eef86175ee351b usr\/lib\/python3\/dist-packages\/cloudinit\/netinfo.py/79af408603bc6e3489fd2d3f1a0e9cac usr\/lib\/python3\/dist-packages\/cloudinit\/netinfo.py/" /var/lib/dpkg/info/cloud-init.md5sums + +------------------------------- +remove MAC address and clean up +------------------------------- +# virt-sysprep -d hurdstack +# virsh undefine hurdstack + +-------------------------------------------------------------- +upload in openstack (you may change --public to other settings) +-------------------------------------------------------------- +$ openstack image create \ + --container-format bare \ + --disk-format qcow2 \ + --property hw_disk_bus=ide \ + --property os_type=linux \ + --property os_distro=debian \ + --property os_admin_user=debian \ + --property os_version='10.12.7' \ + --property hw_vif_model=e1000 \ + --private \ + --file hurdstack.qcow2 \ + hurdstack + +------------------------------ +example create server command +------------------------------ +list your available net-id +$ openstack network list + +list your available security group id +$ openstack security group list + +start an instance with any flavor (example with m1.nano) +$ openstack server create \ + --flavor m1.nano \ + --image hurdstack \ + --nic net-id=44b3993a-60dd-4074-a911-1b9ac4b8b6fa \ + --security-group 8b5d5482-2686-40a8-b394-5c764b6fe310 \ + --key-name mykey hurdstackinstance + +-------------------- +check server status +-------------------- +# openstack server list + +enable port 22 from web-interface or command line for ssh login. + +You may check status in openstack web-interface logs and ssh when it is ready. +ssh might take several minutes as cloud-init is trying to fetch metadata on boot which is still unavailable from GNU Hurd. + +links: +https://www.debian.org/ports/hurd/hurd-install +https://docs.openstack.org/image-guide/create-images-manually.html -- cgit v1.2.1