Recently one of our customers noticed that one of their instances was failing to boot on a c6g.xlarge. We asked for some sample code as we were not able to confirm what they were seeing. (note: Sample reproducible code is always super helpful in this case). After some back and forth we realized they were having trouble booting on a c6g.8xlarge - not a c6g.xlarge. What's the difference? It's basically the same instance type - it's not like it's a different arch or a different instance class. The difference, amongst other differences like much larger amounts of ram, is that one has 4 vcpu and the other has 32.
There are multiple clocks on your machine. Primarily, you've got the RTC (real time clock) and the system clock. The RTC is on all the time even when the power is off - it uses a battery. The system clock on the other hand starts at boot. We've had NTP support for a long time now. We've even had PTP clock support for special AWS instance types that use it, however we never really exported this functionality for other programs to utilize it.
When making a package for opencloud I noticed that we were missing the extended attribute family of syscalls. OpenCloud is designed not to have to rely on a separate database and stores metdata directly into files with extended attributes, falling back on external metadata files if necessary.
One of our users had asked about running WildFly and while putting together the package for it I noticed a call to copy_file_range was failing. In many cases these types of functions are opportunistic - that is they fall back on other less performant ways of doing the same thing.
While looking at a sample grpc program the other day a user had mentioned that certain socket options were not being honored in nanos. This is not surprising and there are quite a few things like this nanos might not support today - you'd be surprised how much code works regardless.
Nanos is not linux but sometimes we stub certain syscalls so that applications written under the assumption they run on linux still work under Nanos. sched_setscheduler, sched_get_priority_max, sched_get_priority_min are all syscalls we recently stubbed.
Security does not have to be the nightmare it is. You've got better things to do than dealing with VM sprawl. Show everyone how you were responsible for halving the infrastructure budget. Be the winner!
Schedule a Demo