From 192d8a15dcbf9e34a3df8fab94fc9fe084c32683 Mon Sep 17 00:00:00 2001 From: svc-docs-eng-opensource-bot Date: Sat, 26 Oct 2024 12:04:53 +0000 Subject: [PATCH 1/3] chore: add translations --- .../installation/k8s-agent-operator.mdx | 576 +++++++++++------- .../advanced/ktranslate-container-health.mdx | 2 +- ...redentials-scripted-browsers-api-tests.mdx | 103 +--- .../nerdgraph-synthetics-tutorial.mdx | 10 +- ...ompatibility-requirements-nodejs-agent.mdx | 2 +- ...ration-tool-build-your-own-integration.mdx | 14 +- .../installation/k8s-agent-operator.mdx | 576 +++++++++++------- .../advanced/ktranslate-container-health.mdx | 2 +- ...redentials-scripted-browsers-api-tests.mdx | 105 ++-- .../advanced/ktranslate-container-health.mdx | 2 +- 10 files changed, 820 insertions(+), 572 deletions(-) diff --git a/src/i18n/content/jp/docs/kubernetes-pixie/kubernetes-integration/installation/k8s-agent-operator.mdx b/src/i18n/content/jp/docs/kubernetes-pixie/kubernetes-integration/installation/k8s-agent-operator.mdx index 312ebd28a6a..444dd924576 100644 --- a/src/i18n/content/jp/docs/kubernetes-pixie/kubernetes-integration/installation/k8s-agent-operator.mdx +++ b/src/i18n/content/jp/docs/kubernetes-pixie/kubernetes-integration/installation/k8s-agent-operator.mdx @@ -1,10 +1,11 @@ --- -title: Kubernetes エージェント オペレーター +title: Kubernetes APM Auto-attach (former agent operator) tags: - Integrations - Kubernetes integration - Agent Operator -metaDescription: Learn how to use the Kubernetes agent operator to automatically manage your APM agents. + - APM Auto-attach +metaDescription: Learn how to use the Kubernetes APM Auto-attach to automatically manage your APM agents. freshnessValidatedDate: '2024-06-28T00:00:00.000Z' translationType: machine --- @@ -15,9 +16,19 @@ translationType: machine この機能は現在、弊社の[プレリリース ポリシー](/docs/licenses/license-information/referenced-policies/new-relic-pre-release-policy)に従ってプレビュー プログラムの一部として提供されています。 -Kubernetesエージェント オペレーターは、 Kubernetesエージェント とともにAPMインストゥルメントを自動化することで、 Kubernetes環境のフルスタックの可用性を合理化します。 APM自動インストゥルメンテーションを有効にすると、開発者は[APMエージェント](/docs/apm/new-relic-apm/getting-started/introduction-apm/)を手動で管理する必要がなくなります。 Kubernetesエージェント オペレーターは、 APMエージェントを自動的にインストール、アップグレード、削除します。 +The Kubernetes APM Auto-attach streamlines full-stack observability for Kubernetes environments by automating APM instrumentation alongside Kubernetes agent deployment. By enabling auto instrumentation, developers no longer need to manually manage [APM agents](/docs/apm/new-relic-apm/getting-started/introduction-apm/). The Kubernetes APM Auto-attach will automatically install, upgrade and remove APM agents. -現在、Java、.NET、Node.js[をサポートしています](#k8s-supported-versions)。 Python、Ruby に加え、追加言語 (PHP および Go) も開発中です。 EKS および AMD ノードを実行するオンプレミス クラスターでテストされています。 +現在、Java、.NET、Node.js[をサポートしています](#k8s-supported-versions)。 Python、Ruby に加え、追加言語 (PHP および Go) も開発中です。 + +## 使い方 [#how-it-works] + +* The `MutatingWebHook`, upon installation, becomes involved in intercepting API requests for deploying pods onto nodes. + +* Reflecting the configurations specified, it mutates the pod specification to add a NR init container and environment variables. + +* Following the establishment of the pod, the New Relic APM Agent is seamlessly integrated into the application housed within it. + +Diagram showing how APM agents are auto injected ## あなたが始める前に [#before-begin] @@ -27,21 +38,19 @@ Kubernetesエージェント オペレーターは、 Kubernetesエージェン * [Kubectl](https://kubernetes.io/docs/tasks/tools/) : クラスターと通信するように設定する必要があります。 -## Kubernetesエージェントオペレーターのインストレーション [#install-k8s-operator] +## インストール [#install-k8s-operator] -ニーズに応じて、エージェント オペレーターを単独でインストールするか、K8s インテグレーションと一緒にインストールするかを選択できます。 +Depending on what you need, you can choose to install the Kubernetes APM Auto-attach independently or together with our K8s integrations. [フルスタックのサバビリティエクスペリエンス](/docs/apm/apm-ui-pages/monitoring/kubernetes-summary-page/) 全体を活用するには、Kubernetes インテグレーションと一緒にインストールすることを強くお勧めします。 ### Kubernetesインテグレーションに加えてインストレーションをバンドルする(推奨) [#bundle-installation] -Kubernetesエージェント オペレーター チャートは、 完全な可用性を実現するために必要なすべてのコンポーネントのインストレーションを管理する[ nri-bundle](https://github.com/newrelic/helm-charts/tree/master/charts/nri-bundle)Kubernetes チャートの一部として統合されています。 +The Kubernetes APM Auto-attach chart is part of the [`nri-bundle`](https://github.com/newrelic/helm-charts/tree/master/charts/nri-bundle) chart, which manages the installation of all the components needed to enable a full Kubernetes observability. -`k8s-agents-operator.enabled=true`引数を helm コマンドに追加するか、 [`values.yaml`](https://github.com/newrelic/helm-charts/blob/master/charts/nri-bundle/values.yaml)ファイルに含めます。 +Add the `k8s-agents-operator.enabled=true` parameter to your helm command or include it in the [`values.yaml`](https://github.com/newrelic/helm-charts/blob/master/charts/nri-bundle/values.yaml) file. See the [Install the Kubernetes integration](/install/kubernetes/?dropdown1=helm) page for more information about using Helm or check out the [`nri-bundle`](https://github.com/newrelic/helm-charts/tree/master/charts/nri-bundle) chart. -Helm の使用に関する詳細については[、 Kubernetesインテグレーションのインストール」](/install/kubernetes/?dropdown1=helm)ページを参照するか、 [nri-bundle](https://github.com/newrelic/helm-charts/tree/master/charts/nri-bundle)チャートを確認してください。 - -インスタンスを使用した Helm コマンドのサンプルを参照してください。 +See this sample of Helm commands using parameters: ```shell helm repo add newrelic https://helm-charts.newrelic.com @@ -60,7 +69,7 @@ helm upgrade --install newrelic-bundle newrelic/nri-bundle \ ### スタンドアロン インストール [#standalone-installation] -Kubernetesエージェント オペレーターをデフォルト設定でインストールするには、次のコマンドを実行します。 +To install the Kubernetes APM Auto-attach with the default configuration, run these commands: ```shell helm repo add k8s-agents-operator https://newrelic.github.io/k8s-agents-operator @@ -72,233 +81,356 @@ helm upgrade --install k8s-agents-operator k8s-agents-operator/k8s-agents-operat 設定オプションの完全なリストについては、 [README](https://github.com/newrelic/k8s-agents-operator/tree/main/charts/k8s-agents-operator#values)チャートを参照してください。 -## モニターネームスペース [#monitored-namespaces] +## 自動計装を構成する [#configure-auto-instrumentation] -Kubernetesシークレットは、オペレーターのネームスペースから、ポッドを監視するすべてのネームスペースに自動的に複製されます。 CRD YAML ファイル内で、計装するAPMエージェントを指定します。 利用可能なすべてのAPMエージェントdockerイメージと対応するタグは、DockerHub にリストされています。 +After APM Auto-attach is all set up in your cluster, the next step is just to roll out the configs required to get it operational. That involves having at least one instrumentation Custom Resource (CR) active in the cluster. -* [Java](https://hub.docker.com/repository/docker/newrelic/newrelic-java-init/general) -* [ノード](https://hub.docker.com/repository/docker/newrelic/newrelic-node-init/general) -* [Python](https://hub.docker.com/repository/docker/newrelic/newrelic-python-init/general) -* [.NET](https://hub.docker.com/repository/docker/newrelic/newrelic-dotnet-init/general) -* [Ruby](https://hub.docker.com/repository/docker/newrelic/newrelic-ruby-init/general) +Here's what the instrumentation CR lets you map out: -.NET の場合: +* Name of the instrumentation CR +* Where it will apply the instrumentation CR (thanks to `podLabelSelector` and `namespaceLabelSelector`) +* APM agent (one per CR) +* APM agent version +* APM config parameters (env vars) +* License key (optional) -```yaml -apiVersion: newrelic.com/v1alpha2 -kind: Instrumentation -metadata: - name: newrelic-instrumentation-dotnet -spec: - agent: - language: dotnet - image: newrelic/newrelic-dotnet-init:latest - # env: ... +The manifest file needs to injected in the same namespace (`newrelic` by default) where you installed APM auto-attach. + +```bash +kubectl apply -f ./values.yaml -n newrelic ``` -Javaの場合: +### How to use selectors [#selectors] -```yaml -apiVersion: newrelic.com/v1alpha2 -kind: Instrumentation -metadata: - name: newrelic-instrumentation-java - namespace: newrelic -spec: - agent: - language: java - image: newrelic/newrelic-java-init:latest - # env: ... -``` +To know when the instrumentation CR is going to inject APM agents, we need to use selectors. There are 2 label selectors available that you can use together (they act as a logical AND (&&) operator) or by separate depending on your needs. -Node.jsの場合: +* `PodLabelSelector` informs the APM Auto-attach which pods needs to be instrumented. -```yaml -apiVersion: newrelic.com/v1alpha2 -kind: Instrumentation -metadata: - name: newrelic-instrumentation-nodejs - namespace: newrelic -spec: - agent: - language: nodejs - image: newrelic/newrelic-node-init:latest - # env: ... -``` + Example using `matchLabel` (select pods containing an specific tag and value): -Pythonの場合: + ```yaml + ... + podLabelSelector:r43 + matchLabels: + app.kubernetes.io/name: flask-hello-world + ... + ``` -```yaml -apiVersion: newrelic.com/v1alpha2 -kind: Instrumentation -metadata: - name: newrelic-instrumentation-python - namespace: newrelic -spec: - agent: - language: python - image: newrelic/newrelic-python-init:latest - # env: ... -``` +* `NameSpaceLabelSelector` defines at the namespace level the auto-instrumented pods. -Rubyの場合: + Example using `matchExpressions` (select namespace containing an specific tag and value): -```yaml -apiVersion: newrelic.com/v1alpha2 -kind: Instrumentation -metadata: - name: newrelic-instrumentation-ruby - namespace: newrelic -spec: - agent: - language: ruby - image: newrelic/newrelic-ruby-init:latest - # env: ... -``` + ```yaml + ... + namespaceLabelSelector: + matchExpressions: + - key: "kubernetes.io/metadata.name" + operator: "In" + values: ["backend"] + ... + ``` -環境固有の設定の場合: + + Keep in mind that apply the `kubernetes.io/metadata.name` label is the same as selecting based on the namespace's name. + -```yaml -apiVersion: newrelic.com/v1alpha2 -kind: Instrumentation -metadata: - name: newrelic-instrumentation-lang - namespace: newrelic -spec: - agent: - env: - # Example New Relic agent supported environment variables - - name: NEW_RELIC_LABELS - value: "environment:auto-injection" - # Example setting the pod name based on the metadata - - name: NEW_RELIC_POD_NAME - valueFrom: - fieldRef: - fieldPath: metadata.name - # Example overriding the appName configuration - - name: NEW_RELIC_APP_NAME - value: "$(NEW_RELIC_LABELS)-$(NEW_RELIC_POD_NAME)" -``` +Both selectors support `matchLabel` and `matchExpressions`. + + + How to use + matchLabel + and + matchExpressions + + } + > + `matchExpressions` is a more expressive label selector in Kubernetes and supports set-based matching unlike the `matchLabels`, which you can only use for exact matching. You can use it with or without the `matchLabels` selector. + + ```yaml + ... + selector: + matchLabels: + tier: frontend + matchExpressions: + - {key: name, operator: In, values: [payroll, web]} + - {key: environment, operator: NotIn, values: [dev]} + ... + ``` + + You can add more expressions to the selector. As in the example, each expression must contain a key, an operator, and possibly (depending on the operator) a list of values. There are four valid operators: + + * `In`: Label's value must match one of the specified values. + * `NotIn`: Label's value must not match any of the specified values. + * `Exists`: Pod must include a label with the specified key (the value isn't important). When using this operator, you shouldn't specify the values field. + * `DoesNotExist`: Pod must not include a label with the specified key. You must not specify the values property. + + If you specify many expressions, all those expressions must evaluate to true for the selector to match a pod. If you specify both `matchLabels` and `matchExpressions`, all the labels must match and all the expressions must evaluate to true for the pod to match the selector. + + -ラベルを使用して特定のネームスペース内のすべてをターゲットにする: +### APMエージェント [#apm-agent] + +You've got to specify the APM agent and its version within the instrumentation CR. We recommend using the latest version to take advantage of the newest features available. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Image + + 言語 + + Available versions +
+ dotnet + + `newrelic-dotnet-init:latest` + + [.NET](https://hub.docker.com/repository/docker/newrelic/newrelic-dotnet-init/general) +
+ java + + `newrelic-java-init:latest` + + [Java](https://hub.docker.com/repository/docker/newrelic/newrelic-java-init/general) +
+ nodejs + + `newrelic-node-init:latest` + + [ノード](https://hub.docker.com/repository/docker/newrelic/newrelic-node-init/general) +
+ python + + `newrelic-python-init:latest` + + [Python](https://hub.docker.com/repository/docker/newrelic/newrelic-python-init/general) +
+ ruby + + `newrelic-ruby-init:latest` + + [Ruby](https://hub.docker.com/repository/docker/newrelic/newrelic-ruby-init/general) +
+ +See this example: ```yaml -apiVersion: newrelic.com/v1alpha2 -kind: Instrumentation -metadata: - name: newrelic-instrumentation-lang - namespace: newrelic -spec: - #agent: ... - namespaceLabelSelector: - matchExpressions: - - key: "app.newrelic.instrumentation" - operator: "In" - values: ["java"] + ... + spec: + agent: + language: dotnet + image: newrelic/newrelic-dotnet-init:latest + ... ``` -特定のラベルを持つポッドをターゲットにする: +### APM configuration parameters [#apm-config-parameters] + +The instrumentation CR provides the capability to inject environment variables in the pod to streamline the configuration of the APM agents. See this example: ```yaml -apiVersion: newrelic.com/v1alpha2 -kind: Instrumentation -metadata: - name: newrelic-instrumentation-lang - namespace: newrelic -spec: - # agent: ... - podLabelSelector: - matchExpressions: - - key: "app.newrelic.instrumentation" - operator: "In" - values: ["dotnet"] + ... + spec: + env: + # Example overriding the appName configuration by using a label of the pod + - name: NEW_RELIC_APP_NAME + valueFrom: + fieldRef: + fieldPath: metadata.labels['app.kubernetes.io/name'] + ... ``` -デフォルト以外の名前を持つシークレットを使用する: +In the above example, we show you how you can configure the agent settings globally using environment variables. See each agent's configuration documentation for available configuration options: -```yaml -apiVersion: newrelic.com/v1alpha2 -kind: Instrumentation -metadata: - name: newrelic-instrumentation-lang - namespace: newrelic -spec: - # agent: ... - licenseKeySecret: the-name-of-the-custom-secret -``` +* [Java](/docs/apm/agents/java-agent/configuration/java-agent-configuration-config-file/) +* [ノード](/docs/apm/agents/nodejs-agent/installation-configuration/nodejs-agent-configuration/) +* [Python](/docs/apm/agents/python-agent/configuration/python-agent-configuration/) +* [.NET](/docs/apm/agents/net-agent/configuration/net-agent-configuration/) +* [Ruby](/docs/apm/agents/ruby-agent/configuration/ruby-agent-configuration/) + + + You can inject these environment variables in the app deployment manifest. + -上記の例では、環境変数を使用してエージェント設定をグローバルに構成する方法を示しています。 利用可能な設定オプションについては、各エージェントの設定ドキュメントを参照してください。 +### License keys (optional) [#license-keys] -* [Java](https://docs.newrelic.com/docs/apm/agents/java-agent/configuration/java-agent-configuration-config-file/) -* [ノード](https://docs.newrelic.com/docs/apm/agents/nodejs-agent/installation-configuration/nodejs-agent-configuration/) -* [Python](https://docs.newrelic.com/docs/apm/agents/python-agent/configuration/python-agent-configuration/) -* [.NET](https://docs.newrelic.com/docs/apm/agents/net-agent/configuration/net-agent-configuration/) -* [Ruby](https://docs.newrelic.com/docs/apm/agents/ruby-agent/configuration/ruby-agent-configuration/) +When you install it, a is created and it's the license by default. Follow these steps, if you need to send the APM telemetry to a different account: -### 証明書マネージャー +* To create a secret containing a new license key, run this command: -K8s エージェント オペレーターは、必要に応じて[`cert-manager`](https://github.com/cert-manager/cert-manager)の使用をサポートします。 + ```bash + kubectl create secret generic newrelic-key-secret \ + --namespace my-monitored-namespace \ + --from-literal=new_relic_license_key= + ``` -[`cert-manager`](https://github.com/cert-manager/cert-manager) Helm チャートをインストールします: +* To reference the secret from the instrumentation CR, run this command: -```shell -helm install cert-manager jetstack/cert-manager \ - --namespace cert-manager \ - --create-namespace \ - --set crds.enabled=true -``` + ```yaml + ... + spec: + licenseKeySecret: the-name-of-the-custom-secret + ... + ``` -`values.yaml`ファイルで、 `admissionWebhooks.autoGenerateCert.enabled: false`と`admissionWebhooks.certManager.enabled: true`を設定します。 その後、通常どおりチャートをインストールします。 +## Instrumentation CR examples [#cr-examples] -## 利用可能なチャートリリース + + + ```yaml + apiVersion: newrelic.com/v1alpha2 + kind: Instrumentation + metadata: + name: newrelic-instrumentation-python + namespace: newrelic + spec: + agent: + language: python + image: newrelic/newrelic-python-init:latest + env: + - name: NEW_RELIC_APP_NAME + valueFrom: + fieldRef: + fieldPath: metadata.labels['app'] + podLabelSelector: + matchExpressions: + - key: "app" + operator: "In" + values: ["flask-hello-world","flask-hello-world-v2"] + ``` + -利用可能なチャートを表示するには: + + ```yaml + apiVersion: newrelic.com/v1alpha2 + kind: Instrumentation + metadata: + name: newrelic-instrumentation-java + namespace: newrelic + spec: + agent: + language: java + image: newrelic/newrelic-java-init:latest + namespaceLabelSelector: + matchExpressions: + - key: "kubernetes.io/metadata.name" + operator: "In" + values: ["java"] + ``` + -```shell -helm search repo k8s-agents-operator -``` + + ```yaml + apiVersion: newrelic.com/v1alpha2 + kind: Instrumentation + metadata: + name: newrelic-instrumentation-ruby + namespace: newrelic + spec: + agent: + language: java + image: newrelic/newrelic-ruby-init:latest + namespaceLabelSelector: + matchExpressions: + - key: "Ruby" + operator: "Exists" + licenseKeySecret: the-name-of-the-custom-secret + ``` + + -## アプリケーション内のAPMインストゥルメンテーションをアップグレードする [#upgrade-apm-instrumention] +## Update APM instrumentation in applications [#upgrade-apm-instrumention] -デフォルトでは、 Kubernetesエージェント オペレーターは、対応する[APMエージェント](/docs/apm/new-relic-apm/getting-started/introduction-apm/)の利用可能な最新バージョンを自動的にインストールします。 +By default, the Kubernetes APM Auto-attach automatically installs the latest available version of the corresponding [APM agent](/docs/apm/new-relic-apm/getting-started/introduction-apm/). -アプリケーションがモニターされると、ユーザーがアップグレードを選択しない限り、新しいバージョンに自動的にアップグレードされることはありません。 CRがオペレーター内にすでにロードされている場合は、ポッドを再デプロイするか、デプロイメントを再起動するだけで、アプリケーションを新しいバージョンにシームレスにアップグレードできます。 +Once the monitoring of an application starts, it's not automatically updated to a newer version unless you choose to update. You can update the application by redeploying the pods or restarting your deployment. ## アプリケーション内のAPMインストゥルメンテーションを削除します [#remove-apm-instrumentation] -アプリケーション内のAPMインストゥルメンテーションを削除するには、 Kubernetesエージェント オペレーターによって使用される `podLabelSelector` または `namespaceLabelSelector` 内の一致するラベル セレクターを削除してから、デプロイメントを再起動する必要があります。 数秒以内に、 APMエージェントが自動的に削除されたことがわかります。 +To remove the APM instrumentation from an application, you must change the matching label selector inside either the `podLabelSelector` or `namespaceLabelSelector` used or delete the instrumentation CR. Then, restart the deployment. The remove process takes just a few seconds. -## Kubernetes エージェント オペレーターの更新 [#upgrading-k8s-operator] +## Update the Kubernetes APM Auto-attach [#update-k8s-auto-attach] -### バンドル インストレーション +### バンドル インストレーション [#upgrading-bundle-installation] -次の構文を使用して、nri-bundle チャートのアップグレードを実行します。 +Run an update of the `nri-bundle` chart with the following parameter: ```shell k8s-agents-operator.enabled=true ``` -### スタンドアロン インストール +### スタンドアロン インストール [#standalone-installation] -`helm upgrade`コマンドを実行して、Kubernetes エージェント オペレーターの新しいバージョンに更新します。 +Run the `helm upgrade` command to update to a newer version of the Kubernetes APM Auto-attach. ```shell helm upgrade k8s-agents-operator newrelic/k8s-agents-operator -n newrelic ``` -## Kubernetes エージェント オペレーターのアンインストール [#uninstall-k8s-operator] +## Uninstalling the Kubernetes APM Auto-attach [#uninstall-k8s-auto-attach] -### バンドル インストレーション +### バンドル インストレーション [#uninstall-bundle-installation] -nri-bundle チャートをアンインストールするか、オペレーターのみを削除する場合は、次の引数で helm upgrade を実行します。 +Uninstall the `nri-bundle` chart or if you only want to remove Kubernetes APM Auto-attach, run a helm upgrade with the following parameter: ```shell k8s-agents-operator.enabled=false ``` -### スタンドアロン インストール +### スタンドアロン インストール [#uninstall-standalone-installation] -Kubernetes エージェント オペレーターをアンインストールして削除するには、次のコマンドを実行します。 +To uninstall and delete the Kubernetes APM Auto-attach, run this command: ```shell helm uninstall k8s-agents-operator -n newrelic @@ -310,43 +442,68 @@ helm uninstall k8s-agents-operator -n newrelic * [Kubernetes の概要](/docs/apm/apm-ui-pages/monitoring/kubernetes-summary-page/)ページを確認してください。 モニターアプリケーションのコンテキストでKubernetesインサイト を提供します。 +## Certificates [#certificates] + +The K8s APM Auto-attach can support [`cert-manager`](https://github.com/cert-manager/cert-manager) if preferred. + +* Run this command to install the [`cert-manager`](https://github.com/cert-manager/cert-manager) Helm chart: + + ```shell + helm install cert-manager jetstack/cert-manager \ + --namespace cert-manager \ + --create-namespace \ + --set crds.enabled=true + ``` + +* In your `values.yaml` file, set `admissionWebhooks.autoGenerateCert.enabled: false` and `admissionWebhooks.certManager.enabled: true`. Then, install the chart as normal. + +## Available chart releases [#available-chart-releases] + +Run this command to see the available charts: + +```shell +helm search repo k8s-agents-operator +``` + ## よくあるご質問 [#faq] - はい、適切なネームスペースのシークレットに挿入された[ライセンスキー](/docs/apis/intro-apis/new-relic-api-keys/#license-key)を変更するだけです。 + Yes, you just need to add more secrets in the cluster. Check needed steps in the [license keys (optional)](#license-keys%5D) section. [K8s APM エクスペリエンスは](/docs/apm/apm-ui-pages/monitoring/kubernetes-summary-page/)、アプリケーションと K8s クラスターからのデータが利用可能なアカウントでのみ利用できます。 - - はい、オペレーターをサポートする利用可能なエージェントのバージョンはすべて docker Hub にリストされています。 + + Installing two APM agents in the same application can potentially lead to unexpected issues. Therefore, we strongly recommend removing any existing instrumentation before installing it. + + + + Yes, custom instrumentation will work the same as without APM auto-attach. The main difference is that the agent is now injected by APM auto-attach instead of installed in the container with the rest of the application dependencies. - * [Java](https://hub.docker.com/repository/docker/newrelic/newrelic-java-init/general) - * [ノード](https://hub.docker.com/repository/docker/newrelic/newrelic-node-init/general) - * [Python](https://hub.docker.com/repository/docker/newrelic/newrelic-python-init/general) - * [.NET](https://hub.docker.com/repository/docker/newrelic/newrelic-dotnet-init/general) - * [Ruby](https://hub.docker.com/repository/docker/newrelic/newrelic-ruby-init/general) + You can still import and call the agent API to add custom instrumentation into your application. You can also utilize a configuration file or environment variables to add custom instrumentation if the particular agent you're using supports it. Note that agents have order of precendence between configuration via environment variables and configuration via configuration files, so you will need to make sure your environment variable configuration via the operator is not clashing with your configuration via configuration file. See each agents custom instrumentation docs for details: + + * [Java](/docs/apm/agents/java-agent/custom-instrumentation/java-custom-instrumentation/) + * [ノード](/docs/apm/agents/nodejs-agent/extend-your-instrumentation/nodejs-custom-instrumentation/) + * [Python](/docs/apm/agents/python-agent/custom-instrumentation/python-custom-instrumentation/) + * [.NET](/docs/apm/agents/net-agent/custom-instrumentation/introduction-net-custom-instrumentation/) + * [Ruby](/docs/apm/agents/ruby-agent/api-guides/ruby-custom-instrumentation/) - - 同じアプリケーションに 2 つのAPMエージェントをインストールすると、予期しない問題が発生する可能性があります。 したがって、オペレータをインストールする前に、既存のインストゥルメンテーションを削除することを強くお勧めします。 + + No, you can't. The APM agents are injected at application runtime, it needs access to write to the application container's file system. - - はい、カスタムインストゥルメンテーションはオペレーターなしの場合と同じように機能します。 主な違いは、エージェントが、アプリケーションの残りの依存関係とともにコンテナーにインストールされるのではなく、オペレーターによって注入されるようになったことです。 エージェントAPIインポートして呼び出して、カスタムインストゥルメンテーションをアプリケーションに追加することもできます。 使用している特定のエージェントがカスタムインストゥルメンテーションをサポートしている場合は、設定ファイルまたは環境変数を利用してカスタムインストゥルメンテーションを追加することもできます。 注意: エージェントには環境変数経由の設定と設定ファイル経由の設定の間に優先順位があるため、オペレーター経由の環境変数設定が設定ファイル経由の設定と競合していないことを確認する必要があります。 詳細については、各エージェントのカスタムインストゥルメンテーションのドキュメントを参照してください。 + + It only supports Linux nodes. - * [Java](https://docs.newrelic.com/docs/apm/agents/java-agent/custom-instrumentation/java-custom-instrumentation/) - * [ノード](https://docs.newrelic.com/docs/apm/agents/nodejs-agent/extend-your-instrumentation/nodejs-custom-instrumentation/) - * [Python](https://docs.newrelic.com/docs/apm/agents/python-agent/custom-instrumentation/python-custom-instrumentation/) - * [.NET](https://docs.newrelic.com/docs/apm/agents/net-agent/custom-instrumentation/introduction-net-custom-instrumentation/) - * [Ruby](https://docs.newrelic.com/docs/apm/agents/ruby-agent/api-guides/ruby-custom-instrumentation/) + Windows nodes support is expected on the near future. - - いいえ、オペレーターはアプリケーション実行時にエージェントを挿入するため、アプリケーション コンテナーのファイル システムへの書き込みアクセス権が必要です。 + + It hasn't been tested on [AWS Fargate](/docs/kubernetes-pixie/kubernetes-integration/installation/kubernetes-eks-fargate/) nodes with EKS. @@ -354,40 +511,45 @@ helm uninstall k8s-agents-operator -n newrelic アプリケーションがインストゥルメントされていない場合は、次の点を確認してください。 -* オペレーターをインストールした後は、必ず再デプロイまたは新しいアプリケーションをデプロイしてください。 オペレータはクラスタ内で新規アプリケーションを自動導入するだけなので注意してください。 +* Please be sure to redeploy or deploy new applications after you've installed K8s APM auto-attach. Notice that only auto-instruments new applications are deployed in the cluster. -* シークレットとインストゥルメンテーション CRD がアプリのネームスペースにインストールされていることを確認します。 +* Run this command to check that the secret is installed in the app's namespace: - ```shell + ```bash kubectl get secrets -n NAMESPACE - kubectl get instrumentation -n NAMESPACE ``` * `podLabelSelector`の使用時に CR による自動インストゥルメンテーションを有効にする必要なラベルがポッドにあることを確認してください。 同様に、CR 内で`namespaceLabelSelector`使用する場合は、ネームスペースに必要なラベルがあることを確認してください。 - ```shell + ```bash kubectl get pod POD_NAME -n NAMESPACE -o jsonpath='{.metadata.annotations}' ``` -* エージェント オペレーター ポッドからログを取得します。 +* Run this command to get logs from the APM auto-attach pod: - ```shell + ```bash kubectl logs AGENT_OPERATOR_POD -n newrelic ``` -* `init`コンテナがアプリケーションのポッド内に挿入され、正常に実行されたことを確認します。 +* Run this command to ensure the `init` container has been injected and sucessfully executed inside the application's pod. - ```shell + ```bash kubectl describe pod POD_NAME -n NAMESPACE ``` +## How to migrate from previous versions that required annotations [#migrate] + +Starting with version 0.14, annotations within the application deployment manifest are no longer necessary for applications to be auto-instrumented. + +It's advised to uninstall any versions preceding 0.14 and proceed with the installation of the latest release. Utilizing the label selectors within the instrumentation CR will enable the precise deployment of APM agents, thereby obviating the requirement for annotations. + ## サポート [#support] -Kubernetesエージェントオペレーターは現在、Java、.NET、Node.jsなどのAPMエージェントの最新バージョンをサポートしています。 Python と Ruby。 +The Kubernetes APM Auto-attach currently supports the latest version of these APM agents: Java, .NET, Node.js, Python, and Ruby. -オペレーターが一般公開されると、各APMエージェントの最新の 3 つのバージョンがサポートされるようになります。 +Once is on general availability, the latest 3 versions of each of the APM agents will be supported. -Kubernetes エージェント オペレーターの問題の場合: +For any issues: * 同様の問題がないか[GitHub の問題セクション](https://github.com/newrelic/k8s-agents-operator/issues)を確認するか、新しい問題を開くことを検討してください。 diff --git a/src/i18n/content/jp/docs/network-performance-monitoring/advanced/ktranslate-container-health.mdx b/src/i18n/content/jp/docs/network-performance-monitoring/advanced/ktranslate-container-health.mdx index 1ff218480d0..0beac036efd 100644 --- a/src/i18n/content/jp/docs/network-performance-monitoring/advanced/ktranslate-container-health.mdx +++ b/src/i18n/content/jp/docs/network-performance-monitoring/advanced/ktranslate-container-health.mdx @@ -104,7 +104,7 @@ KTranslate コンテナ イメージには、実行時に使用できる`-tee_lo ``` - Ktranslate のログ重大度レベルは次のとおりです: `Info` 、 `Warn` 、および`Error` 。 + KTranslate has the following log severity levels: `Info`, `Warn`, and `Error`. diff --git a/src/i18n/content/jp/docs/synthetics/synthetic-monitoring/using-monitors/store-secure-credentials-scripted-browsers-api-tests.mdx b/src/i18n/content/jp/docs/synthetics/synthetic-monitoring/using-monitors/store-secure-credentials-scripted-browsers-api-tests.mdx index 575e0a9d7f9..126565daf80 100644 --- a/src/i18n/content/jp/docs/synthetics/synthetic-monitoring/using-monitors/store-secure-credentials-scripted-browsers-api-tests.mdx +++ b/src/i18n/content/jp/docs/synthetics/synthetic-monitoring/using-monitors/store-secure-credentials-scripted-browsers-api-tests.mdx @@ -15,10 +15,7 @@ NewRelicまたは[API](/docs/apis/synthetics-rest-api/secure-credentials-example 合成モニタリングのワークフローで機密情報を保護する方法については、こちらのショートビデオ(3分15秒)をご覧ください。 -