在 Oracle Container Engine for Kubernetes (OKE) 上安裝主機代理程式
有不同的方法可將 instana 代理程式安裝至 Kubernetes 叢集。 雖然直接在主機上手動安裝代理程式,將會在該主機上執行監視儲存器及處理程序的工作,但它將無法收集 Kubernetes 資料。
安裝
建議透過 Helm 圖表來安裝代理程式。 若要執行手動安裝,請遵循一般 Kubernetes 安裝的步驟。
在 Oracle Container Engine for Kubernetes (OKE) 上建立 Kubernetes 叢集時,有一個用來安裝 Helm 的選項稱為 Tiller (Helm) Enabled; 如需在 OKE 上使用 Helm 的相關資訊,請參閱 建立 Kubernetes 叢集 OKE 文件。
檢查叢集上安裝的 Helm 版本,以及工作站上安裝的版本。
helm version
如果新建立的 Kubernetes 叢集上安裝的 Helm 版本比工作站上安裝的 Helm 版本舊,請將它更新為:
helm init --upgrade
將 Instana Helm 圖表 複製到工作站。
git clone https://github.com/instana/helm-charts
將複製的目錄設為工作目錄。
cd helm-charts/stable/instana_agent
從 Instana 使用者介面上的資訊看板中,按一下 設定 。 選取 安裝代理程式,然後從 Docker 型畫面中記下唯一代理程式金鑰及代理程式端點。 現在編輯 values.yaml 並放入那些值。
image:
name: icr.io/instana/agent
tag: latest
pullPolicy: IfNotPresent
rbac:
create: true
instana:
zone: Oracle-OKE
leaderElectorPort: 42655
agent:
key: <your unique key here>
name: instana-agent
endpoint:
host: <regional endpoint here>
port: 443
## Annotations to be added to pods
podAnnotations: {}
最後使用 helm 來安裝:
helm install --name instana-agent --namespace instana-agent .
檢查主機代理程式的狀態
安裝主機代理程式之後,您可以在 Instana 使用者介面或主機上檢查主機代理程式的狀態。 如需相關資訊,請參閱 檢查主機代理程式的狀態。
配置受監視應用程式的網路存取權
下列類型的應用程式需要先聯繫代理程式:
- Node.js
- Go
- Ruby
- Python
- .NET Core
在上述執行時期撰寫的應用程式需要知道主機代理程式在同一 Kubernetes 節點上接聽的 IP。 由於代理程式會自動在主機 IP 上接聽,請使用下列 向下 API Snippet ,將環境變數中主機代理程式的 IP 位址傳遞至應用程式 Pod:
spec:
containers:
env:
- name: INSTANA_AGENT_HOST
valueFrom:
fieldRef:
fieldPath: status.hostIP