// This is an automatically generated code sample.
// To make this code sample work in your Oracle Cloud tenancy,
// please replace the values for any parameters whose current values do not fit
// your use case (such as resource IDs, strings containing ‘EXAMPLE’ or ‘unique_id’, and
// boolean, number, and enum parameters with values not fitting your use case).
import * as containerengine from "oci-containerengine";
import common = require("oci-common");
// Create a default authentication provider that uses the DEFAULT
// profile in the configuration file.
// Refer to <see href="https://docs.cloud.oracle.com/en-us/iaas/Content/API/Concepts/sdkconfig.htm#SDK_and_CLI_Configuration_File>the public documentation</see> on how to prepare a configuration file.
const provider: common.ConfigFileAuthenticationDetailsProvider = new common.ConfigFileAuthenticationDetailsProvider();
(async () => {
try {
// Create a service client
const client = new containerengine.ContainerEngineClient({
authenticationDetailsProvider: provider
});
// Create a request and dependent object(s).
const createNodePoolDetails = ({
compartmentId: "ocid1.test.oc1..<unique_ID>EXAMPLE-compartmentId-Value",
clusterId: "ocid1.test.oc1..<unique_ID>EXAMPLE-clusterId-Value",
name: "EXAMPLE-name-Value",
kubernetesVersion: "EXAMPLE-kubernetesVersion-Value",
nodeMetadata: {
EXAMPLE_KEY_2gmvb: "EXAMPLE_VALUE_xv2QUcjG7YE7PNY2LFMV"
},
nodeImageName: "EXAMPLE-nodeImageName-Value",
nodeSourceDetails: ({
sourceType: "IMAGE",
imageId: "ocid1.test.oc1..<unique_ID>EXAMPLE-imageId-Value",
bootVolumeSizeInGBs: 525
} as unknown) as containerengine.models.NodeSourceViaImageDetails,
nodeShape: "EXAMPLE-nodeShape-Value",
nodeShapeConfig: ({
ocpus: 7078.561,
memoryInGBs: 2349.3547
} as unknown) as containerengine.models.CreateNodeShapeConfigDetails,
initialNodeLabels: [
({
key: "EXAMPLE-key-Value",
value: "EXAMPLE-value-Value"
} as unknown) as containerengine.models.KeyValue
],
sshPublicKey: "EXAMPLE-sshPublicKey-Value",
quantityPerSubnet: 346,
subnetIds: ["EXAMPLE--Value"],
nodeConfigDetails: ({
size: 604,
nsgIds: ["EXAMPLE--Value"],
kmsKeyId: "ocid1.test.oc1..<unique_ID>EXAMPLE-kmsKeyId-Value",
isPvEncryptionInTransitEnabled: false,
freeformTags: {
EXAMPLE_KEY_Xyc0l: "EXAMPLE_VALUE_Q8ButFjHU2lF4PA9kRSO"
},
definedTags: {
EXAMPLE_KEY_CIVWM: {
EXAMPLE_KEY_toMcg: "EXAMPLE--Value"
}
},
placementConfigs: [
({
availabilityDomain: "EXAMPLE-availabilityDomain-Value",
subnetId: "ocid1.test.oc1..<unique_ID>EXAMPLE-subnetId-Value",
capacityReservationId: "ocid1.test.oc1..<unique_ID>EXAMPLE-capacityReservationId-Value",
preemptibleNodeConfig: ({
preemptionAction: ({
type: "TERMINATE",
isPreserveBootVolume: false
} as unknown) as containerengine.models.TerminatePreemptionAction
} as unknown) as containerengine.models.PreemptibleNodeConfigDetails,
faultDomains: ["EXAMPLE--Value"]
} as unknown) as containerengine.models.NodePoolPlacementConfigDetails
],
nodePoolPodNetworkOptionDetails: ({
cniType: "OCI_VCN_IP_NATIVE",
maxPodsPerNode: 58,
podNsgIds: ["EXAMPLE--Value"],
podSubnetIds: ["EXAMPLE--Value"]
} as unknown) as containerengine.models.OciVcnIpNativeNodePoolPodNetworkOptionDetails
} as unknown) as containerengine.models.CreateNodePoolNodeConfigDetails,
freeformTags: {
EXAMPLE_KEY_Um87f: "EXAMPLE_VALUE_z4vKNBj02k1Kb38dLE06"
},
definedTags: {
EXAMPLE_KEY_2y1kJ: {
EXAMPLE_KEY_rJ7KV: "EXAMPLE--Value"
}
},
nodeEvictionNodePoolSettings: ({
evictionGraceDuration: "EXAMPLE-evictionGraceDuration-Value",
isForceDeleteAfterGraceDuration: true,
isForceActionAfterGraceDuration: false
} as unknown) as containerengine.models.NodeEvictionNodePoolSettings,
nodePoolCyclingDetails: ({
maximumUnavailable: "EXAMPLE-maximumUnavailable-Value",
maximumSurge: "EXAMPLE-maximumSurge-Value",
isNodeCyclingEnabled: true,
cycleModes: [
containerengine.models.CycleMode.BootVolumeReplace,
containerengine.models.CycleMode.InstanceReplace
]
} as unknown) as containerengine.models.NodePoolCyclingDetails,
secondaryVnics: [
({
createVnicDetails: ({
displayName: "EXAMPLE-displayName-Value",
assignIpv6Ip: false,
assignPublicIp: false,
definedTags: {
EXAMPLE_KEY_dnCtv: {
EXAMPLE_KEY_l2WIP: "EXAMPLE--Value"
}
},
freeformTags: {
EXAMPLE_KEY_Eimb5: "EXAMPLE_VALUE_YE8zUR3BaIMaWxArUHRS"
},
ipCount: 278,
applicationResources: ["EXAMPLE--Value"],
ipv6AddressIpv6SubnetCidrPairDetails: [
({
ipv6Address: "EXAMPLE-ipv6Address-Value",
ipv6SubnetCidr: "EXAMPLE-ipv6SubnetCidr-Value"
} as unknown) as containerengine.models.Ipv6AddressIpv6SubnetCidrPairDetails
],
nsgIds: ["EXAMPLE--Value"],
skipSourceDestCheck: true,
subnetId: "ocid1.test.oc1..<unique_ID>EXAMPLE-subnetId-Value",
securityAttributes: {
EXAMPLE_KEY_WQmrZ: {
EXAMPLE_KEY_toiGg: "EXAMPLE--Value"
}
}
} as unknown) as containerengine.models.CreateVnicDetails,
displayName: "EXAMPLE-displayName-Value",
nicIndex: 0
} as unknown) as containerengine.models.NodePoolSecondaryVnicDetails
],
networkLaunchType: containerengine.models.NetworkLaunchType.Vfio,
primaryVnic: ({
securityAttributes: {
EXAMPLE_KEY_Z3siJ: {
EXAMPLE_KEY_dEDvE: "EXAMPLE--Value"
}
}
} as unknown) as containerengine.models.NodePoolPrimaryVnicDetails
} as unknown) as containerengine.models.CreateNodePoolDetails;
const createNodePoolRequest: containerengine.requests.CreateNodePoolRequest = {
createNodePoolDetails: createNodePoolDetails,
opcRetryToken: "EXAMPLE-opcRetryToken-Value",
opcRequestId: "7AIGEPYVRYQIK19SL4O3<unique_ID>"
};
// Send request to the Client.
const createNodePoolResponse = await client.createNodePool(createNodePoolRequest);
} catch (error) {
console.log("createNodePool Failed with error " + error);
}
})();