New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
NTP/PTP by default on Azure/AWS/GCP #1792
Conversation
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
PTP_1588_CLOCK defaults to =y, make it =m explicitly. Switch PTP_1588_CLOCK_KVM to module as well, so tath it doesn't load on non-KVM platforms. Enable PTP_1588_CLOCK_VMW so that PTP timesync to the host is available there as well. We don't need PTP support to be compiled into the kernel, it is not essential for system boot. Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
We don't care too much for readline support and this avoids pulling libedit into a sysext that wants to ship chrony. Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
Add chrony to RDEPENDS so that it is built for the board sysroot and can be included into a sysext. Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
Sysexts can includes services that have a Conflicts=systemd-timesyncd entry. To ensure that this takes effect, start timesyncd after the ensure-sysext.service. Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
Along with configuration, tmpfiles setup and service dependencies. The files are added through normal ebuild mechanisms. The config file is based on what Ubuntu ships on Azure. Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
…p_hyperv Inspired by microsoft/azurelinux#6234, requires a udev rule to be shipped with the OS, since udev rules in sysexts don't quite work. Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
Jenkins CI: http://jenkins.infra.kinvolk.io:8080/job/container/job/packages_all_arches/3704/cldsv/ TODO: changelog |
sdk_container/src/third_party/coreos-overlay/coreos-base/misc-files/files/ntp/ntp.conf
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you, looks very clean :) I just wonder if we can plan for a IPv6-ready default behavior without having the user to enable the entry.
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
… rule Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
…conf The goal is to enable ntpd by default on AWS/GCP with using the cloud provided ntp endpoint. Enabling ntpd.service is the easy part. Enabling the correct ntp server is trickier. I would love to ship an OEM specific ntp.conf, but this might interfere with user modifications to either ntpd.service or ntp.conf. The safest way to implement this is to add the AWS/GCP time sync address (which are link-local address) to the default ntp.conf. This will work on AWS/GCP where ntpd will be enabled by default, and if a user on another platform enables ntpd they will simply have a non-responsive source in their server list - which is not a problem for ntpd. Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
sdk_container/src/third_party/portage-stable/net-misc/chrony/Manifest
Outdated
Show resolved
Hide resolved
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
Signed-off-by: Jeremi Piotrowski <jpiotrowski@microsoft.com>
NTP/PTP by default on Azure/AWS
This PR tackles enabling time sync to cloud provided time sync services on Azure, AWS, and GCP. On Azure this requires adding chrony to oem sysext. On AWS/GCP we enable ntpd by default and add the aws/gcp time sync service to the default server list.
Depends on:
See flatcar/Flatcar#1340.
How to use
Checked
chronyc sources
on Azure andntpq -pn
on AWS/GCP.Testing done
Checked time sync on AWS and Azure.
changelog/
directory (user-facing change, bug fix, security fix, update)/boot
and/usr
size, packages, list files for any missing binaries, kernel modules, config files, kernel modules, etc.