ข้อกำหนดเบื้องต้นสำหรับการผสานรวม Kubernetes

คุณกำลังดูเอกสารประกอบ Apigee Edge
ไปที่ เอกสารประกอบเกี่ยวกับ Apigee X.
ข้อมูล

หัวข้อนี้จะอธิบายขั้นตอนที่คุณต้องทำก่อนที่จะติดตั้ง Edge Microgateway เป็นบริการในคลัสเตอร์ Kubernetes

หัวข้อนี้จะกล่าวถึง:

  • ข้อกำหนดขั้นต่ำสำหรับคลัสเตอร์ Kubernetes
  • วิธีติดตั้งและกำหนดค่า Edge Microgateway
  • วิธีติดตั้งการกำหนดค่าพื้นฐานของ Edge Microgateway ลงใน Kubernetes คลัสเตอร์

ข้อกำหนดสำหรับคลัสเตอร์ Kubernetes

คลัสเตอร์ Kubernetes ต้องมีสิ่งต่อไปนี้

  • Kubernetes เวอร์ชัน 1.9 ขึ้นไป
  • Kubernetes CLI kubectl เวอร์ชัน 1.9 ขึ้นไป
  • คลัสเตอร์ที่มีโหนดอย่างน้อย 3 โหนดซึ่งแต่ละโหนดมี vCPU 2 โหนด

ตัวอย่าง: การสร้างคลัสเตอร์ Kubernetes บน Google Kubernetes Engine (GKE)

ตั้งค่าเครื่องการดูแลระบบ Kubernetes

เครื่องการดูแลระบบ Kubernetes เป็นเครื่องภายในที่คุณใช้เพื่อเรียกใช้ กับคลัสเตอร์ Kubernetes ของคุณ คอมพิวเตอร์เครื่องนี้มักเป็นเดสก์ท็อป เครื่องที่มีสิทธิ์เข้าถึง Kubernetes VM ได้

คุณต้องติดตั้งยูทิลิตีต่อไปนี้ในการดูแลระบบ Kubernetes เครื่อง:

  • ติดตั้งคำสั่ง kubectl อินเทอร์เฟซบรรทัด 1.9 ขึ้นไป

  • (GKE เท่านั้น) ติดตั้ง gcloud หากเรียกใช้ Kubernetes บน GKE

สร้างคลัสเตอร์ Kubernetes บน GKE

  1. เข้าสู่ระบบแดชบอร์ด Google Kubernetes Engine (GKE) บน Google Cloud Platform (GCP)
  2. คลิกสร้างคลัสเตอร์
  3. เลือกคลัสเตอร์มาตรฐาน
  4. ป้อนชื่อสำหรับคลัสเตอร์
  5. เลือกโซน
  6. เลือก Cluster Version 1.9.7-gke-* เช่น 1.9.7-gke.6
  7. เลือกขนาด 3 โหนด
  8. เลือก vCPU 2 รายการที่มีหน่วยความจำ 7.5 GB
  9. คลิกสร้าง

    ภาพหน้าจอต่อไปนี้แสดงแดชบอร์ด GKE แบบเต็มตามที่อธิบายไว้ใน ขั้นตอนก่อนหน้า:

    แดชบอร์ด GKE

รับข้อมูลเข้าสู่ระบบของคลัสเตอร์

  1. ตั้งชื่อโปรเจ็กต์ GKE ดังนี้

    gcloud config set project projectName
  2. ตั้งค่าโซนโปรเจ็กต์ GKE ดังนี้

    gcloud config set compute/zone zoneName
  3. รับข้อมูลเข้าสู่ระบบคอนเทนเนอร์ gcloud ดังนี้

    gcloud container clusters get-credentials cluster-name --zone zone --project project-name

    โดยมี

    • cluster-name คือชื่อของคลัสเตอร์ Kubernetes ที่คุณสร้าง
    • zone คือโซนที่คลัสเตอร์ตั้งอยู่
    • project-name คือชื่อโปรเจ็กต์ GCP ของคุณ

    เช่น

    gcloud container clusters get-credentials edgemicrogateway-cluster --zone us-central1-a --project edgemicro-project
  4. เรียกใช้คำสั่งต่อไปนี้ตามที่แสดงทุกประการ คำสั่งให้สิทธิ์คลัสเตอร์ สิทธิ์ผู้ดูแลระบบสำหรับผู้ใช้ปัจจุบัน ต้องมีสิทธิ์ระดับผู้ดูแลระบบเพื่อ สร้างกฎ RBAC ที่จำเป็นสำหรับบริการ Edge Microgateway

    kubectl create clusterrolebinding cluster-admin-binding --clusterrole=cluster-admin --user=$(gcloud config get-value core/account)
    

ติดตั้ง Edge Microgateway สำหรับ Kubernetes

  1. ดาวน์โหลด Edge Microgateway สำหรับ Kubernetes หากคุณใช้ MacOS หรือ Linux คุณสามารถดาวน์โหลดรุ่นล่าสุดหรือรุ่นใดรุ่นหนึ่งโดยระบุ ชื่อเวอร์ชัน

    วิธีดาวน์โหลดเวอร์ชันล่าสุด

    curl -L https://raw.githubusercontent.com/apigee-internal/microgateway/master/kubernetes/release/downloadEdgeMicrok8s.sh | sh -

    หากต้องการดูเวอร์ชันใดเวอร์ชันหนึ่งตามหมายเลขเวอร์ชัน โปรดทราบว่าหมายเลขเวอร์ชันต้อง ขึ้นต้นด้วยตัวอักษร "v" ตัวอย่างเช่น: v3.0.2

    curl -L https://raw.githubusercontent.com/apigee-internal/microgateway/master/kubernetes/release/downloadEdgeMicrok8s.sh | sh -s  version

    เช่น

    curl -L https://raw.githubusercontent.com/apigee-internal/microgateway/master/kubernetes/release/downloadEdgeMicrok8s.sh | sh -s v3.0.2
  2. เปลี่ยนไดเรกทอรีเป็นไดเรกทอรีการติดตั้ง microgateway_Version_OS_ARCH เช่น

    cd microgateway_2.5.26_Darwin_x86_64
  3. ตรวจสอบไดเรกทอรีการติดตั้งด้วยคำสั่งต่อไปนี้

    • /install/kubernetes - การกำหนดค่าไฟล์ .yaml สำหรับการทำให้ใช้งานได้ Kubernetes
    • /samples - แอปพลิเคชันตัวอย่างสำหรับการทดสอบการติดตั้ง
    • /bin - ไฟล์ปฏิบัติการ edgemicroctl edgemicroctl จะแทรก Edge Microgateway ลงใน Kubernetes
  4. เพิ่มไคลเอ็นต์ edgemicroctl ไปยัง PATH ตัวอย่างเช่น ให้เรียกใช้ฟังก์ชันต่อไปนี้ ในระบบ MacOS หรือ Linux ดังนี้

    export PATH=$PWD/bin:$PATH
  5. ใช้การตั้งค่า Edge Microgateway พื้นฐานกับคลัสเตอร์ Kubernetes ดังต่อไปนี้ คำสั่งสร้างเนมสเปซและบทบาทของคลัสเตอร์ edgemicro-system

    kubectl apply -f install/kubernetes/edgemicro.yaml
  6. ติดตั้งตัวควบคุมขาเข้าของ NGINX ลงในคลัสเตอร์ ตรวจสอบให้แน่ใจว่าไม่มี ตัวควบคุม Nginix กำลังทำงาน ซึ่งตรวจสอบได้โดยเรียกใช้ kubectl get pods

    kubectl apply -f install/kubernetes/edgemicro-nginx-gke.yaml

ยืนยันการติดตั้ง

  1. หากต้องการตรวจสอบว่าตัวควบคุมขาเข้าเริ่มทำงานแล้วหรือไม่ ให้เรียกใช้คำสั่งต่อไปนี้

    kubectl get pods --all-namespaces -l app=edgemicro-ingress --watch

    ตามตัวอย่างเอาต์พุตต่อไปนี้ จะใช้เวลา 1-2 นาทีก่อนที่จะ กระบวนการต่างๆ เพื่อเริ่มต้น การเห็นข้อผิดพลาดและรีสตาร์ทหลายครั้งนั้นเป็นเรื่องปกติ ก่อนที่ STATUS จะเปลี่ยนเป็น Running

    NAMESPACE          NAME                                            READY     STATUS             RESTARTS   AGE
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   0/1       CrashLoopBackOff   1          33s
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   0/1       Error              2          33s
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   0/1       CrashLoopBackOff   2          40s
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   0/1       Running            3          1m
    edgemicro-system   edgemicro-ingress-controller-64444469bf-wjhrn   1/1       Running            3          1m
    
  2. เมื่อการรับส่งข้อมูลขาเข้าทำงานแล้ว คุณสามารถยกเลิกคำสั่งด้านบนโดยพิมพ์ Ctrl+C

  3. เรียกใช้คำสั่งนี้เพื่อตรวจสอบว่าบริการ Kubernetes ใช้งานได้แล้ว คุณควร ดูเอาต์พุตที่คล้ายกับตัวอย่างเอาต์พุตที่แสดงด้านล่าง

    kubectl get svc -n edgemicro-system
    

    ตัวอย่างเอาต์พุต:

    NAME                        TYPE           CLUSTER-IP     EXTERNAL-IP    PORT(S)                     AGE
    default-http-backend        ClusterIP      10.19.255.106  <none>         80/TCP                       2h
    edgemicro-ingress           LoadBalancer   10.19.247.156  35.224.24.13   80:30176/TCP,443:32325/TCP   2h
    
  4. ตรวจสอบว่าพ็อดทั้งหมดกำลังทำงานอยู่:

    kubectl get pods -n edgemicro-system
    

    ตัวอย่างเอาต์พุต:

    NAME                                            READY     STATUS    RESTARTS   AGE
    default-http-backend-55c6c69b88-2lvtw           1/1       Running   0          4m
    edgemicro-ingress-controller-64444469bf-wjhrn   1/1       Running   3          4m
    

ติดตั้ง Edge Microgateway

  1. คุณต้องติดตั้ง Edge Microgateway 2.5.26 หรือเวอร์ชันที่ใหม่กว่า คุณสามารถตรวจสอบได้โดยการป้อนข้อมูลต่อไปนี้

    edgemicro --version
  2. หากคุณไม่ได้ติดตั้ง Edge Microgateway 2.5.26 ขึ้นไป ให้ดำเนินการติดตั้ง สคริปต์:

    npm install edgemicro -g
  3. หากคุณเพิ่งติดตั้ง Edge Microgateway เป็นครั้งแรกหรืออัปเกรด ให้เรียกใช้คำสั่งนี้:

    edgemicro init

    หากต้องการความช่วยเหลือเพิ่มเติม โปรดดูการติดตั้ง Edge Microgateway

ขั้นตอนถัดไป

ตอนนี้คุณพร้อมทำให้ Edge Microgateway ใช้งานได้กับ Kubernetes แล้ว