इस गाइड में, एयर-गैप्ड Google Distributed Cloud (GDC) एनवायरमेंट में, Apigee Edge for Private Cloud और API प्रॉक्सी को इंस्टॉल और डिप्लॉय करने का तरीका बताया गया है. GDC एयर-गैप्ड ऑफ़रिंग, जैसे कि Apigee Edge for Private Cloud को इंफ़्रास्ट्रक्चर और सेवाओं को मैनेज करने के लिए, Google Cloud से कनेक्ट करने की ज़रूरत नहीं होती. सभी कार्रवाइयों के लिए, अपने परिसर में होस्ट किए गए लोकल कंट्रोल प्लेन का इस्तेमाल किया जा सकता है. GDC एयर-गैप्ड की खास जानकारी के लिए, खास जानकारी देखें.
यह गाइड, Apigee ऑपरेटर के लिए है. उन्हें Apigee Edge for Private Cloud के बारे में पता होना चाहिए. साथ ही, उन्हें Kubernetes की बुनियादी जानकारी होनी चाहिए.
ज़रूरी चरणों के बारे में खास जानकारी
एयर-गैप्ड GDC एनवायरमेंट में Apigee Edge for Private Cloud को इंस्टॉल और डिप्लॉय करने के लिए, ऑपरेटर को यह तरीका अपनाना होगा:
- Apigee Edge for Private Cloud के लिए इंस्टॉलेशन फ़ाइलें पाएं.
- स्टोरेज बकेट सेट अप करें.
- रिपॉज़िटरी नोड सेट अप करें.
- Apigee नोड डिप्लॉय करें.
- कंट्रोल नोड सेट अप करें.
- Ansible को कॉन्फ़िगर करें.
- Apigee कॉम्पोनेंट इंस्टॉल करें.
- पॉड और सेवाएं डिप्लॉय करें.
- अपलोडर और Fluent Bit फ़ॉरवर्डर के आईपी पते अपडेट करें.
- Apigee संगठन को जोड़ें.
- एचटीटीपी कनेक्टिविटी की जांच करें.
- टीएलएस को कॉन्फ़िगर करें और एचटीटीपीएस की जांच करें.
शुरू करने से पहले
इंस्टॉल करने की प्रोसेस शुरू करने से पहले, पक्का करें कि आपने ये चरण पूरे कर लिए हों:
- अगर आपके पास पहले से कोई GDC प्रोजेक्ट नहीं है, तो इंस्टॉलेशन के लिए एक GDC प्रोजेक्ट बनाएं. ज़्यादा जानकारी के लिए, प्रोजेक्ट बनाना लेख पढ़ें.
- GDC से कनेक्ट किए गए वर्कस्टेशन पर या अपने संगठन के कंटीन्यूअस डिप्लॉयमेंट एनवायरमेंट में,
gdcloud
CLI को डाउनलोड करें, इंस्टॉल करें, और कॉन्फ़िगर करें. gdcloud
CLI औरkubectl
API का इस्तेमाल करने के लिए ज़रूरी क्रेडेंशियल पाएं. ज़रूरी चरणों के लिए, ऐक्सेस पाने के लिए अपने खाते की पुष्टि करना लेख पढ़ें.- पुष्टि करें कि Apigee का वह उपयोगकर्ता नाम और पासवर्ड सही है जो आपको Apigee के खाता मैनेजर से मिला है.
- अपने GKE एडमिन क्लस्टर और GKE उपयोगकर्ता क्लस्टर के नाम की पुष्टि करें.
क्षमता से जुड़ी ज़रूरी शर्तें
GDC पर Apigee Edge for Private Cloud इंस्टॉल करने के लिए, खास संसाधन आवंटन वाली कई वर्चुअल मशीन (वीएम) की ज़रूरत होती है. इन वीएम के लिए, कंप्यूट रिसॉर्स (रैम, वीसीपीयू कोर) और लोकल डिस्क स्टोरेज के आधार पर शुल्क लिया जाता है. ज़्यादा जानकारी के लिए, कीमत देखें.
यहां दी गई टेबल में, हर वीएम के लिए ज़रूरी संसाधनों के बारे में बताया गया है:
वीएम का टाइप | RAM | vCPU कोर | डिस्क स्टोरेज |
---|---|---|---|
Repo नोड | 8 जीबी | 2-vCPU कोर | 64GB |
कंट्रोल नोड | 8 जीबी | 2-vCPU कोर | 64GB |
Apigee API मैनेजमेंट नोड 1, 2, और 3 | 16 जीबी रैम | 8-वीसीपीयू कोर | 670 जीबी |
Apigee API मैनेजमेंट नोड 4 और 5 | 16 जीबी रैम | 8-वीसीपीयू कोर | 500 जीबी - 1 टीबी |
भूमिकाएं और अनुमतियां
एयर-गैप्ड GDC एनवायरमेंट में Apigee Edge for Private Cloud को डिप्लॉय करने के लिए, इन भूमिकाओं और अनुमतियों की ज़रूरत होती है:
- प्लैटफ़ॉर्म एडमिन (पीए):
IAM Admin
भूमिका असाइन करें. - ऐप्लिकेशन ऑपरेटर (एओ): ये भूमिकाएं असाइन करें:
Harbor Instance Admin
: इस भूमिका वाले व्यक्ति के पास, किसी प्रोजेक्ट में Harbor इंस्टेंस को मैनेज करने का पूरा ऐक्सेस होता है.LoggingTarget Creator
: यह प्रोजेक्ट के नेमस्पेस मेंLoggingTarget
कस्टम संसाधन बनाता है.LoggingTarget Editor
: प्रोजेक्ट के नेमस्पेस में मौजूदLoggingTarget
कस्टम संसाधनों में बदलाव करता है.Project Bucket Admin
: यह स्टोरेज बकेट और बकेट में मौजूद ऑब्जेक्ट मैनेज करता हैProject Grafana Viewer
: यह प्रोजेक्ट नेमस्पेस में मॉनिटरिंग इंस्टेंस को ऐक्सेस करता है.Project NetworkPolicy Admin
: यह प्रोजेक्ट के नेमस्पेस में, प्रोजेक्ट की नेटवर्क नीतियां मैनेज करता है.Project VirtualMachine Admin
: यह प्रोजेक्ट नेमस्पेस में वर्चुअल मशीनों को मैनेज करता है.Secret Admin
: यह प्रोजेक्ट में Kubernetes सीक्रेट मैनेज करता है.Service Configuration Admin
: इसके पास प्रोजेक्ट नेमस्पेस में सेवा कॉन्फ़िगरेशन को पढ़ने और लिखने का ऐक्सेस होता है.Namespace Admin
: यह प्रोजेक्ट के नेमस्पेस में मौजूद सभी संसाधनों को मैनेज करता है.
- GDC एयर-गैप्ड पर Apigee में डीएनएस सर्वर नहीं होते हैं. इसलिए, यह समस्या हल करने के लिए लोकल डीएनएस रिज़ॉल्यूशन का इस्तेमाल करता है. अगर GDC एयर-गैप्ड पर Apigee को बाहरी डीएनएस सर्वर वाले एनवायरमेंट में डिप्लॉय किया गया है, तो स्थानीय डीएनएस को कॉन्फ़िगर करने वाले चरणों को डीएनएस सर्वर में डीएनएस एंट्री कॉन्फ़िगर करने वाले चरणों से बदलें.
- GDC एयर-गैप्ड पर Apigee में, स्टैंड-अलोन एसएमटीपी सर्वर शामिल नहीं होता है. मैनेजमेंट सर्वर और मैनेजमेंट यूज़र इंटरफ़ेस (यूआई) से, खाता बनाने और पासवर्ड रीसेट करने के लिए आउटबाउंड ईमेल सूचनाएं पाने की सुविधा चालू करने के लिए, किसी भी समय एसएमटीपी सर्वर को कॉन्फ़िगर किया जा सकता है. Apigee के उपयोगकर्ता खाते के मैनेजमेंट के लिए, मैनेजमेंट एपीआई उपलब्ध रहेंगे. ज़्यादा जानकारी के लिए, Edge SMTP सर्वर को कॉन्फ़िगर करना लेख पढ़ें.
- Apigee on GDC air-gapped में, मैलवेयर गतिविधि की पहचान करने और उसे रोकने की सुविधा लागू नहीं की जाती. नुकसान पहुंचाने वाली गतिविधियों का पता लगाने और उन्हें रोकने के लिए, घुसपैठ रोकथाम सिस्टम (आईपीएस) इंस्टॉल और कॉन्फ़िगर करें. जैसे, Snort.
- ऑपरेटिंग सिस्टम: Rocky Linux 8
- मशीन का साइज़: 8 जीबी रैम; 2-वीसीपीयू कोर; 64 जीबी लोकल डिस्क स्टोरेज
- कनेक्टिविटी:
- इनग्रेस: टीसीपी 22 (एसएसएच)
- इग्रेस: इंटरनेट
- GDC के लिए उपलब्ध आधिकारिक रिलीज़ वर्शन की जानकारी पाने के लिए, Apigee Edge for Private Cloud के रिलीज़ नोट देखें. यह जानकारी, Edge for Private Cloud कॉलम में दी गई है.
- Edge सेटअप फ़ाइल डाउनलोड करें:
curl https://software.apigee.com/apigee/tarball/VERSION/rocky8/archive.tar -o /tmp/archive.tar -u 'APIGEE_USER:APIGEE_PASSWORD'
कहां:
- APIGEE_USER, Apigee संगठन के लिए मिला उपयोगकर्ता नाम है.
- APIGEE_PASSWORD वह पासवर्ड है जो आपको Apigee संगठन के लिए मिला है.
- VERSION, Apigee Edge for Private Cloud का रिलीज़ वर्शन है. इसका इस्तेमाल उस GDC पर किया जाता है जिसे आपको इंस्टॉल करना है. उदाहरण के लिए, 4.53.01.
- Apigee Edge for Private Cloud
bootstrap_VERSION.sh
की नई फ़ाइल को/tmp/bootstrap_VERSION.sh
में डाउनलोड करें:curl https://software.apigee.com/bootstrap_VERSION.sh -o /tmp/bootstrap_VERSION.sh
यहां VERSION, Apigee Edge for Private Cloud का सबसे नया रिलीज़ वर्शन है. इसे उस GDC पर इस्तेमाल किया जाएगा जिसे आपको इंस्टॉल करना है. उदाहरण के लिए, 4.53.01.
- Edge
apigee-service
यूटिलिटी और डिपेंडेंसी इंस्टॉल करें:sudo bash /tmp/bootstrap_VERSION.sh apigeeuser=APIGEE_USER apigeepassword=APIGEE_PASSWORD
कहां:
- APIGEE_USER, Apigee संगठन के लिए मिला उपयोगकर्ता नाम है.
- APIGEE_PASSWORD वह पासवर्ड है जो आपको Apigee संगठन के लिए मिला है.
- VERSION, Apigee Edge for Private Cloud का रिलीज़ वर्शन है. इसका इस्तेमाल उस GDC पर किया जाता है जिसे आपको इंस्टॉल करना है.
- कनेक्ट किए गए नोड पर सेटअप स्क्रिप्ट चलाएं:
chmod a+x connected-node_setup.sh \ ./connected-node_setup.sh
इस चरण में, स्क्रिप्ट इन जगहों पर ज़रूरी फ़ाइलें जनरेट करती है (उदाहरण के लिए, वर्शन 4.53.01 के लिए):
/opt/apigee/data/apigee-mirror/apigee-4.53.01.tar.gz
/tmp/apigee-nginx/apigee-nginx.tar
/tmp/fluentbit/fluentbit.tar
/tmp/postgresql14/postgresql14.tar
/tmp/ansible-rpms.tar
/tmp/apigee-repos.tar
- एसएसएच की मदद से, कनेक्ट किए गए नोड से ज़रूरी फ़ाइलों को लोकल मशीन पर ट्रांसफ़र करें:
mkdir apigee-files
cd apigee-files
for file in /opt/apigee/data/apigee-mirror/apigee-4.53.01.tar.gz /tmp/ansible-rpms.tar /tmp/apigee-nginx/apigee-nginx.tar /tmp/fluentbit/fluentbit.tar /tmp/postgresql14/postgresql14.tar /tmp/apigee-repos.tar; do scp -i SSH_PRIVATE_KEY_FILE USER@CONNECTED_NODE_IP:$file . done
कहां:
- SSH_PRIVATE_KEY_FILE एसएसएच निजी पासकोड वाली फ़ाइल का पाथ है.
- USER कनेक्ट किए गए नोड का उपयोगकर्ता नाम है.
- CONNECTED_NODE_IP कनेक्ट किए गए नोड का आईपी पता है.
- संगठन के एडमिन क्लस्टर से पुष्टि करें:
gdcloud auth login --login-config-cert WEB_TLS_CERT
gdcloud clusters get-credentials ORG_ADMIN_CLUSTER
कहां:
- WEB_TLS_CERT वेब टीएलएस सर्टिफ़िकेट का पाथ है.
- ORG_ADMIN_CLUSTER, संगठन के एडमिन GKE क्लस्टर का नाम है.
- प्रोजेक्ट और बकेट के एनवायरमेंट वैरिएबल सेट करें:
export PROJECT=PROJECT
export BUCKET=BUCKET_NAME
कहां:
- PROJECT आपके GDC प्रोजेक्ट का नाम है.
- BUCKET_NAME उस बकेट का नाम है जिसे आपको Apigee Edge for Private Cloud की बैकअप फ़ाइलों को सेव करने के लिए बनाना है.
- बकेट कॉन्फ़िगरेशन लागू करें:
kubectl apply -f - <<EOF apiVersion: object.GDC.goog/v1 kind: Bucket metadata: name: $BUCKET namespace:$PROJECT spec: description: bucket for Apigee backup files storageClass: Standard bucketPolicy : lockingPolicy : defaultObjectRetentionDays: 30 EOF
इस कॉन्फ़िगरेशन से, 30 दिनों तक डेटा सुरक्षित रखने की अवधि वाला बकेट बनता है.
- प्रोजेक्ट में सेवा खाता बनाएं:
gdcloud iam service-accounts create $BUCKET-sa \ --project=$PROJECT
- बकेट को ऐक्सेस करने के लिए सीक्रेट जनरेट करने के लिए, भूमिका और भूमिका बाइंडिंग बनाएं:
kubectl apply -f - <<EOF apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: name: $BUCKET-role namespace: $PROJECT rules: - apiGroups: - object.gdc.goog resourceNames: - $BUCKET resources: - buckets verbs: - get - read-object - write-object --- apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: name: $BUCKETrolebinding namespace: $PROJECT roleRef: apiGroup: rbac.authorization.k8s.io kind: Role name: $BUCKET-role subjects: - kind: ServiceAccount name: $BUCKET-sa namespace: $PROJECT EOF
- सीक्रेट से ऐक्सेस कुंजी आईडी और कुंजी पाएं:
export BUCKET_SECRET=$(kubectl get secret -n $PROJECT -o jsonpath="{range .items[*]}{.metadata.name}{':'}{.metadata.annotations['object\.GDC\.goog/subject']}{'\n'}{end}" | grep $BUCKET | tail -1 | cut -f1 -d :)
echo "access-key-id=$(kubectl get secret -n $PROJECT $BUCKET_SECRET -o jsonpath="{.data['access-key-id']}")"
echo "access-key=$(kubectl get secret -n $PROJECT $BUCKET_SECRET -o jsonpath="{.data['secret-access-key']}")"
आउटपुट कुछ ऐसा दिखना चाहिए:
access-key-id=RFdJMzRROVdWWjFYNTJFTzJaTk0= access-key=U3dSdm5FRU5WdDhMckRMRW1QRGV0bE9MRHpCZ0Ntc0cxVFJQdktqdg==
- उपयोगकर्ता के GKE क्लस्टर में, अपलोड करने वाले व्यक्ति के लिए इस्तेमाल किया जाने वाला सीक्रेट बनाएं:
- उपयोगकर्ता के GKE क्लस्टर की मदद से पुष्टि करें:
gdcloud clusters get-credentials USER_CLUSTER
यहां USER_CLUSTER, उपयोगकर्ता के GKE क्लस्टर का नाम है.
- सीक्रेट कॉन्फ़िगरेशन लागू करें:
kubectl apply -f - <<EOF apiVersion: v1 kind: Secret metadata: namespace: $PROJECT name: $BUCKET-secret type: Opaque data: access-key-id: ACCESS_KEY_ID access-key: ACCESS_KEY EOF
कहां:
- ACCESS_KEY_ID पिछले चरण में मिला ऐक्सेस कुंजी आईडी है.
- ACCESS_KEY पिछले चरण में मिली ऐक्सेस कुंजी है.
- उपयोगकर्ता के GKE क्लस्टर की मदद से पुष्टि करें:
- बकेट का स्टोरेज एंडपॉइंट, पूरी तरह क्वालिफ़ाइड डोमेन नेम (एफ़क्यूडीएन), और क्षेत्र पाएं:
- संगठन के एडमिन क्लस्टर से पुष्टि करें:
gdcloud clusters get-credentials ORG_ADMIN_CLUSTER
यहां ORG_ADMIN_CLUSTER, संगठन के एडमिन GKE क्लस्टर का नाम है.
- बकेट का स्टोरेज एंडपॉइंट, पूरी तरह क्वालिफ़ाइड डोमेन नेम (एफ़क्यूडीएन), और क्षेत्र पाएं:
kubectl get buckets ${BUCKET} -n $PROJECT -o jsonpath="{'endpoint: '}{.status.endpoint}{'\n'}{'bucket: '}{.status.fullyQualifiedName}{'\n'}{'region: '}{.status.region}{'\n'}"
आउटपुट कुछ ऐसा दिखना चाहिए:
endpoint: https://objectstorage.gpu-org.cookie.sesame.street bucket: ez9wo-apigee-backup-bucket region: cookie
- संगठन के एडमिन क्लस्टर से पुष्टि करें:
apigee/helm_user_cluster/values-cookie-air-gapped.yaml
फ़ाइल में, इन वैल्यू को अपडेट करें:objectstorekeyname: "apigee-backup-bucket-secret" objectstoreurl: "BUCKET_ENDPOINT" objectstorebucket: "BUCKET_FQDN"
कहां:
- BUCKET_ENDPOINT पिछले चरण में मिले बकेट का एंडपॉइंट है.
- BUCKET_FQDN पिछले चरण में मिला बकेट का पूरी तरह क्वालिफ़ाइड डोमेन नेम है.
apigee/helm_user_cluster/values-cookie-air-gapped.yaml
को इस तरह अपडेट करें:repo_node: enabled: true apigee_node: enabled: false control_node: enabled: false
पक्का करें कि
repo_node
चालू हो औरapigee_node
औरcontrol_node
, दोनों बंद हों. इन नोड को बाद के चरण में डिप्लॉय किया जाता है.- संगठन के एडमिन क्लस्टर के लिए क्रेडेंशियल पाएं:
gdcloud clusters get-credentials ORG_ADMIN_CLUSTER
यहां ORG_ADMIN_CLUSTER, संगठन के एडमिन GKE क्लस्टर का नाम है.
- Python का वर्चुअल एनवायरमेंट बनाएं:
python3 -m venv venv / source venv/bin/activate
- डेटाबेस नोड बनाने के लिए, डिप्लॉय स्क्रिप्ट चलाएं:
python apigee/solution_deploy.py gdc-air-gapped
- रिपॉज़िटरी नोड के लिए एसएसएच कॉन्फ़िगर करें:
export NODE=repo
kubectl create -n $PROJECT -f - <<EOF apiVersion: virtualmachine.GDC.goog/v1 kind: VirtualMachineAccessRequest metadata: generateName: $NODE- spec: ssh: key: | "cat SSH_PUBLIC_KEY_FILE" ttl: 24h user: admin vm: $NODE EOF
यहां SSH_PUBLIC_KEY_FILE आपकी सार्वजनिक एसएसएच कुंजी वाली फ़ाइल का नाम है.
- रिपॉज़िटरी नोड के लिए एक्सटर्नल आईपी पता पाएं:
kubectl get virtualmachineexternalaccess -n $PROJECT $NODE -ojsonpath='{.status.ingressIP}'
- रिपॉज़िटरी नोड के लिए इंटरनल आईपी पता पाएं:
kubectl get virtualmachines.virtualmachine.gdc.goog -n $PROJECT $NODE -ojsonpath='{.status.network.interfaces[1].ipAddresses[0]}'
apigee-4.53.01
apigee-nginx.tar
postgresql14.tar
fluentbit.tar
ansible-rpms.tar
apigee-repos.tar
- एसएसएच निजी पासकोड वाली फ़ाइल को रिपॉज़िटरी नोड पर कॉपी करें:
scp -i SSH_PRIVATE_KEY_FILE ~/apigee-files/* admin@REPO_EXTERNAL_IP:/tmp
कहां:
- SSH_PRIVATE_KEY_FILE आपकी निजी एसएसएच कुंजी वाली फ़ाइल का नाम है.
- REPO_EXTERNAL_IP पिछले चरण में मिला रिपॉज़िटरी नोड का बाहरी आईपी पता है.
- Fluent Bit कॉन्फ़िगरेशन वाले फ़ोल्डर को रिपॉज़िटरी नोड पर अपलोड करें:
scp -i SSH-PRIVATE-KEY-FILE -r apigee/scripts/fluent-bit admin@REPO_EXTERNAL_IP:/tmp/fluent-bit
कहां:
- SSH_PRIVATE_KEY_FILE आपकी निजी एसएसएच कुंजी वाली फ़ाइल का नाम है.
- REPO_EXTERNAL_IP, रिपॉज़िटरी नोड का बाहरी आईपी पता है.
apigee/scripts/repo_setup.sh
को डेटाबेस नोड में कॉपी करें.- स्क्रिप्ट में, REPO_USER और REPO_PASSWORD को मिरर रिपॉज़िटरी के लिए अपने हिसाब से उपयोगकर्ता नाम और पासवर्ड से बदलें.
- स्क्रिप्ट चलाएं:
chmod a+x repo_setup.sh
./repo_setup.sh
अगर आपको
No such file or directory
गड़बड़ी का सामना करना पड़ता है, तो स्क्रिप्ट को फिर से चलाएं. - रिपॉज़िटरी नोड से, मिरर रिपॉज़िटरी से कनेक्शन की जांच करें.
curl http://REPO_USER:REPO_PASSWORD@REPO_INTERNAL_IP:3939/bootstrap_VERSION.sh -o /tmp/bootstrap_VERSION.sh
curl http://REPO_USER:REPO_PASSWORD@REPO_INTERNAL_IP:3939/apigee/release/VERSION/repodata/repomd.xml
VERSION की जगह, Apigee Edge for Private Cloud का वह वर्शन डालें जिसे आपको इंस्टॉल करना है.
apigee/helm/scripts/apigee_setup.sh
में मौजूदREPO_INTERNAL_IP
,REPO_USER_NAME
, औरREPO_PASSWORD
को अपनी पसंद की वैल्यू से बदलें.- वैल्यू को एनवायरमेंट वैरिएबल के तौर पर एक्सपोर्ट करें:
export REPO_IP=REPO_INTERNAL_IP
export REPO_USER=REPO_USER_NAME
export REPO_PASSWORD=REPO_PASSWORD
apigee/helm/values-cookie-air-gapped.yaml
मेंapigee_node
को इस तरह चालू करें::apigee_node: enabled: true
- Apigee नोड बनाने के लिए, डिप्लॉय स्क्रिप्ट चलाएं:
source venv/bin/activate
python apigee/solution_deploy.py gdc-air-gapped
- संगठन के एडमिन क्लस्टर से पुष्टि करें:
gdcloud clusters get-credentials ORG_ADMIN_CLUSTER
यहां ORG_ADMIN_CLUSTER, संगठन के एडमिन GKE क्लस्टर का नाम है.
- हर नोड के लिए एसएसएच कुंजी बनाएं:
for i in 1 2 3 4 5; do kubectl create -n $PROJECT -f - <<EOF apiVersion: virtualmachine.GDC.goog/v1 kind: VirtualMachineAccessRequest metadata: generateName: node$i spec: ssh: key: | "cat SSH_PUBLIC_KEY_FILE" ttl: 24h user: admin vm: node$i EOF done
यहां SSH_PUBLIC_KEY_FILE आपकी सार्वजनिक एसएसएच कुंजी वाली फ़ाइल का नाम है.
- Apigee नोड के लिए बाहरी आईपी पते पाएं:
for i in 1 2 3 4 5; do kubectl get virtualmachineexternalaccess -n $PROJECT node$i -ojsonpath='{.status.ingressIP}' echo done
- Apigee नोड के लिए इंटरनल आईपी पते पाएं:
for i in 1 2 3 4 5; do kubectl get virtualmachines.virtualmachine.gdc.goog -n $PROJECT node$i -ojsonpath='{.status.network.interfaces[1].ipAddresses[0]}' echo done
- (ज़रूरी नहीं) देखें कि Apigee नोड पर स्टार्टअप स्क्रिप्ट सही तरीके से चल रही हैं या नहीं:
- नोड से SSH करें और यह कमांड चलाएं:
sudo journalctl -u cloud-final -f
- नीचे दिए गए लॉग की तरह लॉग देखें:
Aug 29 18:17:00 172.20.128.117 cloud-init[1895]: Complete! Aug 29 18:17:00 172.20.128.117 cloud-init[1895]: Finished running the command: . /var/lib/google/startup-scripts/apigee-setup
- नोड से SSH करें और यह कमांड चलाएं:
apigee/helm/scripts/control_setup.sh
में मौजूदREPO_INTERNAL_IP
,REPO_USER_NAME
, औरREPO_PASSWORD
को अपनी पसंद की वैल्यू से बदलें.apigee/helm/values-cookie-air-gapped.yaml
मेंcontrol_node
को इस तरह चालू करें:control_node: enabled: true
- कंट्रोल नोड बनाने के लिए, डिप्लॉय स्क्रिप्ट चलाएं:
source venv/bin/activate
python apigee/solution_deploy.py gdc-air-gapped
- कंट्रोल नोड के लिए एसएसएच ऐक्सेस कॉन्फ़िगर करें:
kubectl create -n $PROJECT -f - <<EOF apiVersion: virtualmachine.GDC.goog/v1 kind: VirtualMachineAccessRequest metadata: generateName: control- spec: ssh: key: | "cat SSH_PUBLIC_KEY_FILE" ttl: 24h user: admin vm: control EOF
- कंट्रोल नोड के लिए एक्सटर्नल आईपी पता पाएं:
kubectl get virtualmachineexternalaccess -n $PROJECT control -ojsonpath='{.status.ingressIP}'
- कंट्रोल नोड के लिए इंटरनल आईपी पाएं:
kubectl get virtualmachines.virtualmachine.GDC.goog -n $PROJECT control -ojsonpath='{.status.network.interfaces[1].ipAddresses[0]}'
- कंट्रोल नोड से एसएसएच करें और Ansible एनवायरमेंट सेट अप करें:
cd /home/admin
cp -r /tmp/apigee-repos .
cd apigee-repos/ansible-opdk-accelerator/setup
- रिमोट गिट रिपॉज़िटरी को लोकल फ़ाइल से बदलें:
sed -i 's/https:\/\/github.com\/carlosfrias/git+file:\/\/\/home\/admin\/apigee-repos/g' requirements.yml
sed -i 's/\.git$//g' requirements.yml
- Install Ansible requirements:
sudo chown -R admin /home/admin/apigee-repos
ansible-galaxy install -r requirements.yml -f
- सेटअप कॉन्फ़िगरेशन अपडेट करें:
main.yml
फ़ाइल में बदलाव करने के लिए:vi ~/apigee-repos/ansible-opdk-accelerator/setup/roles/apigee-opdk-setup-ansible-controller/tasks/main.yml
- उन टास्क को हटाएं जिनके लिए GitHub का ऐक्सेस ज़रूरी है:
- कॉन्फ़िगरेशन रिपॉज़िटरी का Git SSH चेकआउट
- कॉन्फ़िगरेशन रिपॉज़िटरी का Git HTTPS चेकआउट
- सेटअप प्लेबुक चलाएं:
cd ~/apigee-repos/ansible-opdk-accelerator/setup
ansible-playbook setup.yml
- Apigee नोड के लिए एसएसएच कुंजी को कंट्रोल नोड पर अपलोड करें:
scp -i CONTROL_SSH_PRIVATE_KEY_FILE APIGEE_NODE_SSH_PRIVATE_KEY_FILE admin@CONTROL_EXTERNAL_IP:/home/admin/.ssh/id_rsa
कहां:
- CONTROL_SSH_PRIVATE_KEY_FILE आपके कंट्रोल नोड के एसएसएच निजी पासकोड वाली फ़ाइल का नाम है.
- APIGEE_NODE_SSH_PRIVATE_KEY_FILE आपकी Apigee नोड की एसएसएच निजी कुंजी वाली फ़ाइल का नाम है.
- CONTROL_EXTERNAL_IP कंट्रोल नोड का बाहरी आईपी पता है.
- Ansible इन्वेंट्री कॉन्फ़िगरेशन फ़ाइल बनाएं:
apigee/scripts/ansible/prod.cfg
फ़ाइल के कॉन्टेंट कोprod.cfg
फ़ाइल में कॉपी करें:vi ~/.ansible/multi-planet-configurations/prod.cfg
edge-dc1
फ़ोल्डर बनाएं औरapigee/scripts/ansible/edge-dc1
फ़ाइल का कॉन्टेंट,edge-dc1
फ़ाइल में कॉपी करें:mkdir ~/.ansible/inventory/prod
vi ~/.ansible/inventory/prod/edge-dc1
edge-dc1
में Apigee नोड के इंटरनल आईपी पते अपडेट करें:apigee_000 ansible_host=APIGEE_NODE1_INTERNAL_IP
apigee_001 ansible_host=APIGEE_NODE2_INTERNAL_IP
apigee_002 ansible_host=APIGEE_NODE3_INTERNAL_IP
apigee_003 ansible_host=APIGEE_NODE4_INTERNAL_IP
apigee_004 ansible_host=APIGEE_NODE5_INTERNAL_IP
यहां APIGEE_NODE*_INTERNAL_IP की वैल्यू, Apigee नोड के इंटरनल आईपी पते हैं. ये पते, पिछले चरण में मिले थे.
~/.apigee-secure/credentials.yml
फ़ाइल को इन वैल्यू के साथ कॉन्फ़िगर करें:- apigee_repo_user: 'APIGEE_REPO_USER'
- apigee_repo_password: 'APIGEE_REPO_PASSWORD'
- opdk_qpid_mgmt_username: 'OPDK_QPID_MGMT_USERNAME'
- opdk_qpid_mgmt_password: 'OPDK_QPID_MGMT_PASSWORD'
कहां:
- APIGEE_REPO_USER, Apigee रिपॉज़िटरी के लिए उपयोगकर्ता नाम है.
- APIGEE_REPO_PASSWORD Apigee रिपॉज़िटरी का पासवर्ड है.
- OPDK_QPID_MGMT_USERNAME, Apigee QPID मैनेजमेंट सर्वर का उपयोगकर्ता नाम है.
- OPDK_QPID_MGMT_PASSWORD, Apigee QPID मैनेजमेंट सर्वर का पासवर्ड है.
- Apigee Edge for Private Cloud की मान्य लाइसेंस फ़ाइल के साथ लाइसेंस फ़ाइल जोड़ें. फ़ाइल का नाम
license.txt
होना चाहिए. ~/.apigee-secure/license.txt
फ़ाइल के कॉन्टेंट को, अभी बनाई गईlicense.txt
फ़ाइल में कॉपी करें.~/.apigee/custom-properties.yml
फ़ाइल में, ये वैल्यू कॉन्फ़िगर करें:- opdk_version: 'OPDK_VERSION'
- apigee_repo_url: 'APIGEE_REPO_URL'
कहां:
- OPDK_VERSION वह Apigee Edge for Private Cloud वर्शन है जिसे आपको इंस्टॉल करना है.
- APIGEE_REPO_URL, Apigee रिपॉज़िटरी का यूआरएल है.
- कॉन्फ़िगरेशन फ़ाइल को एनवायरमेंट वैरिएबल के तौर पर एक्सपोर्ट करें:
export ANSIBLE_CONFIG=~/.ansible/multi-planet-configurations/prod.cfg
- रिमोट गिट रिपॉज़िटरी को लोकल फ़ाइलों से बदलें:
cd ~/apigee-repos/ansible-opdk-accelerator/installations/multi-node/
sed -i 's/https:\/\/github.com\/carlosfrias/git+file:\/\/\/home\/admin\/apigee-repos/g' requirements.yml
sed -i 's/\.git$//g' requirements.yml
- Ansible की ज़रूरी शर्तें इंस्टॉल करें:
ansible-galaxy install -r requirements.yml -f
- Ansible की भूमिकाओं को पैच करें:
sed -i 's/private_address/inventory_hostname/g' ~/.ansible/roles/apigee-opdk-settings-cassandra/tasks/main.yml
sed -i 's/include/include_tasks/g' ~/.ansible/roles/apigee-opdk-server-self/tasks/main.yml
sed -i 's/include/include_tasks/g' ~/.ansible/roles/apigee-opdk-setup-silent-installation-config/tasks/main.yml
cat << EOF >> ~/.ansible/roles/apigee-opdk-setup-silent-installation-config/templates/response-file-template.conf.j2 QPID_MGMT_USERNAME= opdk_qpid_mgmt_username QPID_MGMT_PASSWORD= opdk_qpid_mgmt_password EOF
sed -i 's/mode: 0700/mode: 0700\n recurse: yes/g' ~/.ansible/roles/apigee-opdk-setup-postgres-config/tasks/main.yml
install.yml
फ़ाइल के कॉन्टेंट कोapigee/scripts/ansible/install.yml
में मौजूद कॉन्टेंट से बदलें.- Apigee कॉम्पोनेंट इंस्टॉल करने के लिए, प्लेबुक चलाएं:
ansible-playbook install.yml
- Edge के यूज़र इंटरफ़ेस (यूआई) में, उपयोगकर्ता के पासवर्ड रीसेट करने के लिंक को बंद करें. GDC एयर-गैप्ड पर Apigee में एसएमटीपी सर्वर शामिल नहीं होता है. Edge के यूज़र इंटरफ़ेस (यूआई) में, पासवर्ड रीसेट करने का लिंक बंद करें में दिया गया तरीका अपनाएं.
- GDC प्रोजेक्ट
dev-apigee
में Harbor इंस्टेंस बनाने के लिए, Harbor रजिस्ट्री इंस्टेंस बनाएं में दिए गए निर्देशों का पालन करें. apigee
नाम का Harbor प्रोजेक्ट बनाने के लिए, Harbor प्रोजेक्ट बनाएं में दिए गए निर्देशों का पालन करें.- Harbor प्रोजेक्ट के लिए ऐक्सेस कंट्रोल सेट अप करने के लिए, ऐक्सेस कंट्रोल कॉन्फ़िगर करना में दिए गए निर्देशों का पालन करें.
- Docker की पुष्टि करने की सुविधा कॉन्फ़िगर करने के लिए, Docker और Helm में साइन इन करें में दिए गए निर्देशों का पालन करें.
apigee/apigee_user_cluster.toml
फ़ाइल में आईपी पते अपडेट करें. इसके लिए, यहां दिया गया तरीका अपनाएं:mgmt-server-proxy = "APIGEE_NODE1_EXTERNAL_IP" router-proxy1 = "APIGEE_NODE2_EXTERNAL_IP" router-proxy2 = "APIGEE_NODE3_EXTERNAL_IP"
कहां:
- APIGEE_NODE1_EXTERNAL_IP Apigee node1 का एक्सटर्नल आईपी पता है. यह हमें पिछले चरण में मिला था.
- APIGEE_NODE2_EXTERNAL_IP Apigee node2 का एक्सटर्नल आईपी पता है, जिसे पिछले चरण में हासिल किया गया था.
- APIGEE_NODE3_EXTERNAL_IP Apigee node3 का एक्सटर्नल आईपी पता है. इसे पिछले चरण में हासिल किया गया था.
- एचटीटीपीएस को कॉन्फ़िगर करने के लिए, एसएसएल सर्टिफ़िकेट फ़ाइल (
server.crt
) और कुंजी फ़ाइल (server.key
) कोapigee/mgmt-server-proxy
औरapigee/router-proxy
फ़ोल्डर में रखें.सेल्फ़-साइन किए गए सर्टिफ़िकेट जनरेट करने के लिए, इस निर्देश का इस्तेमाल करें:
openssl req -newkey rsa:4096 -x509 -nodes -keyout server.key -new -out server.crt -subj "/CN=*.apigeetest.com" -sha256 -days 365
apigee/uploader/Dockerfile
फ़ाइल में, अपलोड करने वाले कंटेनर में मौजूद रूट उपयोगकर्ता के लिएSSH-PASSWORD
की वैल्यू अपडेट करें:RUN echo 'root:SSH_PASSWORD' | chpasswd
- उपयोगकर्ता क्लस्टर के क्रेडेंशियल पाएं:
gdcloud clusters get-credentials USER_CLUSTER
यहां USER_CLUSTER, उपयोगकर्ता के GKE क्लस्टर का नाम है.
- पॉड और सेवाओं को डिप्लॉय करने के लिए, डिप्लॉय स्क्रिप्ट चलाएं:
source venv/bin/activate
python apigee/solution_deploy_user_cluster.py gdc-air-gapped
- सेवाओं के बाहरी आईपी पते पाएं:
kubectl get svc -n $PROJECT_ID
apigee/helm/scripts/backup_setup.sh
मेंSSH_PASSWORD
,root
, औरUPLOADER_EXTERNAL_IP
अपडेट करें:sshpass -p SSH_PASSWORD scp -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null apigee-backup* root@UPLOADER_EXTERNAL_IP:/temp/
कहां:
- SSH_PASSWORD, रूट उपयोगकर्ता का पासवर्ड है.
- UPLOADER_EXTERNAL_IP अपलोड करने की सेवा का एक्सटर्नल आईपी पता है, जो पिछले चरण में मिला था.
apigee/helm/scripts/apigee_setup.sh
मेंFLUENTBIT_EXTERNAL_IP
को अपडेट करें:export FLUENTBIT_EXTERNAL_IP=FLUENTBIT_EXTERNAL_IP
- वीएम बंद करें:
gdcloud clusters get-credentials ORG_ADMIN_CLUSTER
export PROJECT=dev-apigee
for i in 1 2 3 4 5; do gdcloud compute instances stop node$i --project $PROJECT done
- Helm चार्ट को फिर से डिप्लॉय करें:
python apigee/solution_deploy.py gdc-air-gapped
- वीएम शुरू करें:
for i in 1 2 3 4 5; do GDCloud compute instances start node$i --project $PROJECT done
apigee/scripts/apigee_org_setup.sh
में यहां दिखाई गई वैल्यू अपडेट करें. ज़रूरत के मुताबिक, अन्य पैरामीटर अपडेट करें.IP1=APIGEE_NODE1_INTERNAL_IP VHOST_ALIAS="APIGEE_NODE2_EXTERNAL_IP:9001 APIGEE_NODE3_EXTERNAL_IP:9001"
कहां:
- APIGEE_NODE1_INTERNAL_IP Apigee के node1 का इंटरनल आईपी पता है. यह हमें पिछले चरण में मिला था.
- APIGEE_NODE2_EXTERNAL_IP Apigee node2 का एक्सटर्नल आईपी पता है, जिसे पिछले चरण में हासिल किया गया था.
- APIGEE_NODE3_EXTERNAL_IP Apigee node3 का एक्सटर्नल आईपी पता है. इसे पिछले चरण में हासिल किया गया था.
- संगठन को शामिल करने के लिए, node1 पर स्क्रिप्ट चलाएं:
chmod a+x apigee_org_setup.sh
./apigee_org_setup.sh
apigee-elb
सेवा का एक्सटर्नल आईपी पता पाएं:gdcloud clusters get-credentials USER_CLUSTER
export PROJECT=dev-apigee
kubectl get svc apigee-elb -n $PROJECT
यहां USER_CLUSTER, उपयोगकर्ता के GKE क्लस्टर का नाम है.
यह सेवा, Edge यूज़र इंटरफ़ेस (यूआई), Management API, और एपीआई प्रॉक्सी के लिए एंडपॉइंट के तौर पर काम करती है.
- APIGEE_ELB_EXTERNAL_IP,
apigee-elb
सेवा का एक्सटर्नल आईपी पता है. यह पता, पिछले चरण में मिला था. - ORG_NAME, Apigee संगठन का नाम है.
- ENV_NAME, Apigee एनवायरमेंट का नाम है.
- Edge UI में लॉग इन करें.
- एपीआई प्रॉक्सी पेज पर, नई एपीआई प्रॉक्सी बनाने के लिए बनाएं पर क्लिक करें.
- प्रॉक्सी की जानकारी पेज पर, ये वैल्यू डालें:
- प्रॉक्सी टाइप: कोई टारगेट नहीं चुनें.
- प्रॉक्सी का नाम:
ok
- बेस पाथ:
/ok
- टारगेट:
http://APIGEE_ELB_EXTERNAL_IP:9001
- एपीआई प्रॉक्सी बनाने के लिए, बनाएं पर क्लिक करें.
/ok
पर एचटीटीपी अनुरोध भेजें:curl -i http://APIGEE_ELB_EXTERNAL_IP:9001/ok
- पुष्टि करें कि जवाब
200 OK
है. - कीस्टोर/ट्रस्टस्टोर और एलियास बनाएं में दिया गया तरीका अपनाकर, इन वैल्यू के साथ एक सेल्फ-साइन्ड सर्टिफ़िकेट बनाएं:
- KeyStore: myTestKeystore
- KeyAlias: myKeyAlias
- सामान्य नाम: apigeetest.com
api.apigeetest.com
नाम का वर्चुअल होस्ट बनाने के लिए, एपीआई कॉल करें:curl -v -H "Content-Type:application/xml" \ -u "opdk@apigee.com:Apigee123!" "http://APIGEE_ELB_EXTERNAL_IP:8080/v1/o/ORG_NAME/e//virtualhosts" \ -d '<VirtualHost name="secure"> <HostAliases> <HostAlias>api.apigeetest.com</HostAlias> </HostAliases> <Interfaces/> <Port>9005</Port> <OCSPStapling>off</OCSPStapling> <SSLInfo> <Enabled>true</Enabled> <ClientAuthEnabled>false</ClientAuthEnabled> <KeyStore>myTestKeystore</KeyStore> <KeyAlias>myKeyAlias</KeyAlias> </SSLInfo> </VirtualHost>'
कहां:
- APIGEE_ELB_EXTERNAL_IP,
apigee-elb
सेवा का एक्सटर्नल आईपी पता है. यह पता, पिछले चरण में मिला था. - ORG_NAME, Apigee संगठन का नाम है.
- ENV_NAME उस Apigee एनवायरमेंट का नाम है जहां वर्चुअल होस्ट बनाया जाना चाहिए.
- APIGEE_ELB_EXTERNAL_IP,
- सुरक्षित वर्चुअल होस्ट का इस्तेमाल करके, एपीआई प्रॉक्सी बनाएं.
- राउटर पर, वर्चुअल होस्ट के लिए डीएनएस रिज़ॉल्यूशन कॉन्फ़िगर करें:
echo '127.0.0.1 api.apigeetest.com' | sudo tee -a /etc/hosts
- पुष्टि करें कि वर्चुअल होस्ट, स्थानीय तौर पर काम करते हैं. इसके लिए, एंडपॉइंट पर एचटीटीपीएस अनुरोध भेजें:
curl https://api.apigeetest.com:9005/ok -v -k
- एंडपॉइंट के लिए डीएनएस रिज़ॉल्यूशन कॉन्फ़िगर करें:
echo 'APIGEE_ELB_EXTERNAL_IP apigeetest.com' | sudo tee -a /etc/hosts
यहां APIGEE_ELB_EXTERNAL_IP,
apigee-elb
सेवा का एक्सटर्नल आईपी पता है, जो पिछले चरण में मिला था. - वेब ब्राउज़र में
https://apigeetest.com/ok
पर जाएं और पुष्टि करें कि यह काम कर रहा है. - एसएसएल सर्टिफ़िकेट फ़ाइल और कुंजी फ़ाइल से कीस्टोर फ़ाइल जनरेट करें:
openssl pkcs12 -export -clcerts -in server.crt -inkey server.key -out keystore.pkcs12
keytool -importkeystore -srckeystore keystore.pkcs12 -srcstoretype pkcs12 -destkeystore keystore.jks -deststoretype jks
- कीस्टोर फ़ाइल को node1 पर Apigee फ़ोल्डर में रखें:
scp -i SSH_PRIVATE_KEY_FILE keystore.jks admin@APIGEE_NODE1_EXTERNAL_IP:/home/admin/
कहां:
- SSH_PRIVATE_KEY_FILE आपकी Apigee नोड की एसएसएच निजी कुंजी वाली फ़ाइल का नाम है.
- APIGEE_NODE1_EXTERNAL_IP Apigee node1 का एक्सटर्नल आईपी पता है. यह हमें पिछले चरण में मिला था.
- node1 से एसएसएच करें और कीस्टोर फ़ाइल को Apigee फ़ोल्डर में ले जाएं:
sudo mv keystore.jks /opt/apigee/customer/application/
- एसएसएल कॉन्फ़िगरेशन फ़ाइल बनाएं:
sudo vi /tmp/sslConfigFile
KEY-PASS-PHRASE
की वैल्यू को इस तरह अपडेट करें:HTTPSPORT=9443 DISABLE_HTTP=n KEY_ALGO=JKS KEY_FILE_PATH=/opt/apigee/customer/application/keystore.jks KEY_PASS=KEY_PASS_PHRASE
- कॉन्फ़िगरेशन फ़ाइल का इस्तेमाल करके एसएसएल कॉन्फ़िगर करें:
sudo chown apigee:apigee /tmp/sslConfigFile
/opt/apigee/apigee-service/bin/apigee-service edge-ui configure-ssl -f /tmp/sslConfigFile
- Edge यूज़र इंटरफ़ेस (यूआई) के लिए डीएनएस रिज़ॉल्यूशन कॉन्फ़िगर करें:
echo 'APIGEE_ELB_EXTERNAL_IP ui.apigeetest.com' | sudo tee -a /etc/hosts
यहां APIGEE_ELB_EXTERNAL_IP,
apigee-elb
सेवा का एक्सटर्नल आईपी पता है, जो पिछले चरण में मिला था. - किसी वेब ब्राउज़र में
https://ui.apigeetest.com:9443
को ऐक्सेस करें और पुष्टि करें कि यह काम कर रहा है. ज़्यादा जानकारी के लिए, गाइड देखें. - कीस्टोर फ़ाइल के लिए मालिक को कॉन्फ़िगर करें (Edge यूज़र इंटरफ़ेस (यूआई) के लिए इस्तेमाल किए गए मालिक का ही इस्तेमाल करें):
sudo chown apigee:apigee /opt/apigee/customer/application/keystore.jks
- प्रॉपर्टी फ़ाइल बनाएं:
sudo vi /opt/apigee/customer/application/management-server.properties
- बदलावों को लागू करने के लिए, मैनेजमेंट सर्वर को रीस्टार्ट करें:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
- पुष्टि करें कि एचटीटीपीएस, स्थानीय तौर पर काम करता है या नहीं:
curl -u "opdk@apigee.com:Apigee123!" "https://localhost:8443/v1/users" -k
- क्लाइंट से, ब्राउज़र में https://apigeetest.com:8443/v1/users को ऐक्सेस करें. एडमिन का उपयोगकर्ता नाम और पासवर्ड डालकर पुष्टि करें कि क्रेडेंशियल सही तरीके से कॉन्फ़िगर किए गए हैं.
GDC के एयर-गैप्ड वर्शन में भूमिकाएं और अनुमतियां देने के बारे में ज़्यादा जानने के लिए, ऐक्सेस देना और रद्द करना लेख पढ़ें.
सीमाएं
GDC एयर-गैप्ड पर Apigee के लिए, ये सीमाएं लागू होती हैं:
ज़रूरी फ़ाइलें पाना
इंस्टॉलेशन फ़ाइलें पाने के लिए, आपको पहले कनेक्ट किया गया नोड सेट अप करना होगा. इसके बाद, फ़ाइलें डाउनलोड करनी होंगी.
कनेक्ट किया गया नोड सेट अप करना
कनेक्ट किया गया नोड, GDC के बाहर का एक ऐसा वीएम होता है जिसका इस्तेमाल इंस्टॉलेशन फ़ाइलें डाउनलोड करने के लिए किया जाता है. इस वीएम को इंटरनेट ऐक्सेस करने की ज़रूरत होती है. इसका इस्तेमाल सिर्फ़ इंस्टॉलेशन प्रोसेस के लिए किया जाता है.
कनेक्ट किए गए नोड के लिए, यह क्षमता और कॉन्फ़िगरेशन ज़रूरी है:
कनेक्ट किया गया नोड बनाने के लिए, वीएम इंस्टेंस बनाएं और शुरू करें में दिए गए निर्देशों का पालन करें. वीएम बनाने के बाद, Linux वीएम से कनेक्ट करना में दिए गए निर्देशों का पालन करें. से कनेक्ट करें. जिन ऑपरेटिंग सिस्टम पर GDC काम करता है उनकी सूची देखने के लिए, GDC के साथ काम करने वाले ऑपरेटिंग सिस्टम देखें.
इंस्टॉलेशन फ़ाइलें डाउनलोड करना
इंस्टॉलेशन फ़ाइलें डाउनलोड करने के लिए:
स्टोरेज बकेट सेट अप करना
इस चरण में, GDC ऑपरेटर, GDC प्रोजेक्ट में एक स्टोरेज बकेट सेट अप करता है. इसमें Apigee Edge for Private Cloud की बैकअप फ़ाइलें सेव की जाती हैं.
स्टोरेज बकेट बनाना
GDC प्रोजेक्ट में स्टोरेज बकेट बनाने के लिए:
बकेट का ऐक्सेस कॉन्फ़िगर करना
स्टोरेज बकेट का ऐक्सेस कॉन्फ़िगर करने के लिए:
रिपॉज़िटरी नोड सेट अप करना
इस चरण में, GDC ऑपरेटर एक रिपॉज़िटरी नोड सेट अप करता है, ताकि Apigee Edge for Private Cloud की मिरर रिपॉज़िटरी को होस्ट किया जा सके.
रिपॉज़िटरी नोड बनाना
रिपॉज़िटरी नोड बनाने के लिए:
रिपॉज़िटरी नोड के ऐक्सेस को कॉन्फ़िगर करना
डेटाबेस नोड को ऐक्सेस करने की सुविधा कॉन्फ़िगर करने के लिए:
इंस्टॉलेशन फ़ाइलें अपलोड करना
इस चरण में, GDC ऑपरेटर इन फ़ाइलों का नया वर्शन, रिपॉज़िटरी नोड पर अपलोड करता है:
इंस्टॉलेशन फ़ाइलें अपलोड करने के लिए:
मिरर रिपॉज़िटरी कॉन्फ़िगर करना
मिरर किए गए डेटाबेस को कॉन्फ़िगर करने के लिए:
Apigee नोड डिप्लॉय करना
इस चरण में, GDC ऑपरेटर Apigee API मैनेजमेंट नोड डिप्लॉय करता है.
Apigee नोड बनाना
Apigee API मैनेजमेंट नोड बनाने के लिए:
Apigee नोड का ऐक्सेस कॉन्फ़िगर करना
Apigee API मैनेजमेंट नोड का ऐक्सेस कॉन्फ़िगर करें:
कंट्रोल नोड सेट अप करना
इस चरण में, GDC ऑपरेटर Apigee इंस्टॉलेशन को मैनेज करने के लिए, कंट्रोल नोड सेट अप करता है.
कंट्रोल नोड बनाना
कंट्रोल नोड बनाने के लिए:
कंट्रोल नोड का ऐक्सेस कॉन्फ़िगर करना
कंट्रोल नोड का ऐक्सेस कॉन्फ़िगर करने के लिए:
Ansible को कॉन्फ़िगर करना
इस चरण में, GDC ऑपरेटर कंट्रोल नोड पर एनवायरमेंट सेट अप करता है.
Ansible एनवायरमेंट को कॉन्फ़िगर करने के लिए:
Apigee के कॉम्पोनेंट इंस्टॉल करना
इस चरण में, GDC ऑपरेटर Ansible का इस्तेमाल करके Apigee कॉम्पोनेंट इंस्टॉल करता है.
Apigee कॉम्पोनेंट इंस्टॉल करने के लिए:
पॉड और सेवाएं डिप्लॉय करना
इस चरण में, आपको अपलोडर, रिवर्स प्रॉक्सी, लोड बैलेंसर, और लॉगिंग पॉड और सेवाओं को डिप्लॉय करना होगा.
पॉड और सेवाएं डिप्लॉय करने के लिए:
अपलोड करने वाले और Fluent Bit फ़ॉरवर्डर के आईपी पते अपडेट करना
इस चरण में, आपको बैकअप और Apigee सेटअप स्क्रिप्ट में, अपलोडर और Fluent Bit फ़ॉरवर्डर के आईपी पते अपडेट करने होंगे.
स्टार्टअप स्क्रिप्ट को अपडेट करने के लिए, Apigee नोड को रीस्टार्ट करना ज़रूरी है. नोड रीस्टार्ट करने के लिए:
Apigee संगठन को शामिल करना
इस चरण में, GDC ऑपरेटर, Apigee संगठन को ऑनबोर्ड करता है. इसके लिए, वह node1 पर सेटअप स्क्रिप्ट चलाता है.
Apigee संगठन को शामिल करने के लिए:
एचटीटीपी कनेक्टिविटी की जांच करना
इस चरण में, Management API और एपीआई प्रॉक्सी के लिए एचटीटीपी कनेक्टिविटी की जांच की जाएगी.
एचटीटीपी कनेक्टिविटी की जांच करने के लिए:
Management API की जांच करना
Management API को आज़माने के लिए, इस एंडपॉइंट पर एचटीटीपी अनुरोध भेजें:
curl -u "opdk@apigee.com:Apigee123!" "http://APIGEE_ELB_EXTERNAL_IP:8080/v1/o/ORG_NAME/e/ENV_NAME/provisioning/axstatus"
कहां:
एपीआई प्रॉक्सी की जांच करना
एपीआई प्रॉक्सी की जांच करने के लिए:
टीएलएस को कॉन्फ़िगर करना और एचटीटीपीएस की जांच करना
इस चरण में, GDC ऑपरेटर, एपीआई प्रॉक्सी, Edge यूज़र इंटरफ़ेस (यूआई), और मैनेजमेंट एपीआई के लिए ट्रांसपोर्ट लेयर सिक्योरिटी (टीएलएस) को कॉन्फ़िगर करता है.
एपीआई प्रॉक्सी के लिए टीएलएस कॉन्फ़िगर करना
Edge यूज़र इंटरफ़ेस (यूआई) के लिए टीएलएस कॉन्फ़िगर करना
Edge यूज़र इंटरफ़ेस (यूआई) के लिए टीएलएस कॉन्फ़िगर करने के लिए:
Management API के लिए टीएलएस कॉन्फ़िगर करना
Management API के लिए टीएलएस कॉन्फ़िगर करने के लिए:
KEY_PASS_PHRASE
की वैल्यू को कीस्टोर के पासवर्ड से बदलें. इसके लिए, यहां दिया गया तरीका अपनाएं:
conf_webserver_ssl.enabled=true # Leave conf_webserver_http.turn.off set to false # because many Edge internal calls use HTTP. conf_webserver_http.turn.off=false conf_webserver_ssl.port=8443 conf_webserver_keystore.path=/opt/apigee/customer/application/keystore.jks # Enter the obfuscated keystore password below. conf_webserver_keystore.password=KEY_PASS_PHRASE