คุณกําลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ Apigee X info
หัวข้อนี้จะอธิบายขั้นตอนที่คุณต้องทำก่อนติดตั้ง Edge Microgateway เป็นบริการในคลัสเตอร์ Kubernetes
หัวข้อนี้จะกล่าวถึงเรื่องต่อไปนี้
- ข้อกำหนดขั้นต่ำสำหรับคลัสเตอร์ Kubernetes
- วิธีติดตั้งและกําหนดค่า Edge Microgateway
- วิธีติดตั้งการกำหนดค่าพื้นฐานของ Edge Microgateway ในคลัสเตอร์ Kubernetes
ข้อกำหนดสำหรับคลัสเตอร์ Kubernetes
คลัสเตอร์ Kubernetes ต้องมีสิ่งต่อไปนี้
- Kubernetes เวอร์ชัน 1.9 ขึ้นไป
- Kubernetes CLI kubectl v1.9 ขึ้นไป
- คลัสเตอร์ที่มีโหนดอย่างน้อย 3 โหนดที่มี vCPU 2 ตัวต่อโหนด
ตัวอย่าง: การสร้างคลัสเตอร์ Kubernetes ใน Google Kubernetes Engine (GKE)
ตั้งค่าเครื่องที่ใช้จัดการ Kubernetes
เครื่องที่ใช้จัดการ Kubernetes คือเครื่องในเครื่องที่คุณใช้เรียกใช้คําสั่งกับคลัสเตอร์ Kubernetes โดยปกติแล้วเครื่องนี้จะเป็นเครื่องเดสก์ท็อปที่มีสิทธิ์เข้าถึง VM ของ Kubernetes
คุณต้องติดตั้งยูทิลิตีต่อไปนี้ในเครื่องที่ใช้จัดการ Kubernetes
ติดตั้งอินเทอร์เฟซบรรทัดคำสั่ง kubectl 1.9 ขึ้นไป
(GKE เท่านั้น) ติดตั้ง gcloud หากคุณใช้ Kubernetes บน GKE
สร้างคลัสเตอร์ Kubernetes ใน GKE
- เข้าสู่ระบบแดชบอร์ด Google Kubernetes Engine (GKE) ใน Google Cloud Platform (GCP)
- คลิกสร้างคลัสเตอร์
- เลือกคลัสเตอร์มาตรฐาน
- ป้อนชื่อสำหรับคลัสเตอร์
- เลือกโซน
- เลือก
Cluster Version 1.9.7-gke-*
เช่น1.9.7-gke.6
- เลือกขนาด 3 โหนด
- เลือก vCPU 2 ตัวที่มีหน่วยความจำ 7.5 GB
คลิกสร้าง
ภาพหน้าจอต่อไปนี้แสดงแดชบอร์ด GKE ที่กรอกข้อมูลตามที่อธิบายไว้ในขั้นตอนก่อนหน้า
รับข้อมูลเข้าสู่ระบบของคลัสเตอร์
ตั้งชื่อโปรเจ็กต์ GKE
gcloud config set project projectName
ตั้งค่าโซนโปรเจ็กต์ GKE โดยทำดังนี้
gcloud config set compute/zone zoneName
รับข้อมูลเข้าสู่ระบบคอนเทนเนอร์ gcloud
gcloud container clusters get-credentials cluster-name --zone zone --project project-name
where:
cluster-name
คือชื่อคลัสเตอร์ Kubernetes ที่คุณสร้างขึ้นzone
คือโซนที่มีคลัสเตอร์ของคุณproject-name
คือชื่อโปรเจ็กต์ GCP
เช่น
gcloud container clusters get-credentials edgemicrogateway-cluster --zone us-central1-a --project edgemicro-project
เรียกใช้คำสั่งต่อไปนี้ตามที่แสดง คำสั่งนี้จะให้สิทธิ์ระดับผู้ดูแลระบบคลัสเตอร์แก่ผู้ใช้ปัจจุบัน คุณต้องมีสิทธิ์ของผู้ดูแลระบบเพื่อสร้างกฎ RBAC ที่จําเป็นสําหรับบริการ Edge Microgateway ดังนี้
kubectl create clusterrolebinding cluster-admin-binding --clusterrole=cluster-admin --user=$(gcloud config get-value core/account)
ติดตั้ง Edge Microgateway สำหรับ Kubernetes
ดาวน์โหลด 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
เปลี่ยนไดเรกทอรีเป็นไดเรกทอรีการติดตั้ง
microgateway_Version_OS_ARCH
เช่นcd microgateway_2.5.26_Darwin_x86_64
ตรวจสอบไดเรกทอรีการติดตั้ง
/install/kubernetes
- ไฟล์การกำหนดค่า.yaml
สำหรับการนำไปใช้งานใน Kubernetes/samples
- แอปพลิเคชันตัวอย่างสําหรับทดสอบการติดตั้ง/bin
- ไฟล์ปฏิบัติการedgemicroctl
คำสั่งedgemicroctl
จะแทรก Microgateway ของ Edge ลงใน Kubernetes
เพิ่มไคลเอ็นต์
edgemicroctl
ลงในPATH
เช่น เรียกใช้คำสั่งต่อไปนี้ในระบบ MacOS หรือ Linuxexport PATH=$PWD/bin:$PATH
ใช้การตั้งค่า Edge Microgateway พื้นฐานกับคลัสเตอร์ Kubernetes คำสั่งต่อไปนี้จะสร้างบทบาทเนมสเปซและคลัสเตอร์
edgemicro-system
kubectl apply -f install/kubernetes/edgemicro.yaml
ติดตั้ง NGINX Ingress Controller ในคลัสเตอร์ ตรวจสอบว่าไม่มีตัวควบคุม Nginix อื่นทำงานอยู่ คุณสามารถตรวจสอบได้โดยเรียกใช้
kubectl get pods
kubectl apply -f install/kubernetes/edgemicro-nginx-gke.yaml
ยืนยันการติดตั้ง
หากต้องการตรวจสอบว่าตัวควบคุม Ingress เริ่มทำงานแล้วหรือยัง ให้เรียกใช้คำสั่งต่อไปนี้
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
เมื่อ Ingress ทำงานอยู่ คุณจะยกเลิกคําสั่งข้างต้นได้โดยพิมพ์
Ctrl+C
เรียกใช้คําสั่งนี้เพื่อตรวจสอบว่ามีการใช้บริการ 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
ยืนยันว่าพ็อดทั้งหมดทำงานอยู่
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
คุณต้องติดตั้ง Edge Microgateway เวอร์ชัน 2.5.26 ขึ้นไป คุณตรวจสอบได้โดยป้อนข้อมูลต่อไปนี้
edgemicro --version
หากยังไม่ได้ติดตั้ง Edge Microgateway 2.5.26 ขึ้นไป ให้เรียกใช้สคริปต์การติดตั้ง ดังนี้
npm install edgemicro -g
หากคุณเพิ่งติดตั้ง Edge Microgateway เป็นครั้งแรกหรืออัปเกรด ให้เรียกใช้คําสั่งนี้
edgemicro init
หากต้องการความช่วยเหลือเพิ่มเติม โปรดดูที่การติดตั้ง Edge Microgateway
ขั้นตอนถัดไป
ตอนนี้คุณพร้อมที่จะติดตั้งใช้งาน Edge Microgateway ใน Kubernetes แล้ว