AWSNodePool

במאמר הזה מוסבר על אפשרויות ההגדרה של AWSNodePool Custom Resource Definition.

פורמט כללי

כדי ליצור AWSNodePool מהתבנית הזו, מעתיקים את ה-YAML הבא ומחליפים את הערכים המודגשים לפי ההגדרה במפרט השדות.

apiVersion: multicloud.cluster.gke.io/v1
kind: AWSNodePool
metadata:
  name: NODE_POOL_NAME
spec:
  clusterName: AWSCLUSTER_NAME
  version:  CLUSTER_VERSION # latest version is 1.25.5-gke.2100
  region: AWS_REGION
  subnetID: AWS_SUBNET_ID
  minNodeCount: MINIMUM_NODE_COUNT
  maxNodeCount: MAXIMUM_NODE_COUNT
  maxPodsPerNode: MAXIMUM_PODS_PER_NODE_COUNT
  instanceType: AWS_NODE_TYPE
  keyName: KMS_KEY_PAIR_NAME
  iamInstanceProfile: NODE_IAM_PROFILE
  proxySecretName: PROXY_SECRET_NAME
  rootVolume:
    sizeGiB: ROOT_VOLUME_SIZE
    volumeType: VOLUME_TYPE # Optional
    iops: IOPS # Optional
    kmsKeyARN: NODE_VOLUME_KEY # Optional 
  labels: # Optional
    LABEL_NAME: LABEL_VALUE
  taints:
  - key: KEY1
    value: VALUE1
    effect: PREFERNOSCHEDULE
  - key: KEY2
    effect: NOSCHEDULE
  tags:
    TAG_NAME: TAG_VALUE 

מפרטי השדות

אפשר להגדיר את השדות הבאים ב-spec של AWSNodePool.

שם תיאור סוג דוגמה חובה
clusterName השם של AWSCluster. string my-cluster כן
אזור אזור AWS למאגר הצמתים. הערך הזה צריך להיות זהה לאזור של אשכול האב. string us-east-1 כן
גרסה גרסת האשכול של מאגר הצמתים. מידע נוסף זמין במאמרים בנושא ניהול גרסאות ושדרוגים ושדרוג אשכול משתמשים. string 1.25.5-gke.2100
minNodeCount המספר המינימלי של צמתי עובדים במאגר הצמתים. integer 3 כן
maxNodeCount המספר המקסימלי של צמתי עובדים במאגר הצמתים. integer 3 כן
maxPodsPerNode המספר המקסימלי של פודים ש-GKE ב-AWS יקצה לצומת. integer 100 כן
instanceType סוג מכונת AWS EC2 לכל עובד במאגר הצמתים. סוגי האינסטנסים הנתמכים string m5.large כן
keyName זוג המפתחות של AWS KMS שמוקצה לכל עובד במאגר הצמתים. string my-key-pair כן
securityGroupIDs המזהים של קבוצות אבטחה נוספות שיוספו לצמתים במאגר הזה. שימו לב: מערכת GKE on AWS יוצרת באופן אוטומטי קבוצות אבטחה עם הכללים המינימליים שנדרשים למאגר צמתים תקין. list(string) [sg-0ec06559d997a796f] לא
iamInstanceProfile השם של פרופיל מכונת AWS EC2 שהוקצה לצמתים במאגר. string my-node-pool-profile כן
proxySecretName השם של סוד ה-proxy להגדרת הגדרות לשרת proxy בהתאמה אישית string proxy-secret-1 לא
rootVolume פרמטרים של נפחי הבסיס של מאגר הצמתים. מידע נוסף זמין במאמר בנושא spec.RootVolume. object {sizeGiB: 10} כן
subnetId רשת המשנה הפרטית באזור של מאגר הצמתים string subnet-1234567890abcdef כן
labels תוויות שהוחלו על צמתים במאגר הצמתים object {billing: some-account, owner: dev} לא
כתמים Taints שהוחלו על מאגר הצמתים object key: key1
value: value1
effect: PreferNoSchedule
לא
תגים מטא-נתונים של מפתח/ערך שמוקצים לכל משאב AWS שתומך במאגר הצמתים. map(string) {Environment: Production, Team: Analytics} לא

spec.rootVolume

שם תיאור סוג דוגמה חובה
sizeGiB גודל נפח הבסיס של צומת מישור הבקרה בגיגה-בייט. יכול להיות שתצטרכו להגדיל את הערך הזה עבור אשכולות גדולים. integer 10 כן
volumeType סוג נפח האחסון ב-EBS של AWS בצומת. הערך יכול להיות gp2 (ברירת מחדל) או gp3. string gp2 לא
iops הכמות של פעולות קלט/פלט (IOPS) שהוקצו לנפחים לשנייה. ההגדרה תקפה רק אם volumeType הוא gp3. מידע נוסף זמין במאמר General Purpose SSD volumes (gp3). integer 5000 לא
kmsKeyARN מספר ה-ARN של מפתח AWS KMS שמשמש להצפנת נפח ה-EBS. מידע נוסף מופיע במאמר בנושא שימוש במפתח CMK בניהול הלקוח להצפנת אמצעי אחסון. string arn:aws:kms:us-west-1:123456789:key/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee לא