Improve cost optimization and documentation (#141)

This commit is contained in:
Josh Bradley 2024-08-14 13:51:57 -04:00 committed by GitHub
parent 2e06f3f5c2
commit 2d5ab6d9d6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 39 additions and 6 deletions

View File

@ -18,6 +18,8 @@ spec:
spec:
serviceAccountName: PLACEHOLDER
restartPolicy: OnFailure
nodeSelector:
workload: graphrag-indexing
containers:
- name: graphrag
image: PLACEHOLDER
@ -25,10 +27,10 @@ spec:
resources:
requests:
cpu: "6"
memory: "24Gi"
memory: "56Gi"
limits:
cpu: "10"
memory: "32Gi"
cpu: "8"
memory: "64Gi"
envFrom:
- configMapRef:
name: graphrag

Binary file not shown.

Before

Width:  |  Height:  |  Size: 331 KiB

After

Width:  |  Height:  |  Size: 347 KiB

View File

@ -26,7 +26,7 @@ param systemOsDiskSizeGB int = 128
@description('The number of nodes for the system node pool.')
@minValue(1)
@maxValue(50)
@maxValue(20)
param systemNodeCount int = 1
@description('The size of the system Virtual Machine.')
@ -37,8 +37,11 @@ param systemVMSize string = 'standard_d4s_v5'
@maxValue(50)
param graphragNodeCount int = 1
@description('The size of the GraphRAG Virtual Machine.')
param graphragVMSize string = 'standard_e16as_v5' // 16 vcpus, 128 GiB memory
@description('The VM size of nodes running the GraphRAG API.')
param graphragVMSize string = 'standard_d8s_v5' // 8 vcpu, 32 GB memory
@description('The VM size of nodes running GraphRAG indexing jobs.')
param graphragIndexingVMSize string = 'standard_e8s_v5' // 8 vcpus, 64 GB memory
@description('User name for the Linux Virtual Machines.')
param linuxAdminUsername string = 'azureuser'
@ -161,6 +164,32 @@ resource aks 'Microsoft.ContainerService/managedClusters@2024-02-01' = {
type: 'VirtualMachineScaleSets'
}
}
resource graphragIndexingNodePool 'agentPools@2024-02-01' = {
name: 'indexing'
properties: {
enableAutoScaling: true
upgradeSettings: {
maxSurge: '50%'
}
minCount: 0
maxCount: 10
osDiskSizeGB: systemOsDiskSizeGB
count: 0
vmSize: graphragIndexingVMSize
osType: 'Linux'
mode: 'User'
enableEncryptionAtHost: enableEncryptionAtHost
vnetSubnetID: subnetId
nodeLabels: {
workload: 'graphrag-indexing'
}
tags: {
workload: 'graphrag'
}
type: 'VirtualMachineScaleSets'
}
}
}
resource aksManagedAutoUpgradeSchedule 'Microsoft.ContainerService/managedClusters/maintenanceConfigurations@2024-03-02-preview' = {

View File

@ -186,6 +186,8 @@ module aks 'core/aks/aks.bicep' = {
params:{
clusterName: '${abbrs.containerServiceManagedClusters}${resourceBaseNameFinal}'
location: location
graphragVMSize: 'standard_d8s_v5' // 8 vcpu, 32 GB memory
graphragIndexingVMSize: 'standard_e8s_v5' // 8 vcpus, 64 GB memory
sshRSAPublicKey: aksSshRsaPublicKey
logAnalyticsWorkspaceId: log.outputs.id
subnetId: vnet.properties.subnets[1].id // aks subnet