Score:0

คุณจะเมานต์โทเค็นบัญชีบริการ k8s เป็นตัวแปรสภาพแวดล้อมได้อย่างไร

ธง ng

เมื่อคุณเชื่อมโยงบัญชีบริการเข้ากับพ็อด บัญชีนั้นจะถูกติดตั้งในพ็อด /var/run/secrets/kubernetes.io/ โฟลเดอร์ แต่ฉันไม่เห็นวิธีเพิ่มความลับเป็นตัวแปรสภาพแวดล้อม ปัญหาคือไม่สามารถตั้งค่าการอ้างอิงในพ็อดถึงความลับของบัญชีบริการได้ เนื่องจากความลับที่สร้างจากบัญชีบริการมีชื่อที่สร้างขึ้นโดยอัตโนมัติ คุณจึงไม่สามารถใช้ env.valueFrom.secretKeyRef ในการกำหนดค่าพ็อด มีวิธีการทำเช่นนี้โดยไม่ต้องสร้างความลับด้วยตนเองหรือไม่?

mozello avatar
cn flag
คุณใช้ Kubernetes เวอร์ชันใด
ng flag
@mozello 1.23.3
Score:1
ธง ng

ฉันไม่พบวิธี Kubernetes ดั้งเดิมในการแก้ปัญหานี้ แต่ฉันแก้ไขด้วย Terraform ทรัพยากร service_account ให้ default_secret_name ซึ่งทำให้ฉันสามารถอ้างอิงความลับในการปรับใช้ (หรือพ็อด)

ทรัพยากร "kubernetes_service_account_v1" "my_service_account" {
  ข้อมูลเมตา {
    ชื่อ = "บัญชีบริการของฉัน"
  }
}

...

ทรัพยากร "kubernetes_deployment_v1" "my_deployment" {
  ...
  สิ่งแวดล้อม {
    ชื่อ = "SOME_SECRET"
    ค่า_จาก {
      secret_key_ref {
        ชื่อ = kubernetes_service_account_v1.my_service_account.default_secret_name
        คีย์ = "โทเค็น"
      }
    }
  }
  ...
}

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา