Kubernetes環境でのDatadog AgentからのIstioエラーについて
環境及び構築手順
Amazon EKSで稼働させています。環境情報や構築手順は以下ページと同様です。
Istioの導入は以下を参考にしました。
事象
全てエラー内容は同じです。
Datadog Agent(のコンテナ)がエラーを出力する
"log": "2021-06-14 11:33:16 UTC | CORE | ERROR | (pkg/collector/runner/runner.go:301 in work) | Error running check istio: [{\"message\": \"Detected 1 error while loading configuration model `InstanceConfig`:\\nmetrics -> 1\\n str type expected\", \"traceback\": \"Traceback (most recent call last):\\n File \\\"/opt/datadog-agent/embedded/lib/python3.8/site-packages/datadog_checks/base/checks/base.py\\\", line 971, in run\\n initialization()\\n File \\\"/opt/datadog-agent/embedded/lib/python3.8/site-packages/datadog_checks/base/checks/base.py\\\", line 396, in load_configuration_models\\n instance_config = self.load_configuration_model(package_path, 'InstanceConfig', raw_instance_config)\\n File \\\"/opt/datadog-agent/embedded/lib/python3.8/site-packages/datadog_checks/base/checks/base.py\\\", line 436, in load_configuration_model\\n raise_from(ConfigurationError('\\\\n'.join(message_lines)), None)\\n File \\\"<string>\\\", line 3, in raise_from\\ndatadog_checks.base.errors.ConfigurationError: Detected 1 error while loading configuration model `InstanceConfig`:\\nmetrics -> 1\\n str type expected\\n\"}]\n"
DatadogサイトのInfrastructure Listの対象ホストにintegration issue
が表示される
Datadog has detected 1 integration with issues:
Datadog’s istio integration is reporting:
・Instance #istio:8a41704874d07a5d[ERROR]: [{"message": "Detected 1 error while loading configuration model `InstanceConfig`:\nmetrics -> 1\n str type expected", "traceback": "Traceback (most recent call last):\n File \"/opt/datadog-agent/embedded/lib/python3.8/site-packages/datadog_checks/base/checks/base.py\", line 971, in run\n initialization()\n File \"/opt/datadog-agent/embedded/lib/python3.8/site-packages/datadog_checks/base/checks/base.py\", line 396, in load_configuration_models\n instance_config = self.load_configuration_model(package_path, 'InstanceConfig', raw_instance_config)\n File \"/opt/datadog-agent/embedded/lib/python3.8/site-packages/datadog_checks/base/checks/base.py\", line 436, in load_configuration_model\n raise_from(ConfigurationError('\\n'.join(message_lines)), None)\n File \"<string>\", line 3, in raise_from\ndatadog_checks.base.errors.ConfigurationError: Detected 1 error while loading configuration model `InstanceConfig`:\nmetrics -> 1\n str type expected\n"}]
原因
Agent v7.28.1に含まれる Istioインテグレーション v3.11.0で、下記エラーが出力される原因となるバグが存在しておりました。
2021/06/23 Datadogサポート回答より
Error: Detected 1 error while loading configuration model `InstanceConfig`:
metrics -> 1
str type expected
Traceback (most recent call last):
File "/opt/datadog-agent/embedded/lib/python3.8/site-packages/datadog_checks/base/checks/base.py", line 971, in run
initialization()
File "/opt/datadog-agent/embedded/lib/python3.8/site-packages/datadog_checks/base/checks/base.py", line 396, in load_configuration_models
instance_config = self.load_configuration_model(package_path, 'InstanceConfig', raw_instance_config)
File "/opt/datadog-agent/embedded/lib/python3.8/site-packages/datadog_checks/base/checks/base.py", line 436, in load_configuration_model
raise_from(ConfigurationError('\n'.join(message_lines)), None)
File "<string>", line 3, in raise_from
datadog_checks.base.errors.ConfigurationError: Detected 1 error while loading configuration model `InstanceConfig`:
metrics -> 1
str type expected
Agent v7.28.1に含まれる Istioインテグレーション v3.11.0で、下記エラーが出力される原因となるバグが存在しておりました。
2021/06/23 Datadogサポート回答より
Error: Detected 1 error while loading configuration model `InstanceConfig`:
metrics -> 1
str type expected
Traceback (most recent call last):
File "/opt/datadog-agent/embedded/lib/python3.8/site-packages/datadog_checks/base/checks/base.py", line 971, in run
initialization()
File "/opt/datadog-agent/embedded/lib/python3.8/site-packages/datadog_checks/base/checks/base.py", line 396, in load_configuration_models
instance_config = self.load_configuration_model(package_path, 'InstanceConfig', raw_instance_config)
File "/opt/datadog-agent/embedded/lib/python3.8/site-packages/datadog_checks/base/checks/base.py", line 436, in load_configuration_model
raise_from(ConfigurationError('\n'.join(message_lines)), None)
File "<string>", line 3, in raise_from
datadog_checks.base.errors.ConfigurationError: Detected 1 error while loading configuration model `InstanceConfig`:
metrics -> 1
str type expected
Istioインテグレーション v3.11.0が問題との事なので、Istio IntegrationのCHANGELOGを見る限り、Agent v7.28.0から発生するようです。
修正予定バージョン
この修正は、Istio Integration v3.12.0 / Agent v7.29.0に含まれる予定となっております。
2021/06/23 Datadogサポート回答より
回避策
Istio Integrationが必要な場合
v7.29.0がリリースされるまでの間、v7.27.0にダウングレードします。
(チャートのAgentバージョン指定箇所を変更してhelm upgrade
)
# agents.image.tag -- Define the Agent version to use
## Use 7-jmx to enable jmx fetch collection
- tag: 7.28.1
+ tag: 7.27.0
Istio Integrationが不要の場合
values.yamlのignoreAutoConfigにistioを追加し、auto_conf.yamlを無視するように設定します。
(チャートのignoreAutoConfig指定箇所に追記してhelm upgrade
)
# datadog.ignoreAutoConfig -- List of integration to ignore auto_conf.yaml.
## ref: https://docs.datadoghq.com/agent/faq/auto_conf/
- ignoreAutoConfig: []
+ ignoreAutoConfig:
+ - istio
# - redisdb
# - kubernetes_state
Datadog Agentをhelm以外でインストールしている場合
dd-agentコマンドを使用してIstioインテグレーションに変更を加えます。
Istio Integrationが必要な場合
インテグレーションのinstallコマンドを使用して、Istio Integrationを修正の含まれるv3.12.0にアップグレードします。
sudo -u dd-agent -- datadog-agent integration install datadog-istio==3.12.0
"%PROGRAMFILES%\Datadog\Datadog Agent\embedded\agent.exe" integration install datadog-istio==3.12.0
Istio Integrationが不要の場合
インテグレーションのremoveコマンドを使用して、Istio Integrationを削除します。
sudo -u dd-agent -- datadog-agent integration remove datadog-istio
"%PROGRAMFILES%\Datadog\Datadog Agent\embedded\agent.exe" integration show datadog-istio
おまけ
まだリリースは無いですが既にv7.29.0でタグだけは付いているようです。
https://github.com/DataDog/datadog-agent/releases/tag/7.29.0
ただし、2021/06/24現時点で7.29.0を指定してhelmから起動してもImagePullBackOff
になります。
Author And Source
この問題について(Kubernetes環境でのDatadog AgentからのIstioエラーについて), 我々は、より多くの情報をここで見つけました https://qiita.com/hiren/items/e62c0041f4d2df324980著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .