本步驟說明如何下載及安裝 apigeectl、設定安裝目錄,以及建立 Apigee Hybrid 運作所需的 Google Cloud 服務帳戶和 TLS 憑證。
下載並安裝 apigeectl
apigeectl
是指令列介面 (CLI),可用於在 Kubernetes 叢集中安裝及管理 Apigee hybrid。
下列步驟說明如何取得 apigeectl
:
使用下列指令,下載適用於您作業系統的版本套件:
Mac 64 位元:
curl -LO https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.1.1/apigeectl_mac_64.tar.gz
Linux 64 位元:
curl -LO https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.1.1/apigeectl_linux_64.tar.gz
Mac 32 位元:
curl -LO https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.1.1/apigeectl_mac_32.tar.gz
Linux 32 位元:
curl -LO https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/1.1.1/apigeectl_linux_32.tar.gz
- 在系統上建立目錄,做為 Apigee Hybrid 安裝作業的基礎目錄。
-
將下載的 gzip 檔案內容解壓縮至您剛剛建立的基礎目錄。例如:
tar xvzf filename.tar.gz -C path-to-base-directory
- 將目錄變更為基礎目錄。
-
根據預設,tar 內容會解壓縮為名稱中含有版本和平台的目錄。例如:
./apigeectl_1.0.0-f7b96a8_linux_64
。使用下列指令將該目錄重新命名為apigeectl
:mv apigeectl_1.0.0-f7b96a8_linux_64 apigeectl
- 將目錄變更為該目錄。例如:
cd ./apigeectl
這個目錄是
apigeectl
主目錄。這是apigeectl
可執行指令所在的位置。 - 請使用下列指令建立環境變數,以便儲存這個主目錄路徑:
export APIGEECTL_HOME=$PWD
- 使用下列指令確認變數是否包含正確的路徑:
echo $APIGEECTL_HOME
設定專案目錄結構
下方所述的目錄結構是建議的做法。它會將 Apigee Hybrid 發布軟體與您必須建立的設定檔分開。您可以使用所建立的 $APIGEECTL_HOME
變數和符號連結,輕鬆切換至新版軟體。另請參閱「升級 Apigee Hybrid」。
- 請確認您位於基本目錄 (
apigeectl
目錄所在的目錄)。 - 建立名為
hybrid-files
的新資料夾。您可以為目錄命名,但在文件中,我們一律會使用hybrid-files
這個名稱。稍後,您將在這個資料夾中儲存設定檔、服務帳戶金鑰和 TLS 憑證。這個資料夾可讓您將設定檔與apigeectl
軟體安裝作業分開:mkdir hybrid-files
- 目前的目錄結構如下所示:
pwd && ls
/hybrid-base-directory apigeectl hybrid-files - 使用下列指令將目錄變更為
hybrid-files
資料夾:cd hybrid-files
- 在
hybrid-files
目錄中建立下列子目錄,以便整理您稍後使用下列指令建立的檔案:mkdir overrides
mkdir service-accounts
mkdir certs
- 在
hybrid-files
目錄中,建立以下指向$APIGEECTL_HOME
的符號連結。這些連結可讓您從hybrid-files
目錄內執行apigeectl
指令。ln -s
$APIGEECTL_HOME
/tools toolsln -s
$APIGEECTL_HOME
/config configln -s
$APIGEECTL_HOME
/templates templatesln -s
$APIGEECTL_HOME
/plugins plugins - 如要確認符號連結是否正確建立,請執行下列指令,並確認連結路徑指向正確位置:
ls -l | grep ^l
建立服務帳戶
Apigee hybrid 會使用 Google Cloud 服務帳戶,讓混合式元件透過已授權的 API 呼叫進行通訊。在這個步驟中,您會使用 Apigee 混合指令列工具建立一組服務帳戶。這項工具也會為您下載服務帳戶私密金鑰。接著,您必須將這些鍵新增至 Apigee 混合叢集設定檔。
建立金鑰:
- 請確認您位於
base_directory/hybrid-files
目錄。 - 請在
hybrid-files
目錄中執行下列指令。這個指令會為apigee-metrics
元件建立服務帳戶,並將下載的金鑰放在./service-accounts
目錄中。./tools/create-service-account apigee-metrics ./service-accounts
看到下列提示時,請輸入 y:
[INFO]: gcloud configured project ID is project_id. Press: y to proceed with creating service account in project: project_id Press: n to abort.
如果這是第一次建立工具指派的確切名稱 SA,則工具只會建立 SA,您不必再採取任何行動。
不過,如果您看到下列訊息和提示,請輸入 y 來產生新的金鑰:
[INFO]: Service account apigee-metrics@project_id.iam.gserviceaccount.com already exists. ... [INFO]: The service account might have keys associated with it. It is recommended to use existing keys. Press: y to generate new keys.(this does not de-activate existing keys) Press: n to skip generating new keys.
- 接著,請使用下列指令建立其他服務帳戶:
./tools/create-service-account apigee-synchronizer ./service-accounts
./tools/create-service-account apigee-udca ./service-accounts
./tools/create-service-account apigee-mart ./service-accounts
./tools/create-service-account apigee-cassandra ./service-accounts
./tools/create-service-account apigee-logger ./service-accounts
- 確認服務帳戶金鑰已建立。您必須妥善儲存這些私密金鑰。鍵檔案名稱的前面會加上 Google Cloud 專案名稱。例如:
ls ./service-accounts gcp-project-id-apigee-cassandra.json gcp-project-id-apigee-logger.json gcp-project-id-apigee-mart.json gcp-project-id-apigee-metrics.json gcp-project-id-apigee-synchronizer.json gcp-project-id-apigee-udca.json
建立傳輸層安全標準 (TLS) 憑證
您必須為 Apigee Hybrid 設定中的 MART 和執行階段入口網關提供 TLS 憑證。用於 MART 閘道的憑證「必須」經過憑證授權單位 (CA) 授權。為了讓這個快速入門 (非實際工作環境的試用安裝) 順利進行,執行階段閘道可接受自行簽署的憑證。
在這個步驟中,您將建立 TLS 憑證檔案,並將這些檔案新增至 base_directory/hybrid-files/certs
目錄。在步驟 3:設定叢集中,您將在叢集設定檔中新增檔案路徑。
為執行階段閘道建立 TLS 憑證
執行階段入口網關 (處理 API Proxy 流量的網關) 需要 TLS 憑證/金鑰組合。在本快速入門安裝程序中,您可以使用自行簽署的憑證。在下列步驟中,我們會使用 openssl 產生憑證。
- 請確認您位於
base_directory/hybrid-files
目錄。 - 使用下列指令,從
hybrid-files
目錄內執行下列指令:openssl req -nodes -new -x509 -keyout ./certs/keystore.key -out \ ./certs/keystore.pem -subj '/CN=mydomain.net' -days 3650
這項指令會建立自行簽署的憑證/金鑰組,可用於快速入門安裝作業。CN
mydomain.net
可以是您想要的任何值,用於自行簽署的憑證。 - 使用下列指令,確認檔案是否位於
./certs
目錄中:ls ./certs
keystore.pem keystore.key其中
keystore.pem
是自行簽署的 TLS 憑證檔案,而keystore.key
則是金鑰檔案。
為 MART 閘道建立 TLS 憑證
如事前準備一節所述,您必須為 MART 閘道設定使用經過授權的 TLS 憑證/金鑰組合。如果您尚未取得或建立這些憑證,請立即取得或建立。
- 取得或建立由憑證授權單位授權的 TLS 憑證/金鑰組。我們提供範例,說明如何使用 Let's Encrypt CA 取得這些憑證。請注意,憑證的共用名稱 (CN) 必須是有效的 DNS 名稱。如需範例步驟,請參閱「取得傳輸層安全標準 (TLS) 憑證:範例」。
- 將憑證複製到
base_directory/hybrid-files/certs
目錄。 - 完成後,
./certs
目錄中應會出現兩組憑證檔案。例如:ls ./certs
fullchain.pem privkey.key keystore.pem keystore.key其中
fullchain.pem
是授權的 TLS 憑證檔案,privkey.key
則是授權金鑰檔案。
摘要
您現在有了起點,可在 Kubernetes 叢集中設定、部署及管理 Apigee Hybrid。接下來,您將建立 Kubernetes 用來將混合式執行階段元件部署至叢集的檔案。
1 2 (NEXT) 步驟 3:設定叢集 4