在 Docker
您可以在 Docker 上配置 Instana 後端,如下所示:
- 建立 settings.hcl 檔的範本
- 預設配置
- 資料目錄
- 資料儲存庫認證
- 資料保留
- 通知伺服器設定
- Proxy 設定
- Docker 儲存庫設定
- OAuth 設定
- 一般使用者監視 (EUM) 設定
- 啟用 HSTS
- 產生 REST API 用戶端
- 取代現有憑證
- Webhook 或郵件整合的自訂憑證
建立 settings.hcl 檔的範本
在安裝程序期間會產生 settings.hcl 檔案。
必要的話,請執行指令 instana settings template ,以建立具有預設 (空白) 值的 settings.hcl 檔。
預設配置
在安裝期間,會移入下列參數的值。
type = "single"
profile = "normal"
tenant = "<Your-tenancy-identifier>"
unit = "<Your-backend-identifier>"
agent_key = "<Your-agent-key>"
sales_key = "<Your-sales-key>"
host_name = "<The-FQDN-of-the-machine-the-backend-is-installed-on>"
token_secret = "<max_12_digits>"
cert {
crt = "<Path-to-your-signed-certificate>"
key = "<Path-to-your-private-key-file>"
}
資料目錄
Instana 預設為下列目錄結構。
dir {
metrics = "/mnt/metrics"
traces = "/mnt/traces"
data = "/mnt/data"
logs = "/var/log/instana"
}
| 目錄 | 說明 | 類型 |
|---|---|---|
| 度量值 | Cassandra 建立其資料目錄的上層目錄。 建議您將目錄放置在具有專用磁碟 (/mnt/metrics) 的高 IO 裝置上。 |
字串 |
| 追蹤 | Clickhouse 建立其資料目錄的上層目錄。 建議您將目錄放置在具有專用磁碟 (/mnt/traces) 的高 IO 裝置上。 |
字串 |
| 日期 | Instana 和協力廠商元件儲存資料的上層目錄。 | 字串 |
| 日誌 | Instana 堆疊中所有元件在其中建立日誌檔的上層目錄。 | 字串 |
資料儲存庫認證
所有資料儲存庫都需要鑑別。 認證的配置是選用的。 最初會產生未指定的認證,並新增至 settings.hcl 檔案。 可以透過在 settings.hcl 檔案中更新密碼來變更密碼。 執行 instana update會套用變更。
附註: 只能變更密碼,使用者已修正且無法變更。
...
datastore "cassandra" {
user = "cassandra"
password = "SECURE_PASS"
}
datastore "elasticsearch" {
user = "elastic"
password = "SECURE_PASS"
}
datastore "kafka" {
user = "kafka"
password = "SECURE_PASS"
}
datastore "clickhouse" {
user = "clickhouse"
password = "SECURE_PASS"
}
datastore "postgres" {
user = "postgres"
password = "SECURE_PASS"
}
datastore "aggregator" {
user = "aggregator"
password = "SECURE_PASS"
}
...
特殊案例多主機
對於多主機設定,請務必注意,不會在 Instana 主機上自動建立 Clickhouse 認證,因為它們必須符合 Clickhouse 主機的值。 只需將 Clickhouse 認證區塊從 Clickhouse 主機複製到 Instana 主機的 settings.hcl 檔案。
資料保留
用於基礎架構及平台監視的資料保留
在安裝期間會計算下列資料保留參數。 值零會告知系統不要捨棄此時間跨距的累積更新。 較小累積更新的零值可能會導致磁碟快速填滿。
retention {
metric_roll_up_5 = 86400
metric_roll_up_60 = 2678400
metric_roll_up_300 = 8035200
metric_roll_up_3600 = 34214400
}
啟用 BeeInstana Metric Pipeline (測試版) 時,您可以配置儲存在 BeeInstana 資料儲存庫中的度量值保留。 請參閱下列範例:
env_var "FLAGS_retention_10s"{
value="86400"
}
env_var "FLAGS_retention_60s"{
value="2678400"
}
env_var "FLAGS_retention_300s"{
value="8035200"
}
env_var "FLAGS_retention_3600s"{
value="34214400"
}
| 保留 | 說明 | 類型 |
|---|---|---|
metric_roll_up_5 |
5 秒累積更新可用的持續時間 (以秒為單位)。 | int |
metric_roll_up_60 |
1 分鐘累積更新可用的持續時間 (以秒為單位)。 | int |
metric_roll_up_300 |
5 分鐘累積更新可用的持續時間 (以秒為單位)。 | int |
metric_roll_up_3600 |
1 小時累積更新可用的持續時間 (以秒為單位)。 | int |
FLAGS_retention_10s |
保留儲存在 BeeInstana 中的 10 秒度量資料的持續時間 (以秒為單位)。 | int |
FLAGS_retention_60s |
保留儲存在 BeeInstana 中的 60 秒度量資料的持續時間 (以秒為單位)。 | int |
FLAGS_retention_300s |
儲存在 BeeInstana 中的 5 分鐘度量資料保留的持續時間 (以秒為單位)。 | int |
FLAGS_retention_3600s |
保留儲存在 BeeInstana 中的 1 小時度量資料的持續時間 (以秒為單位)。 | int |
附註: 圖表精度僅根據所選時間範圍的大小來決定。 這表示變更度量資料保留不會影響 Instana 儀表板中所顯示度量資料的精度。 這些度量保留內容僅供參考,不應變更。
應用程式視景及一般使用者監視的資料保留
應用程式視景 及 一般使用者監視 會共用資料保留參數:
retention {
app_data_short_term = 7
}
| 保留 | 說明 | 類型 |
|---|---|---|
app_data_short_term |
保留天數。 | int |
變更 app_data_short_term 欄位只能影響新的 應用程式視景 資料。
附註: 只有大於或等於 7 天的值才有效。 小於 7 的值會導致整個系統失敗。
請參閱下列範例:
app_data_short_term從 7 天變更為 14 天: 如果舊資料超過 7 天,則會刪除舊資料; 如果新資料超過 14 天,則會刪除新資料。app_data_short_term從 14 天變更為 7 天: 如果舊資料超過 14 天,則會刪除舊資料; 如果新資料超過 7 天,則會刪除新資料。
變更 app_data_short_term 欄位會立即影響新舊 一般使用者監視資料。
請參閱下列範例:
app_data_short_term從 7 天變更為 14 天: 如果舊資料和新資料已存在 14 天,則會予以刪除。app_data_short_term從 14 天變更為 7 天: 如果舊資料和新資料已存在 7 天,則會予以刪除。
在保留期間之後,部分資料會保留 13 個月。
通知伺服器設定
請參閱下列設定:
email {
smtp {
from = "notif@acmecorp.com"
host = "relay-1.acme.internal"
port = 25
user = "ops-notif@acmecorp.com"
password = "yUnoEm41l"
use_ssl = true
start_tls = false
}
}
| 參數 | 說明 | 類型 |
|---|---|---|
from |
通知電子郵件中的寄件者電子郵件位址。 | 字串 |
host |
傳送通知電子郵件的 SMTP 伺服器位址或主機名稱。 | 字串 |
port |
傳送通知電子郵件之 SMTP 伺服器的埠。 | int |
user |
傳送通知電子郵件之 SMTP 伺服器的使用者名稱。 | 字串 |
password |
傳送通知電子郵件之 SMTP 伺服器的密碼。 | 字串 |
use_ssl |
指出是否使用 SSL 來與傳送通知電子郵件的 SMTP 伺服器交談。 | bool |
start_tls |
指出是否使用 SSL 來與傳送通知電子郵件的 SMTP 伺服器交談。 | bool |
Proxy 設定
請參閱下列設定:
proxy {
host = "10.9.4.13"
port = 8080
user = "anonymous"
password = "P4ssword1234"
}
| 參數 | 說明 | 類型 |
|---|---|---|
host |
如果後端伺服器使用 Proxy 伺服器與叢集外部網際網路進行通訊,請輸入 Proxy 位址或主機名稱。 | 字串 |
port |
要與 Proxy 伺服器交談的埠。 | int |
user |
Proxy 伺服器的使用者名稱。 | 字串 |
password |
Proxy 伺服器的密碼。 | 字串 |
Docker 儲存庫設定
請參閱下列設定:
docker_repository {
base_url = "my.mirror.internal/v2/artifact-public.instana.io"
username = "user"
password = "pass"
}
| 參數 | 說明 | 類型 |
|---|---|---|
base_url |
鏡映儲存庫的基本 URL ,視您的標籤而定。 | 字串 |
username |
儲存庫伺服器的使用者名稱。 | 字串 |
password |
儲存庫伺服器的密碼。 | 字串 |
OAuth 設定
請參閱下列設定:
o_auth {
client_id = "123456-1n574n4adgjlmnop.apps.googleusercontent.com"
client_secret = "XNLV-fpf_deadBeEf1234"
}
| 參數 | 說明 | 類型 |
|---|---|---|
client_id |
Google oauth 認證的用戶端 ID。 | 字串 |
client_secret |
Google oauth 認證的用戶端密碼。 | 字串 |
一般使用者監視 (EUM) 設定
請參閱下列設定:
eum {
tracking_base_url = "https://mobile.acmecorp.com/eum/"
}
| 參數 | 說明 | 類型 |
|---|---|---|
tracking_base_url |
在其下發佈一般使用者監視汲取端點的 URL。 此配置不會影響資料吸收或處理。 相反地,它是用來在 Instana 使用者介面內呈現正確的 JavaScript 及行動式應用程式代理程式安裝指示。 如需相關資訊,請參閱專用 自行管理/內部部署一般使用者監視文件。 | 字串 |
啟用 HSTS
若要廣域啟用 HSTS ,請在 settings.hcl 檔案的根目錄中新增下列旗標:
hsts_enabled = true
產生 REST API 用戶端
本端開放式 API 規格的 URL 是 https://{onpremhost}/docs/openapi (在內部部署 170 版之後)。 如需如何配置 REST API 用戶端的詳細資訊,請參閱 Web REST API 文件。
取代現有憑證
若要將現有憑證取代為其他憑證,請更新 settings.hcl 檔案中憑證檔案的路徑。 然後,必須執行 instana update -f /path/to/settings.hcl指令來更新系統。
cert {
crt = "/mnt/cert/tls.crt"
key = "/mnt/cert/tls.key"
}
Webhook 或郵件整合的自訂憑證
如果 Instana 無法驗證 SMTP 伺服器呈現的憑證,您可能會看到下列 TLS 錯誤:
ERROR c.i.email.service.client.JavaMail - Mail could not be send due to an error
javax.mail.MessagingException: Could not convert socket to TLS
若要配置 Instana 安裝,以使用自訂憑證順利將資料傳送至 Webhook ,您可以提供自訂 Java™ 金鑰儲存庫 (jssecacerts) ,其中包含 JVM 的憑證。
- 從 JVM
$JAVA_HOME/lib/security/cacerts複製現行 JVM 金鑰儲存庫。 - 使用 JVM keytool 搭配下列指令,將自訂憑證匯入此金鑰儲存庫:
$JAVA_HOME/bin/keytool -importcert -file custom-crt.crt -alias instana.com -keystore cacerts -storepass changeit ```3. Now you must add the absolute path of the keystore by using the configuration key `custom_keystore` in the `settings.hcl` file. ``` {: codeblock} custom_keystore="<path_to_javakeystore>"