elegant-secretary-74577
07/25/2024, 2:15 PMdefault
with gp2. It creates the storage class but does not make it default.... here is my eks settings
import * as awsx from "@pulumi/awsx";
import * as eks from "@pulumi/eks";
import * as kubernetes from "@pulumi/kubernetes";
import { awsProvider } from "./providers";
import { awsProfile, desiredSize, eksClusterName, eksVersion, instanceType, minSize, maxSize, tags } from "./variables";
// Create a VPC for our cluster.
export const vpc = new awsx.ec2.Vpc(`${eksClusterName}-vpc`,
{
assignGeneratedIpv6CidrBlock: false,
cidrBlock: "10.0.0.0/16",
enableDnsHostnames: true,
enableNetworkAddressUsageMetrics: true,
tags: tags,
},
{
provider: awsProvider,
},
);
// Create an EKS cluster without node group configuration.
export const cluster = new eks.Cluster(`${eksClusterName}-cluster`,
{
enabledClusterLogTypes: [
"api",
"audit",
"authenticator",
"controllerManager",
"scheduler",
],
endpointPrivateAccess: true,
endpointPublicAccess: true,
name: eksClusterName,
nodeRootVolumeEncrypted: true,
nodeRootVolumeSize: 200,
providerCredentialOpts: { profileName: awsProfile },
subnetIds: vpc.publicSubnetIds,
tags: tags,
version: eksVersion,
vpcId: vpc.vpcId,
},
{
dependsOn: [vpc],
provider: awsProvider,
},
);
// Create an EKS managed node group.
new eks.ManagedNodeGroup(`${eksClusterName}-node-group`,
{
cluster: cluster,
instanceTypes: [instanceType],
nodeGroupName: `${eksClusterName}-nodegroup`,
nodeRoleArn: cluster.instanceRoles[0].arn,
diskSize: 200,
tags: tags,
scalingConfig: {
desiredSize: desiredSize,
maxSize: maxSize,
minSize: minSize,
},
},
{
dependsOn: [cluster],
provider: awsProvider,
},
);
elegant-secretary-74577
07/25/2024, 2:16 PM❯ kubectl get sc gp2 -o yaml
apiVersion: <http://storage.k8s.io/v1|storage.k8s.io/v1>
kind: StorageClass
metadata:
annotations:
<http://kubectl.kubernetes.io/last-applied-configuration|kubectl.kubernetes.io/last-applied-configuration>: |
{"apiVersion":"<http://storage.k8s.io/v1|storage.k8s.io/v1>","kind":"StorageClass","metadata":{"annotations":{},"name":"gp2"},"parameters":{"fsType":"ext4","type":"gp2"},"provisioner":"<http://kubernetes.io/aws-ebs|kubernetes.io/aws-ebs>","volumeBindingMode":"WaitForFirstConsumer"}
creationTimestamp: "2024-07-22T05:21:29Z"
name: gp2
resourceVersion: "276"
uid: c6490311-0f24-4617-8912-ec8fab2e1e2e
parameters:
fsType: ext4
type: gp2
provisioner: <http://kubernetes.io/aws-ebs|kubernetes.io/aws-ebs>
reclaimPolicy: Delete
volumeBindingMode: WaitForFirstConsumer
elegant-secretary-74577
07/25/2024, 2:16 PMdefault
?modern-zebra-45309
07/25/2024, 9:53 PMelegant-secretary-74577
07/25/2024, 11:47 PMmodern-zebra-45309
07/26/2024, 7:28 AMstorage_classes="gp2"
on the eks.Cluster
resource, which will make a default storage class with gp2
(see https://github.com/pulumi/pulumi-eks/blob/12c643b3db4534be5c7b11c13603e5d8ce59a632/nodejs/eks/cluster.ts#L878)
• You pass a map of storage classes and mark one of them as default
According to the note in the documentation, you should also get a default gp2
storage class automatically.No matter how you like to participate in developer communities, Pulumi wants to meet you there. If you want to meet other Pulumi users to share use-cases and best practices, contribute code or documentation, see us at an event, or just tell a story about something cool you did with Pulumi, you are part of our community.
Powered by