By upgrading to linode_api4 API from the previous one, the complexity of the API to linode was greatly reduced. We may need to reintroduce some parallelism in this, but just wanted to get the basic idea across first. There are several important changes caused by this:
use "volumes" instead of "disks" with OSDs - makes it easy to have multiple OSDs per host, for example, and makes it easy to dynamically request additional space.
use ipv6 SLAAC address, which is always present on any linode, removing need for adding a private IP addr. There are some syntax gotchas with using ipv6 though. For example, we have to put ip addresses in /etc/hosts (or DNS) in order to get cephfs to mount them, because ipv6 addrs have colon punctuation that causes problems for the Linux mount command.
a lot of the complexity of creating linodes with the old API is gone.
python3 is required by linode_api4, see articles describing usual code changes required, they were quite small (i.e. unicode() not required). However, centos makes this a bit more difficult, see this article.
Once you have python3 set up and your python command will automatically start python3 instead of python2, then the centos command:
I'm going to withdraw this PR, needs to be done more incrementally than this. It turns out that it is not possible to get high IOPS from linode "volumes". However, the IPv6 stuff worked fine.
By upgrading to linode_api4 API from the previous one, the complexity of the API to linode was greatly reduced. We may need to reintroduce some parallelism in this, but just wanted to get the basic idea across first. There are several important changes caused by this:
Once you have python3 set up and your python command will automatically start python3 instead of python2, then the centos command:
will let you run this.