Skip to content
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

Deprecate k8s-1.24* variants #4379

Merged
merged 4 commits into from
Jan 29, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions BUILDING.md
Original file line number Diff line number Diff line change
Expand Up @@ -203,7 +203,7 @@ The specifics of building an out-of-tree module will vary by project, but the fi
### Downloading the kmod kit

kmod kits are included in the official Bottlerocket repos starting with Bottlerocket v1.0.6.
Let's say you want to download the kit for building x86_64 modules for v1.11.0 and variant aws-k8s-1.24.
Let's say you want to download the kit for building x86_64 modules for v1.31.0 and variant aws-k8s-1.32.

First, you need tuftool:
```shell
Expand All @@ -220,8 +220,8 @@ sha512sum -c <<<"2ff1fbf99b20dd7ff5d2c84243a8e3b51701183b1f524b7d470a6b7a9b0172f
Next, set your desired parameters, and download the kmod kit:
```shell
ARCH=x86_64
VERSION=v1.11.0
VARIANT=aws-k8s-1.24
VERSION=v1.31.0
VARIANT=aws-k8s-1.32
OUTDIR="${VARIANT}-${VERSION}"

tuftool download "${OUTDIR}" --target-name ${VARIANT}-${ARCH}-kmod-kit-${VERSION}.tar.xz \
Expand Down
18 changes: 0 additions & 18 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 0 additions & 2 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,6 @@ members = [
"variants/aws-ecs-2-fips",
"variants/aws-ecs-1-nvidia",
"variants/aws-ecs-2-nvidia",
"variants/aws-k8s-1.24",
"variants/aws-k8s-1.24-nvidia",
"variants/aws-k8s-1.25",
"variants/aws-k8s-1.25-nvidia",
"variants/aws-k8s-1.26",
Expand Down
2 changes: 1 addition & 1 deletion Makefile.toml
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ BUILDSYS_VERSION_BUILD = { script = ["git describe --always --dirty --exclude '*
BUILDSYS_RELEASE_CONFIG_PATH = "${BUILDSYS_ROOT_DIR}/Release.toml"
BUILDSYS_VERSION_IMAGE = { script = ["awk -F '[ =\"]+' '$1 == \"version\" {print $2}' ${BUILDSYS_RELEASE_CONFIG_PATH}"] }
# This can be overridden with -e to build a different variant from the variants/ directory
BUILDSYS_VARIANT = { script = ['echo "${BUILDSYS_VARIANT:-aws-k8s-1.24}"'] }
BUILDSYS_VARIANT = { script = ['echo "${BUILDSYS_VARIANT:-aws-k8s-1.32}"'] }
# Product name used for file and directory naming
BUILDSYS_NAME = "bottlerocket"
# "Pretty" name used to identify OS in os-release, bootloader, etc.
Expand Down
6 changes: 3 additions & 3 deletions PUBLISHING-AWS.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ This isn't very discoverable yet, but it's useful for testing.
As an example, a parameter might look like this:

```
/your/prefix/here/aws-k8s-1.24/x86_64/1.11.0-b530f30/image_id
/your/prefix/here/aws-k8s-1.32/x86_64/1.31.0-41108b4/image_id
```

Once you're satisfied with your image and parameters, you can promote the parameters to simpler names (for example, "latest") using the [instructions below](#promoting-ssm-parameters).
Expand Down Expand Up @@ -133,13 +133,13 @@ cargo make -e SSM_TARGET=latest promote-ssm
This will copy the fully versioned parameter from earlier, something like:

```
/your/prefix/here/aws-k8s-1.24/x86_64/1.11.0-b530f30/image_id
/your/prefix/here/aws-k8s-1.32/x86_64/1.31.0-41108b4/image_id
```

...to a simpler parameter name:

```
/your/prefix/here/aws-k8s-1.24/x86_64/latest/image_id
/your/prefix/here/aws-k8s-1.32/x86_64/latest/image_id
```

You can then use this parameter name to get the latest AMI ID.
Expand Down
8 changes: 4 additions & 4 deletions PUBLISHING-VMWARE.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,20 +46,20 @@ datacenters = ["foo", "bar"]
Then you can easily upload your OVA, specifying the variant you wish to upload (currently only VMware variants).

```shell
cargo make -e BUILDSYS_VARIANT=vmware-k8s-1.24 upload-ova
cargo make -e BUILDSYS_VARIANT=vmware-k8s-1.32 upload-ova
```

If you would like to upload your OVA as a VM template, you can do this in a single step:

```shell
cargo make -e BUILDSYS_VARIANT=vmware-k8s-1.24 vmware-template
cargo make -e BUILDSYS_VARIANT=vmware-k8s-1.32 vmware-template
```

You can override the list of datacenters to upload to by specifying `VMWARE_DATACENTERS`:

```shell
cargo make vmware-template \
-e BUILDSYS_VARIANT=vmware-k8s-1.24 \
-e BUILDSYS_VARIANT=vmware-k8s-1.32 \
-e VMWARE_DATACENTERS="foo,bar"
```

Expand All @@ -70,6 +70,6 @@ Our [import spec template](tools/pubsys/support/vmware/import_spec.template) can

```shell
cargo make vmware-template \
-e BUILDSYS_VARIANT=vmware-k8s-1.24 \
-e BUILDSYS_VARIANT=vmware-k8s-1.32 \
-e VMWARE_IMPORT_SPEC_PATH=/path/to/my/spec.toml
```
4 changes: 2 additions & 2 deletions PUBLISHING.md
Original file line number Diff line number Diff line change
Expand Up @@ -215,12 +215,12 @@ These default settings will be applied to your hosts at startup, meaning any hos

The easiest way to change your repo URLs at run time is to include the settings changes in user data.
This method is covered [in README](README.md#using-user-data).
For example, if you built the `aws-k8s-1.24` variant for `x86_64` and uploaded to the public S3 bucket `my-bucket`, your URLs could look like:
For example, if you built the `aws-k8s-1.32` variant for `x86_64` and uploaded to the public S3 bucket `my-bucket`, your URLs could look like:

```toml
[settings.updates]
targets-base-url = "https://my-bucket.s3-us-west-2.amazonaws.com/targets/"
metadata-base-url = "https://my-bucket.s3-us-west-2.amazonaws.com/aws-k8s-1.24/x86_64/"
metadata-base-url = "https://my-bucket.s3-us-west-2.amazonaws.com/aws-k8s-1.32/x86_64/"
```

### Waves
Expand Down
12 changes: 6 additions & 6 deletions QUICKSTART-EKS.md
Original file line number Diff line number Diff line change
Expand Up @@ -95,9 +95,9 @@ If you'd like even more control over your setup, something that eksctl can't (ye
### Finding an AMI

The official AMI IDs are stored in [public SSM parameters](https://docs.aws.amazon.com/systems-manager/latest/userguide/parameter-store-public-parameters.html).
The parameter names look like this: `/aws/service/bottlerocket/aws-k8s-1.24/x86_64/latest/image_id`
The parameter names look like this: `/aws/service/bottlerocket/aws-k8s-1.32/x86_64/latest/image_id`

Just change the variant (`aws-k8s-1.24`) and architecture (`x86_64`) to the ones you want to use.
Just change the variant (`aws-k8s-1.32`) and architecture (`x86_64`) to the ones you want to use.
Supported variants and architectures are described in the [README](README.md#variants).
For the purposes of SSM parameters, the valid architecture names are `x86_64` and `arm64` (also known as `aarch64`).
Also, if you know a specific Bottlerocket version you'd like to use, for example `1.11.0`, you can replace `latest` with that version.
Expand All @@ -109,23 +109,23 @@ Once you have the parameter name you want to use, the easiest way to use it is t
(You can also use this method for CloudFormation and other services that launch EC2 instances for you.)
Just prefix the parameter name with `resolve:ssm:` and EC2 will fetch the current value for you.

For example, to use the parameter above, you would pass this as the AMI ID in your launch request: `resolve:ssm:/aws/service/bottlerocket/aws-k8s-1.24/x86_64/latest/image_id`
For example, to use the parameter above, you would pass this as the AMI ID in your launch request: `resolve:ssm:/aws/service/bottlerocket/aws-k8s-1.32/x86_64/latest/image_id`

#### Manually querying SSM

If you prefer to fetch the AMI ID yourself, you can use [aws-cli](https://aws.amazon.com/cli/) on the command line.
To fetch the example parameter above, for the us-west-2 region, you could run this:

```shell
aws ssm get-parameter --region us-west-2 --name "/aws/service/bottlerocket/aws-k8s-1.24/x86_64/latest/image_id" --query Parameter.Value --output text
aws ssm get-parameter --region us-west-2 --name "/aws/service/bottlerocket/aws-k8s-1.32/x86_64/latest/image_id" --query Parameter.Value --output text
```

If you have `jq` installed and would like a bit more information, try this:

```shell
aws ssm get-parameters --region us-west-2 \
--names "/aws/service/bottlerocket/aws-k8s-1.24/x86_64/latest/image_id" \
"/aws/service/bottlerocket/aws-k8s-1.24/x86_64/latest/image_version" \
--names "/aws/service/bottlerocket/aws-k8s-1.32/x86_64/latest/image_id" \
"/aws/service/bottlerocket/aws-k8s-1.32/x86_64/latest/image_version" \
--output json | jq -r '.Parameters | .[] | "\(.Name): \(.Value) (updated \(.LastModifiedDate | gmtime | strftime("%c")) UTC)"'
```

Expand Down
4 changes: 2 additions & 2 deletions QUICKSTART-VMWARE.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,8 @@ sha512sum -c <<<"2ff1fbf99b20dd7ff5d2c84243a8e3b51701183b1f524b7d470a6b7a9b0172f
Next, set your desired version and variant, and download the OVA:

```shell
VERSION="v1.6.1"
VARIANT="vmware-k8s-1.24"
VERSION="v1.31.0"
VARIANT="vmware-k8s-1.32"
OVA="bottlerocket-${VARIANT}-x86_64-${VERSION}.ova"
OUTDIR="${VARIANT}-${VERSION}"

Expand Down
6 changes: 2 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,11 +57,10 @@ We’re excited to get early feedback and to continue working on more use cases!
Bottlerocket is architected such that different cloud environments and container orchestrators can be supported in the future.
A build of Bottlerocket that supports different features or integration characteristics is known as a 'variant'.
The artifacts of a build will include the architecture and variant name.
For example, an `x86_64` build of the `aws-k8s-1.24` variant will produce an image named `bottlerocket-aws-k8s-1.24-x86_64-<version>-<commit>.img`.
For example, an `x86_64` build of the `aws-k8s-1.32` variant will produce an image named `bottlerocket-aws-k8s-1.32-x86_64-<version>-<commit>.img`.

The following variants support EKS, as described above:

* `aws-k8s-1.24`
* `aws-k8s-1.25`
* `aws-k8s-1.26`
* `aws-k8s-1.27`
Expand All @@ -70,7 +69,6 @@ The following variants support EKS, as described above:
* `aws-k8s-1.30`
* `aws-k8s-1.31`
* `aws-k8s-1.32`
* `aws-k8s-1.24-nvidia`
* `aws-k8s-1.25-nvidia`
* `aws-k8s-1.26-nvidia`
* `aws-k8s-1.27-nvidia`
Expand All @@ -97,7 +95,7 @@ We also have variants that are designed to be Kubernetes worker nodes in VMware:

The following variants are no longer supported:

* All Kubernetes variants using Kubernetes 1.23 and earlier
* All Kubernetes variants using Kubernetes 1.24 and earlier
* VMware variants using Kubernetes 1.27 and earlier
* Bare metal variants for Kubernetes

Expand Down
6 changes: 3 additions & 3 deletions TESTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -187,18 +187,18 @@ You will need to delete the EKS cluster manually when you are done using it.

```shell
cargo make \
-e BUILDSYS_VARIANT="aws-k8s-1.24" \
-e BUILDSYS_VARIANT="aws-k8s-1.32" \
-e BUILDSYS_ARCH="x86_64" \
build

cargo make \
-e BUILDSYS_VARIANT="aws-k8s-1.24" \
-e BUILDSYS_VARIANT="aws-k8s-1.32" \
-e BUILDSYS_ARCH="x86_64" \
-e PUBLISH_REGIONS="us-west-2" \
ami

cargo make \
-e BUILDSYS_VARIANT="aws-k8s-1.24" \
-e BUILDSYS_VARIANT="aws-k8s-1.32" \
-e BUILDSYS_ARCH="x86_64" \
test
```
Expand Down
32 changes: 0 additions & 32 deletions packages/settings-defaults/settings-defaults.spec
Original file line number Diff line number Diff line change
Expand Up @@ -71,26 +71,6 @@ Conflicts: %{_cross_os}settings-defaults(any)
%description aws-ecs-2-nvidia
%{summary}.

%package aws-k8s-1.24
Summary: Settings defaults for the aws-k8s 1.24 variant
Requires: %{_cross_os}variant(aws-k8s-1.24)
Provides: %{_cross_os}settings-defaults(any)
Provides: %{_cross_os}settings-defaults(aws-k8s-1.24)
Conflicts: %{_cross_os}settings-defaults(any)

%description aws-k8s-1.24
%{summary}.

%package aws-k8s-1.24-nvidia
Summary: Settings defaults for the aws-k8s 1.24 nvidia variant
Requires: %{_cross_os}variant(aws-k8s-1.24-nvidia)
Provides: %{_cross_os}settings-defaults(any)
Provides: %{_cross_os}settings-defaults(aws-k8s-1.24-nvidia)
Conflicts: %{_cross_os}settings-defaults(any)

%description aws-k8s-1.24-nvidia
%{summary}.

%package aws-k8s-1.25
Summary: Settings defaults for the aws-k8s-1.25 variant
Requires: %{_cross_os}variant(aws-k8s-1.25)
Expand Down Expand Up @@ -269,8 +249,6 @@ for defaults in \
aws-ecs-1-nvidia \
aws-ecs-2 \
aws-ecs-2-nvidia \
aws-k8s-1.24 \
aws-k8s-1.24-nvidia \
aws-k8s-1.25 \
aws-k8s-1.25-nvidia \
aws-k8s-1.26 \
Expand Down Expand Up @@ -307,8 +285,6 @@ for defaults in \
aws-ecs-1-nvidia \
aws-ecs-2 \
aws-ecs-2-nvidia \
aws-k8s-1.24 \
aws-k8s-1.24-nvidia \
aws-k8s-1.25 \
aws-k8s-1.25-nvidia \
aws-k8s-1.26 \
Expand Down Expand Up @@ -354,14 +330,6 @@ done
%{_cross_defaultsdir}/aws-ecs-2-nvidia.toml
%{_cross_tmpfilesdir}/storewolf-defaults-aws-ecs-2-nvidia.conf

%files aws-k8s-1.24
%{_cross_defaultsdir}/aws-k8s-1.24.toml
%{_cross_tmpfilesdir}/storewolf-defaults-aws-k8s-1.24.conf

%files aws-k8s-1.24-nvidia
%{_cross_defaultsdir}/aws-k8s-1.24-nvidia.toml
%{_cross_tmpfilesdir}/storewolf-defaults-aws-k8s-1.24-nvidia.conf

%files aws-k8s-1.25
%{_cross_defaultsdir}/aws-k8s-1.25.toml
%{_cross_tmpfilesdir}/storewolf-defaults-aws-k8s-1.25.conf
Expand Down
2 changes: 0 additions & 2 deletions packages/settings-plugins/settings-plugins.spec
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,6 @@ Conflicts: %{_cross_os}settings-plugin(any)
Summary: Settings plugin for the aws-k8s variants
Requires: %{_cross_os}variant-family(aws-k8s)
Provides: %{_cross_os}settings-plugin(any)
Provides: %{_cross_os}settings-plugin(aws-k8s-1.24)
Provides: %{_cross_os}settings-plugin(aws-k8s-1.25)
Provides: %{_cross_os}settings-plugin(aws-k8s-1.26)
Provides: %{_cross_os}settings-plugin(aws-k8s-1.27)
Expand All @@ -86,7 +85,6 @@ Conflicts: %{_cross_os}variant-flavor(nvidia)
Summary: Settings plugin for the aws-k8s-nvidia variants
Requires: (%{_cross_os}variant-family(aws-k8s) and %{_cross_os}variant-flavor(nvidia))
Provides: %{_cross_os}settings-plugin(any)
Provides: %{_cross_os}settings-plugin(aws-k8s-1.24-nvidia)
Provides: %{_cross_os}settings-plugin(aws-k8s-1.25-nvidia)
Provides: %{_cross_os}settings-plugin(aws-k8s-1.26-nvidia)
Provides: %{_cross_os}settings-plugin(aws-k8s-1.27-nvidia)
Expand Down
14 changes: 0 additions & 14 deletions sources/Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 0 additions & 2 deletions sources/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,6 @@ members = [
"settings-defaults/aws-ecs-1-nvidia",
"settings-defaults/aws-ecs-2",
"settings-defaults/aws-ecs-2-nvidia",
"settings-defaults/aws-k8s-1.24",
"settings-defaults/aws-k8s-1.24-nvidia",
"settings-defaults/aws-k8s-1.25",
"settings-defaults/aws-k8s-1.25-nvidia",
"settings-defaults/aws-k8s-1.26",
Expand Down
13 changes: 0 additions & 13 deletions sources/settings-defaults/aws-k8s-1.24-nvidia/Cargo.toml

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

Loading