From 8b2bd125ddf7ec8cc561d6fea22a69d335206a7b Mon Sep 17 00:00:00 2001 From: Oleksandr Miroshnychenko Date: Wed, 23 Apr 2025 17:37:28 +0300 Subject: [PATCH 1/3] PKG-370 Jenkins farm fixes --- IaC/cloud.cd/JenkinsStack.yml | 10 +++++----- IaC/ps3.cd/JenkinsStack.yml | 6 ++++-- IaC/ps80.cd/JenkinsStack.yml | 10 +++++----- IaC/pxc.cd/JenkinsStack.yml | 10 +++++----- IaC/rel.cd/JenkinsStack.yml | 12 ++++++------ 5 files changed, 25 insertions(+), 23 deletions(-) diff --git a/IaC/cloud.cd/JenkinsStack.yml b/IaC/cloud.cd/JenkinsStack.yml index d94b596b6c..86dd8a3d85 100644 --- a/IaC/cloud.cd/JenkinsStack.yml +++ b/IaC/cloud.cd/JenkinsStack.yml @@ -470,16 +470,16 @@ Resources: LaunchTemplateId: !Ref JMasterTemplate Version: !GetAtt JMasterTemplate.LatestVersionNumber Overrides: - - InstanceType: m4.large + - InstanceType: c5a.xlarge AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] - - InstanceType: m5.large + - InstanceType: c5d.xlarge AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] - - InstanceType: m5a.large + - InstanceType: c6in.xlarge AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] - - InstanceType: m5ad.large + - InstanceType: c7i-flex.xlarge AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] @@ -756,7 +756,7 @@ Resources: EOF fi - ln -s /mnt/$JENKINS_HOST/ssl/nginx.conf /usr/local/openresty/nginx/conf/jenkins.conf + ln -f -s /mnt/$JENKINS_HOST/ssl/nginx.conf /usr/local/openresty/nginx/conf/jenkins.conf sed -i'' -e 's/listen/#listen/; s/mime.types/jenkins.conf/' /usr/local/openresty/nginx/conf/nginx.conf systemctl enable --now openresty } diff --git a/IaC/ps3.cd/JenkinsStack.yml b/IaC/ps3.cd/JenkinsStack.yml index 589614c042..7a9c21a13b 100644 --- a/IaC/ps3.cd/JenkinsStack.yml +++ b/IaC/ps3.cd/JenkinsStack.yml @@ -554,7 +554,7 @@ Resources: rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key yum -y install java-17-amazon-corretto yum -y update --security - yum -y install jenkins-2.462.1 certbot git dnf-automatic aws-cli xfsprogs openresty + yum -y install jenkins-2.492.3 certbot git dnf-automatic aws-cli xfsprogs openresty sed -i 's/upgrade_type = default/upgrade_type = security/' /etc/dnf/automatic.conf sed -i 's/apply_updates = no/apply_updates = yes/' /etc/dnf/automatic.conf @@ -736,7 +736,7 @@ Resources: EOF fi - ln -s /mnt/$JENKINS_HOST/ssl/nginx.conf /usr/local/openresty/nginx/conf/jenkins.conf + ln -f -s /mnt/$JENKINS_HOST/ssl/nginx.conf /usr/local/openresty/nginx/conf/jenkins.conf sed -i'' -e 's/listen/#listen/; s/mime.types/jenkins.conf/' /usr/local/openresty/nginx/conf/nginx.conf systemctl enable --now openresty @@ -757,6 +757,8 @@ Resources: systemctl stop openresty sleep 2 systemctl start openresty + systemctl enable certbot-renew.timer + systemctl restart certbot-renew.timer } setup_dhparam() { diff --git a/IaC/ps80.cd/JenkinsStack.yml b/IaC/ps80.cd/JenkinsStack.yml index 7a38b3c54b..e4983700da 100644 --- a/IaC/ps80.cd/JenkinsStack.yml +++ b/IaC/ps80.cd/JenkinsStack.yml @@ -451,16 +451,16 @@ Resources: LaunchTemplateId: !Ref JMasterTemplate Version: !GetAtt JMasterTemplate.LatestVersionNumber Overrides: - - InstanceType: c5.xlarge + - InstanceType: c5a.xlarge AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] - - InstanceType: c5a.xlarge + - InstanceType: c5d.xlarge AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] - - InstanceType: c5ad.xlarge + - InstanceType: c6in.xlarge AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] - - InstanceType: c5d.xlarge + - InstanceType: c7i-flex.xlarge AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] @@ -737,7 +737,7 @@ Resources: EOF fi - ln -s /mnt/$JENKINS_HOST/ssl/nginx.conf /usr/local/openresty/nginx/conf/jenkins.conf + ln -f -s /mnt/$JENKINS_HOST/ssl/nginx.conf /usr/local/openresty/nginx/conf/jenkins.conf sed -i'' -e 's/listen/#listen/; s/mime.types/jenkins.conf/' /usr/local/openresty/nginx/conf/nginx.conf systemctl enable --now openresty diff --git a/IaC/pxc.cd/JenkinsStack.yml b/IaC/pxc.cd/JenkinsStack.yml index 13eba84d0f..6c4f691730 100644 --- a/IaC/pxc.cd/JenkinsStack.yml +++ b/IaC/pxc.cd/JenkinsStack.yml @@ -434,16 +434,16 @@ Resources: LaunchTemplateId: !Ref JMasterTemplate Version: !GetAtt JMasterTemplate.LatestVersionNumber Overrides: - - InstanceType: c5d.xlarge + - InstanceType: c5a.xlarge AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] - - InstanceType: m5a.large + - InstanceType: c5d.xlarge AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] - - InstanceType: m5d.large + - InstanceType: c6in.xlarge AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] - - InstanceType: c6a.xlarge + - InstanceType: c7i-flex.xlarge AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] @@ -724,7 +724,7 @@ Resources: EOF fi - ln -s /mnt/$JENKINS_HOST/ssl/nginx.conf /usr/local/openresty/nginx/conf/jenkins.conf + ln -f -s /mnt/$JENKINS_HOST/ssl/nginx.conf /usr/local/openresty/nginx/conf/jenkins.conf sed -i'' -e 's/listen/#listen/; s/mime.types/jenkins.conf/' /usr/local/openresty/nginx/conf/nginx.conf systemctl enable --now openresty diff --git a/IaC/rel.cd/JenkinsStack.yml b/IaC/rel.cd/JenkinsStack.yml index bfb5c2df40..4758e5a915 100644 --- a/IaC/rel.cd/JenkinsStack.yml +++ b/IaC/rel.cd/JenkinsStack.yml @@ -440,7 +440,7 @@ Resources: ExcessCapacityTerminationPolicy: default IamFleetRole: !GetAtt SpotFleetRole.Arn ReplaceUnhealthyInstances: true - SpotPrice: 0.10 + SpotPrice: 0.15 TargetCapacity: 1 TerminateInstancesWithExpiration: false Type: maintain @@ -449,16 +449,16 @@ Resources: LaunchTemplateId: !Ref JMasterTemplate Version: !GetAtt JMasterTemplate.LatestVersionNumber Overrides: - - InstanceType: m4.large + - InstanceType: c5a.xlarge AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] - - InstanceType: m5.large + - InstanceType: c5d.xlarge AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] - - InstanceType: m5a.large + - InstanceType: c6in.xlarge AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] - - InstanceType: m5d.large + - InstanceType: c7i-flex.xlarge AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] @@ -736,7 +736,7 @@ Resources: EOF fi - ln -s /mnt/$JENKINS_HOST/ssl/nginx.conf /usr/local/openresty/nginx/conf/jenkins.conf + ln -f -s /mnt/$JENKINS_HOST/ssl/nginx.conf /usr/local/openresty/nginx/conf/jenkins.conf sed -i'' -e 's/listen/#listen/; s/mime.types/jenkins.conf/' /usr/local/openresty/nginx/conf/nginx.conf systemctl enable --now openresty From 777cc3bff9a10a7a480ce78d2a6d8b2c86adf052 Mon Sep 17 00:00:00 2001 From: Oleksandr Miroshnychenko Date: Thu, 24 Apr 2025 22:22:47 +0300 Subject: [PATCH 2/3] PKG-370 pg.cd: Jenkins farm fixes --- IaC/pg.cd/JenkinsStack.yml | 20 ++++++++++++-------- IaC/pg.cd/init.groovy.d/cloud.groovy | 12 ++++++------ 2 files changed, 18 insertions(+), 14 deletions(-) diff --git a/IaC/pg.cd/JenkinsStack.yml b/IaC/pg.cd/JenkinsStack.yml index bde46381dd..abe1459c1c 100644 --- a/IaC/pg.cd/JenkinsStack.yml +++ b/IaC/pg.cd/JenkinsStack.yml @@ -99,8 +99,9 @@ Resources: VpcId: !Ref JVPC CidrBlock: 10.177.2.0/24 MapPublicIpOnLaunch: true - AvailabilityZone: - Fn::Select: [ 2, !GetAZs '' ] + AvailabilityZone: eu-central-1c + #AvailabilityZone: + # Fn::Select: [ 2, !GetAZs '' ] Tags: - Key: Name Value: !Join [ '-', [ !Ref JShortName, 'C' ]] @@ -442,7 +443,7 @@ Resources: ExcessCapacityTerminationPolicy: default IamFleetRole: !GetAtt SpotFleetRole.Arn ReplaceUnhealthyInstances: true - SpotPrice: 0.17 + SpotPrice: 0.1702 TargetCapacity: 1 TerminateInstancesWithExpiration: false Type: maintain @@ -451,16 +452,16 @@ Resources: LaunchTemplateId: !Ref JMasterTemplate Version: !GetAtt JMasterTemplate.LatestVersionNumber Overrides: - - InstanceType: m5a.large + - InstanceType: i3en.large AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] - - InstanceType: m5d.large + - InstanceType: i4i.large AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] - - InstanceType: m6a.large + - InstanceType: r5a.large AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] - - InstanceType: m6i.large + - InstanceType: r5dn.large AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] @@ -744,7 +745,7 @@ Resources: EOF fi - ln -s /mnt/$JENKINS_HOST/ssl/nginx.conf /usr/local/openresty/nginx/conf/jenkins.conf + ln -f -s /mnt/$JENKINS_HOST/ssl/nginx.conf /usr/local/openresty/nginx/conf/jenkins.conf sed -i'' -e 's/listen/#listen/; s/mime.types/jenkins.conf/' /usr/local/openresty/nginx/conf/nginx.conf wget -O /usr/local/openresty/lualib/resty/http.lua \ @@ -852,3 +853,6 @@ Outputs: JMasterInstance: Description: Master Spot Fleet Value: !Ref JMasterInstance + AZList: + Description: "List of AZs available" + Value: !Join [ ", ", !GetAZs '' ] diff --git a/IaC/pg.cd/init.groovy.d/cloud.groovy b/IaC/pg.cd/init.groovy.d/cloud.groovy index 7e081cdf5e..683781a37f 100644 --- a/IaC/pg.cd/init.groovy.d/cloud.groovy +++ b/IaC/pg.cd/init.groovy.d/cloud.groovy @@ -18,7 +18,7 @@ Jenkins jenkins = Jenkins.getInstance() netMap = [:] netMap['eu-central-1b'] = 'subnet-085deaca8c1c59a4f' -netMap['eu-central-1c'] = 'subnet-0643c0784b4e3cedd' +netMap['eu-central-1c'] = 'subnet-0c13bab533d9ff1cc' imageMap = [:] imageMap['eu-central-1a.micro-amazon'] = 'ami-01fd08d7b0955d6d5' @@ -38,7 +38,7 @@ imageMap['eu-central-1b.min-ol-9-x64'] = imageMap['eu-central-1a.min-ol-9-x64'] imageMap['eu-central-1c.min-ol-9-x64'] = imageMap['eu-central-1a.min-ol-9-x64'] priceMap = [:] -priceMap['c5.large'] = '0.05' // type=c5.large, vCPU=2, memory=4GiB, saving=49%, interruption='<5%', price=0.053400 +priceMap['i3en.large'] = '0.15' // type=i3en.large, vCPU=2, memory=16GiB, saving=74%, interruption='<5%', price=0.078200 priceMap['i3en.2xlarge'] = '0.40' // type=i3en.2xlarge, vCPU=8, memory=64GiB, saving=70%, interruption='<5%', price=0.324000 userMap = [:] @@ -87,13 +87,13 @@ initMap['min-ol-8-x64'] = initMap['micro-amazon'] initMap['min-ol-9-x64'] = initMap['micro-amazon'] capMap = [:] -capMap['c5.large'] = '20' +capMap['i3en.large'] = '20' capMap['i3en.2xlarge'] = '40' typeMap = [:] -typeMap['micro-amazon'] = 'c5.large' -typeMap['min-centos-7-x64'] = 'c5.large' -typeMap['min-ol-8-x64'] = 'c5.large' +typeMap['micro-amazon'] = 'i3en.large' +typeMap['min-centos-7-x64'] = 'i3en.large' +typeMap['min-ol-8-x64'] = 'i3en.large' typeMap['min-ol-9-x64'] = 'i3en.2xlarge' execMap = [:] From 09ce981963818599954c8724796e436e7ab207bb Mon Sep 17 00:00:00 2001 From: Oleksandr Miroshnychenko Date: Tue, 29 Apr 2025 13:25:31 +0300 Subject: [PATCH 3/3] PKG-370 ps57.cd: Jenkins farm fixes --- IaC/ps57.cd/JenkinsStack.yml | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/IaC/ps57.cd/JenkinsStack.yml b/IaC/ps57.cd/JenkinsStack.yml index 5b21b4f854..982e757f4e 100644 --- a/IaC/ps57.cd/JenkinsStack.yml +++ b/IaC/ps57.cd/JenkinsStack.yml @@ -99,8 +99,9 @@ Resources: VpcId: !Ref JVPC CidrBlock: 10.177.2.0/24 MapPublicIpOnLaunch: true - AvailabilityZone: - Fn::Select: [ 2, !GetAZs '' ] + AvailabilityZone: eu-central-1c + #AvailabilityZone: + # Fn::Select: [ 2, !GetAZs '' ] Tags: - Key: Name Value: !Join [ '-', [ !Ref JShortName, 'C' ]] @@ -442,7 +443,7 @@ Resources: ExcessCapacityTerminationPolicy: default IamFleetRole: !GetAtt SpotFleetRole.Arn ReplaceUnhealthyInstances: true - SpotPrice: 0.15 + SpotPrice: 0.17 TargetCapacity: 1 TerminateInstancesWithExpiration: false Type: maintain @@ -451,16 +452,16 @@ Resources: LaunchTemplateId: !Ref JMasterTemplate Version: !GetAtt JMasterTemplate.LatestVersionNumber Overrides: - - InstanceType: m5a.large + - InstanceType: i3en.large AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] - - InstanceType: m5d.large + - InstanceType: i4i.large AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] - - InstanceType: m5zn.large + - InstanceType: r5a.large AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] - - InstanceType: m5ad.large + - InstanceType: r5dn.large AvailabilityZone: Fn::Select: [ 1, !GetAZs '' ] @@ -737,7 +738,7 @@ Resources: EOF fi - ln -s /mnt/$JENKINS_HOST/ssl/nginx.conf /usr/local/openresty/nginx/conf/jenkins.conf + ln -f -s /mnt/$JENKINS_HOST/ssl/nginx.conf /usr/local/openresty/nginx/conf/jenkins.conf sed -i'' -e 's/listen/#listen/; s/mime.types/jenkins.conf/' /usr/local/openresty/nginx/conf/nginx.conf systemctl enable --now openresty