DId you compile it on the target virtual hardware. If not do so. If you have already tried this, use a generic platform definition rather than letting it try to optimise for the exact platform. Some VMs appear to mis-declare their “hardware” capabilities.
Running Asterisk in the cloud is liable to produce excessive jitter.
I can’t understand david55
you mean that vm environment appear mis-declared their “hardware” capabilities and it makes asterisk think the server isn’t enough to start?
When you build Asterisk from source, the C compiler can query the hardware (or possibly the OS) for the exact machine code instruction set supported. There have been cases, on virtual machines, where the compiler thinks that some machine instructions are available, when they are not. That probably means that the virtual machine is claiming to be running on better hardware than it really is running on.
The way round this is to specify a more generic target platform, like i586, when building Asterisk.
Alternatively, it is possible that a packaged version was compiled on a more capable machine than the virtual machine on which you are running it. In that case, compiling it on the actual machine will produce a build that better matches the machine.