diff --git a/CHANGELOG.md b/CHANGELOG.md index e8299b8bde..9ce229e13d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -37,6 +37,10 @@ This file is used to list changes made in each version of the AWS ParallelCluste - Remove generation of DSA keys for login nodes as DSA, which became unsupported in OpenSSH 9.7+. - Set instance ID and instance type information in Slurm upon compute nodes launch. - Install NVIDIA drivers without the option 'no-cc-version-check', which is now deprecated in the NVIDIA installer. +- Reduce RHEL/Rocky Linux boot time by the following network customization: + - Configuring higher priority to IPv4 than IPv6 + - Disabling Internet connectivity check + - Configuring only IPv4 IMDS endpoint to cloud-init **BUG FIXES** - Remove usage of cfn-init for compute node bootstrapping to reduce node scale-up time. diff --git a/cookbooks/aws-parallelcluster-slurm/files/redhat/dns_domain/99-disable-ipv6-metadata.cfg b/cookbooks/aws-parallelcluster-slurm/files/redhat/dns_domain/99-disable-ipv6-metadata.cfg new file mode 100644 index 0000000000..71dd7f17ad --- /dev/null +++ b/cookbooks/aws-parallelcluster-slurm/files/redhat/dns_domain/99-disable-ipv6-metadata.cfg @@ -0,0 +1,3 @@ +datasource: + Ec2: + metadata_urls: [ 'http://169.254.169.254' ] \ No newline at end of file diff --git a/cookbooks/aws-parallelcluster-slurm/files/redhat/dns_domain/NetworkManager.conf b/cookbooks/aws-parallelcluster-slurm/files/redhat/dns_domain/NetworkManager.conf index 64540b3c48..3caa0bccac 100644 --- a/cookbooks/aws-parallelcluster-slurm/files/redhat/dns_domain/NetworkManager.conf +++ b/cookbooks/aws-parallelcluster-slurm/files/redhat/dns_domain/NetworkManager.conf @@ -23,6 +23,13 @@ plugins = ifcfg-rh, dhcp = dhclient +[connection] +ipv4.route-metric=100 +ipv6.route-metric=200 + +[connectivity] +enabled=false + [logging] # When debugging NetworkManager, enabling debug logging is of great help. # diff --git a/cookbooks/aws-parallelcluster-slurm/files/rocky/dns_domain/99-disable-ipv6-metadata.cfg b/cookbooks/aws-parallelcluster-slurm/files/rocky/dns_domain/99-disable-ipv6-metadata.cfg new file mode 100644 index 0000000000..71dd7f17ad --- /dev/null +++ b/cookbooks/aws-parallelcluster-slurm/files/rocky/dns_domain/99-disable-ipv6-metadata.cfg @@ -0,0 +1,3 @@ +datasource: + Ec2: + metadata_urls: [ 'http://169.254.169.254' ] \ No newline at end of file diff --git a/cookbooks/aws-parallelcluster-slurm/files/rocky/dns_domain/NetworkManager.conf b/cookbooks/aws-parallelcluster-slurm/files/rocky/dns_domain/NetworkManager.conf index 64540b3c48..3caa0bccac 100644 --- a/cookbooks/aws-parallelcluster-slurm/files/rocky/dns_domain/NetworkManager.conf +++ b/cookbooks/aws-parallelcluster-slurm/files/rocky/dns_domain/NetworkManager.conf @@ -23,6 +23,13 @@ plugins = ifcfg-rh, dhcp = dhclient +[connection] +ipv4.route-metric=100 +ipv6.route-metric=200 + +[connectivity] +enabled=false + [logging] # When debugging NetworkManager, enabling debug logging is of great help. # diff --git a/cookbooks/aws-parallelcluster-slurm/resources/dns_domain/dns_domain_redhat8.rb b/cookbooks/aws-parallelcluster-slurm/resources/dns_domain/dns_domain_redhat8.rb index 3cb10a8d8f..4b63e5eca8 100644 --- a/cookbooks/aws-parallelcluster-slurm/resources/dns_domain/dns_domain_redhat8.rb +++ b/cookbooks/aws-parallelcluster-slurm/resources/dns_domain/dns_domain_redhat8.rb @@ -33,6 +33,16 @@ mode '0644' end + # Disable ipv6 IMDS in cloud init to speed up + cookbook_file '99-disable-ipv6-metadata.cfg' do + path '/etc/cloud/cloud.cfg.d/99-disable-ipv6-metadata.cfg' + source 'dns_domain/99-disable-ipv6-metadata.cfg' + cookbook 'aws-parallelcluster-slurm' + user 'root' + group 'root' + mode '0644' + end + action_update_search_domain network_service 'Restart network service' end diff --git a/cookbooks/aws-parallelcluster-slurm/resources/dns_domain/dns_domain_rocky8.rb b/cookbooks/aws-parallelcluster-slurm/resources/dns_domain/dns_domain_rocky8.rb index 4ad36e1856..448619f0ac 100644 --- a/cookbooks/aws-parallelcluster-slurm/resources/dns_domain/dns_domain_rocky8.rb +++ b/cookbooks/aws-parallelcluster-slurm/resources/dns_domain/dns_domain_rocky8.rb @@ -33,6 +33,16 @@ mode '0644' end + # Disable ipv6 IMDS in cloud init to speed up + cookbook_file '99-disable-ipv6-metadata.cfg' do + path '/etc/cloud/cloud.cfg.d/99-disable-ipv6-metadata.cfg' + source 'dns_domain/99-disable-ipv6-metadata.cfg' + cookbook 'aws-parallelcluster-slurm' + user 'root' + group 'root' + mode '0644' + end + action_update_search_domain network_service 'Restart network service' end