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

Update kOps to v1.23.0 + Update parameters.md #1329

Merged
merged 3 commits into from
Aug 11, 2022
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
1 change: 1 addition & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -181,6 +181,7 @@ test-e2e-migration:
EBS_INSTALL_SNAPSHOT="true" \
TEST_PATH=./tests/e2e-kubernetes/... \
GINKGO_FOCUS="\[ebs-csi-migration\]" \
GINKGO_SKIP="\[Disruptive\]|Pre-provisioned" \
EBS_CHECK_MIGRATION=true \
./hack/e2e/run.sh

Expand Down
12 changes: 8 additions & 4 deletions docs/parameters.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,14 @@ The AWS EBS CSI Driver supports [tagging](tagging.md) through `StorageClass.para
| Parameters | Values | Default | Description |
|-----------------------------|----------------------------------------|----------|---------------------|
| "csi.storage.k8s.io/fstype" | xfs, ext2, ext3, ext4 | ext4 | File system type that will be formatted during volume creation. This parameter is case sensitive! |
| "type" | io1, io2, gp2, gp3, sc1, st1,standard | gp3* | EBS volume type |
| "type" | io1, io2, gp2, gp3, sc1, st1,standard | gp3* | EBS volume type. |
torredil marked this conversation as resolved.
Show resolved Hide resolved
| "iopsPerGB" | | | I/O operations per second per GiB. Required when io1 or io2 volume type is specified. If this value multiplied by the size of a requested volume produces a value above the maximum IOPs allowed for the volume type, as documented [here](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-volume-types.html), AWS will cap the IOPS to maximum supported value. If the value is lower than minimal supported IOPS value per volume, either error is returned (the default behavior) or the value is increased to fit into the supported range when `allowautoiopspergbincrease` is `"true"`.|
| "allowAutoIOPSPerGBIncrease"| true, false | false | When `"true"`, the CSI driver increases IOPS for a volume when `iopsPerGB * <volume size>` is too low to fit into IOPS range supported by AWS. This allows dynamic provisioning to always succeed, even when user specifies too small PVC capacity or `iopsPerGB` value. On the other hand, it may introduce additional costs, as such volumes have higher IOPS than requested in `iopsPerGB`.|
| "iops" | | 3000 | I/O operations per second. Only effetive when gp3 volume type is specified. If empty, it will set to 3000 as documented [here](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-volume-types.html). |
| "iops" | | 3000 | I/O operations per second. Only effective when gp3 volume type is specified. If empty, it will set to 3000 as documented [here](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-volume-types.html). |
| "throughput" | | 125 | Throughput in MiB/s. Only effective when gp3 volume type is specified. If empty, it will set to 125MiB/s as documented [here](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-volume-types.html). |
| "encrypted" | | | Whether the volume should be encrypted or not. Valid values are "true" or "false" |
| "kmsKeyId" | | | The full ARN of the key to use when encrypting the volume. Amazon EBS automatically creates a unique AWS managed key in each region where you store AWS resources. This KMS key has the alias `/aws/ebs`. If not specified, Amazon EBS uses the generated KMS key for encryption by default |
| "encrypted" | | | Whether the volume should be encrypted or not. Valid values are "true" or "false". |
| "kmsKeyId" | | | The full ARN of the key to use when encrypting the volume. If not specified, AWS will use the default KMS key for the region the volume is in. This will be an auto-generated key called `/aws/ebs` if not changed. |

**Notes**:
* `gp3` is currently not supported on outposts. Outpost customers need to use a different type for their volumes.
* Unless explicitly noted, all parameters are case insensitive (e.g. "kmsKeyId", "kmskeyid" and any other combination of upper/lowercase characters can be used).
13 changes: 9 additions & 4 deletions hack/e2e/kops.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,16 @@ source "${BASE_DIR}"/util.sh
function kops_install() {
INSTALL_PATH=${1}
KOPS_VERSION=${2}
if [[ ! -e ${INSTALL_PATH}/kops ]]; then
KOPS_DOWNLOAD_URL=https://github.com/kubernetes/kops/releases/download/v${KOPS_VERSION}/kops-${OS_ARCH}
curl -L -X GET "${KOPS_DOWNLOAD_URL}" -o "${INSTALL_PATH}"/kops
chmod +x "${INSTALL_PATH}"/kops
if [[ -e "${INSTALL_PATH}"/kops ]]; then
INSTALLED_KOPS_VERSION=$("${INSTALL_PATH}"/kops version)
if [[ "$INSTALLED_KOPS_VERSION" == *"$KOPS_VERSION"* ]]; then
echo "KOPS $INSTALLED_KOPS_VERSION already installed!"
return
fi
fi
KOPS_DOWNLOAD_URL=https://github.com/kubernetes/kops/releases/download/v${KOPS_VERSION}/kops-${OS_ARCH}
curl -L -X GET "${KOPS_DOWNLOAD_URL}" -o "${INSTALL_PATH}"/kops
chmod +x "${INSTALL_PATH}"/kops
}

function kops_create_cluster() {
Expand Down
2 changes: 1 addition & 1 deletion hack/e2e/run.sh
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ IMAGE_TAG=${IMAGE_TAG:-${TEST_ID}}
# eksctl: mustn't include patch version (e.g. 1.19)
K8S_VERSION=${K8S_VERSION:-1.20.8}
torredil marked this conversation as resolved.
Show resolved Hide resolved

KOPS_VERSION=${KOPS_VERSION:-1.21.0}
KOPS_VERSION=${KOPS_VERSION:-1.23.0}
KOPS_STATE_FILE=${KOPS_STATE_FILE:-s3://k8s-kops-csi-e2e}
KOPS_PATCH_FILE=${KOPS_PATCH_FILE:-./hack/kops-patch.yaml}
KOPS_PATCH_NODE_FILE=${KOPS_PATCH_NODE_FILE:-./hack/kops-patch-node.yaml}
Expand Down
3 changes: 3 additions & 0 deletions hack/kops-patch.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -172,3 +172,6 @@ spec:
ExpandCSIVolumes: "true"
CSIInlineVolume: "true"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

BTW when bumping K8S_VERSION we can remove CSIDriverRegistry, CSINodeInfo, and CSIBlockVolume, all of these are GA since 1.18 so no need to explicitly set true

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ack, will do 👍

anonymousAuth: false
cloudConfig:
awsEBSCSIDriver:
enabled: false