Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rename in_cluster_url to internal_url; rename url to external_url #820

Merged
merged 2 commits into from
Sep 23, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions content/en/docs/Configuration/p8s-jaeger-grafana/grafana.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,9 +35,9 @@ spec:
grafana:
enabled: true
# Grafana service name is "grafana" and is in the "telemetry" namespace.
in_cluster_url: 'http://grafana.telemetry:3000/'
internal_url: 'http://grafana.telemetry:3000/'
# Public facing URL of Grafana
url: 'http://my-ingress-host/grafana'
external_url: 'http://my-ingress-host/grafana'
dashboards:
- name: "Istio Service Dashboard"
variables:
Expand Down Expand Up @@ -77,4 +77,4 @@ spec:
health_check_url: ""
```

To configure a secret to be used as a password, see this [FAQ entry]({{< relref "../../FAQ/installation#how-can-i-use-a-secret-to-pass-external-service-credentials-to-the-kiali-server" >}})
To configure a secret to be used as a password, see this [FAQ entry]({{< relref "../../FAQ/installation#how-can-i-use-a-secret-to-pass-external-service-credentials-to-the-kiali-server" >}})
Original file line number Diff line number Diff line change
Expand Up @@ -32,17 +32,17 @@ spec:
# Jaeger service name is "tracing" and is in the "telemetry" namespace.
# Make sure the URL you provide corresponds to the non-GRPC enabled endpoint
# if you set "use_grpc" to false.
in_cluster_url: "http://tracing.telemetry:16685/jaeger"
internal_url: "http://tracing.telemetry:16685/jaeger"
use_grpc: true
# Public facing URL of Jaeger
url: "http://my-jaeger-host/jaeger"
external_url: "http://my-jaeger-host/jaeger"
```

Minimally, you must provide `spec.external_services.tracing.in_cluster_url` to
Minimally, you must provide `spec.external_services.tracing.internal_url` to
enable Kiali features that use distributed tracing data. However, Kiali can
provide contextual links that users can use to jump to the Jaeger console to
inspect tracing data more in depth. For these links to be available you need to
set the `spec.external_services.tracing.url` to the URL where you
set the `spec.external_services.tracing.external_url` to the URL where you
expose Jaeger outside the cluster.

{{% alert color="success" %}}
Expand Down Expand Up @@ -72,4 +72,4 @@ spec:
health_check_url: ""
```

To configure a secret to be used as a password, see this [FAQ entry]({{< relref "../../../FAQ/installation#how-can-i-use-a-secret-to-pass-external-service-credentials-to-the-kiali-server" >}})
To configure a secret to be used as a password, see this [FAQ entry]({{< relref "../../../FAQ/installation#how-can-i-use-a-secret-to-pass-external-service-credentials-to-the-kiali-server" >}})
26 changes: 13 additions & 13 deletions content/en/docs/Configuration/p8s-jaeger-grafana/tracing/tempo.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,14 +35,14 @@ spec:
# Tempo service name is "query-frontend" and is in the "tempo" namespace.
# Make sure the URL you provide corresponds to the non-GRPC enabled endpoint
# It does not support grpc yet, so make sure "use_grpc" is set to false.
in_cluster_url: "http://tempo-tempo-query-frontend.tempo.svc.cluster.local:3200/"
internal_url: "http://tempo-tempo-query-frontend.tempo.svc.cluster.local:3200/"
provider: "tempo"
tempo_config:
org_id: "1"
datasource_uid: "a8d2ef1c-d31c-4de5-a90b-e7bc5252cd00"
use_grpc: false
# Public facing URL of Tempo
url: "https://tempo-tempo-query-frontend-tempo.apps-crc.testing/"
external_url: "https://tempo-tempo-query-frontend-tempo.apps-crc.testing/"
```

The default UI for Grafana Tempo is Grafana, so we should also set the Grafana URL in the Kiali configuration, such as this example:
Expand All @@ -51,8 +51,8 @@ The default UI for Grafana Tempo is Grafana, so we should also set the Grafana U
spec:
external_services:
grafana:
in_cluster_url: http://grafana.istio-system:3000
url: https://grafana.apps-crc.testing/
internal_url: http://grafana.istio-system:3000
external_url: https://grafana.apps-crc.testing/
```

#### Set up a Tempo Datasource in Grafana
Expand Down Expand Up @@ -85,10 +85,10 @@ spec:
enabled: true
# grpc port defaults to 9095
grpc_port: 9095
in_cluster_url: "http://query-frontend.tempo:3200"
internal_url: "http://query-frontend.tempo:3200"
provider: "tempo"
use_grpc: true
url: "http://my-tempo-host:3200"
external_url: "http://my-tempo-host:3200"
```

##### Service check URL
Expand Down Expand Up @@ -147,7 +147,7 @@ set
from Istio to the Tempo Distributor service and the Zipkin port. Tanka will deploy
the service in `distributor.tempo.svc.cluster.local:9411`.

The `external_services.tracing.in_cluster_url` Kiali option needs to be set to:
The `external_services.tracing.internal_url` Kiali option needs to be set to:
`http://query-frontend.tempo.svc.cluster.local:16685`.

#### Tempo Operator
Expand Down Expand Up @@ -197,7 +197,7 @@ field in your Istio installation. It needs to be set to the `9411` port of the
Tempo Distributor service. For the previous example, this value will be
`tempo-smm-distributor.tempo.svc.cluster.local:9411`.

Now, you need to configure the `in_cluster_url` setting from Kiali to access
Now, you need to configure the `internal_url` setting from Kiali to access
the Jaeger API. You can point to the `16685` port to use GRPC or `16686` if not.
For the given example, the value would be
`http://tempo-ssm-query-frontend.tempo.svc.cluster.local:16685`.
Expand All @@ -221,17 +221,17 @@ In `external_services.tracing`

| | <div style="width:470px">http<hr></div> | <div style="width:470px">grpc <hr></div> |
|----------------------------------------------------|--------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------|
| Jaeger | `.in_cluster_url = 'http://jaeger_service_url:16686/jaeger'`<br/> `.use_grpc = false` <hr> | `.in_cluster_url = 'http://jaeger_service_url:16685/jaeger'`<br/> `.use_grpc = true (Not required: by default)` <br><hr> |
| Tempo | `.in_cluster_url = 'http://query_frontend_url:16686'`<br/> `.use_grpc = false` <hr> | `.in_cluster_url = 'http://query_frontend_url:16685'` <br/>`.use_grpc = true (Not required: by default)` <br/><hr> |
| Jaeger | `.internal_url = 'http://jaeger_service_url:16686/jaeger'`<br/> `.use_grpc = false` <hr> | `.internal_url = 'http://jaeger_service_url:16685/jaeger'`<br/> `.use_grpc = true (Not required: by default)` <br><hr> |
| Tempo | `.internal_url = 'http://query_frontend_url:16686'`<br/> `.use_grpc = false` <hr> | `.internal_url = 'http://query_frontend_url:16685'` <br/>`.use_grpc = true (Not required: by default)` <br/><hr> |

<br>

#### Minimal configuration for Kiali > 1.79

| | <div style="width:470px">http<hr></div> | <div style="width:470px">grpc <hr></div> |
|--------|-------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Jaeger | `.in_cluster_url = 'http://jaeger_service_url:16686/jaeger'`<br/> `.use_grpc = false` <hr> | `.in_cluster_url = 'http://jaeger_service_url:16685/jaeger'` <br>`.use_grpc = true (Not required: by default)`<br><hr> |
| Tempo | <br/>`in_cluster_url = 'http://query_frontend_url:3200'`<br/> `.use_grpc = false`<br/> `.provider = 'tempo'`<br/><hr> | `.in_cluster_url = 'http://query_frontend_url:3200'`<br/> `.grpc_port: 9095` <br/>`.provider: 'tempo'`<br/>`.use_grpc = true (Not required: by default)`<hr> |
| Jaeger | `.internal_url = 'http://jaeger_service_url:16686/jaeger'`<br/> `.use_grpc = false` <hr> | `.internal_url = 'http://jaeger_service_url:16685/jaeger'` <br>`.use_grpc = true (Not required: by default)`<br><hr> |
| Tempo | <br/>`internal_url = 'http://query_frontend_url:3200'`<br/> `.use_grpc = false`<br/> `.provider = 'tempo'`<br/><hr> | `.internal_url = 'http://query_frontend_url:3200'`<br/> `.grpc_port: 9095` <br/>`.provider: 'tempo'`<br/>`.use_grpc = true (Not required: by default)`<hr> |

### Tempo authentication configuration

Expand All @@ -253,4 +253,4 @@ spec:
health_check_url: ""
```

To configure a secret to be used as a password, see this [FAQ entry]({{< relref "../../../FAQ/installation#how-can-i-use-a-secret-to-pass-external-service-credentials-to-the-kiali-server" >}})
To configure a secret to be used as a password, see this [FAQ entry]({{< relref "../../../FAQ/installation#how-can-i-use-a-secret-to-pass-external-service-credentials-to-the-kiali-server" >}})
22 changes: 11 additions & 11 deletions content/en/docs/FAQ/distributed-tracing.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,12 @@ Apparently, Kiali is unable to connect to Jaeger. Make sure [tracing is correctl
auth:
type: none
enabled: true
in_cluster_url: 'http://tracing.istio-system/jaeger'
url: 'http://jaeger.example.com/'
internal_url: 'http://tracing.istio-system/jaeger'
external_url: 'http://jaeger.example.com/'
use_grpc: true
```

You need especially to pay attention to the `in_cluster_url` field, which is how Kiali backend contacts the Jaeger service. In general, this URL is written using Kubernetes domain names in the form of `http://service.namespace`, plus a path.
You need especially to pay attention to the `internal_url` field, which is how Kiali backend contacts the Jaeger service. In general, this URL is written using Kubernetes domain names in the form of `http://service.namespace`, plus a path.

If you're not sure about this URL, try to find your Jaeger service and its exposed ports:

Expand All @@ -50,7 +50,7 @@ If instead of that you see some blocks of mixed HTML/Javascript mentioning Jaege

A common mistake is to forget the `/jaeger` suffix, which is often used in Jaeger deployments.

It may also happen that you have a service named `jaeger-query`, exposing port `16686`, instead of the more common `tracing` service on port `80`. In that situation, set `in_cluster_url` to `http://jaeger-query.istio-system:16686/jaeger`.
It may also happen that you have a service named `jaeger-query`, exposing port `16686`, instead of the more common `tracing` service on port `80`. In that situation, set `internal_url` to `http://jaeger-query.istio-system:16686/jaeger`.

If Jaeger needs an authentication, make sure to correctly configure the `auth` section.

Expand All @@ -61,12 +61,12 @@ If for some reason the GRPC connection fails and you think it shouldn't (e.g. yo

### Why can't I see any external link to Jaeger?

In addition to the embedded integration that Kiali provides with Jaeger, it is possible to show external links to the Jaeger UI. To do so, the external URL must be configured in the [Kiali CR](/docs/configuration/kialis.kiali.io/#.spec.external_services.tracing.url).
In addition to the embedded integration that Kiali provides with Jaeger, it is possible to show external links to the Jaeger UI. To do so, the external URL must be configured in the [Kiali CR](/docs/configuration/kialis.kiali.io/#.spec.external_services.tracing.external_url).

```yaml
tracing:
# ...
url: "http://jaeger.example.com/"
external_url: "http://jaeger.example.com/"
```

When configured, this URL will be used to generate a couple of links to Jaeger within Kiali. It's also visible in the About modal:
Expand All @@ -80,9 +80,9 @@ When configured, this URL will be used to generate a couple of links to Jaeger w

![Jaeger integration disabled](/images/documentation/faq/tracing/traces-external-link.png)

On the Application detail page, the Traces tab might redirect to Jaeger via an external link instead of showing the Kiali Tracing view. It happens when you have the `url` field configured, but not `in_cluster_url`, which means the Kiali backend will not be able to connect to Jaeger.
On the Application detail page, the Traces tab might redirect to Jaeger via an external link instead of showing the Kiali Tracing view. It happens when you have the `external_url` field configured, but not `internal_url`, which means the Kiali backend will not be able to connect to Jaeger.

To fix it, configure `in_cluster_url` in the [Kiali CR](/docs/configuration/kialis.kiali.io/#.spec.external_services.tracing.in_cluster_url).
To fix it, configure `internal_url` in the [Kiali CR](/docs/configuration/kialis.kiali.io/#.spec.external_services.tracing.internal_url).


### Why do I see "Missing root span" for the root span of some span details on Traces tab?
Expand All @@ -93,11 +93,11 @@ In Traces tab, while clicking on a trace, it shows the details of that trace and

### Why do I see "error reading server preface: http2: frame too large" error when Kiali is not able to fetch Traces?

Sometimes this error can occur when there is a problem in the configuration and there is an http url configured but Kiali is configured to use grpc. For example:
Sometimes this error can occur when there is a problem in the configuration and there is an http URL configured but Kiali is configured to use grpc. For example:

```yaml
use_grpc: true
in_cluster_url: "http://jaeger_url:16686/jaeger"
internal_url: "http://jaeger_url:16686/jaeger"
```

That should be solved when `use_grpc: false` or using the grpc port `in_cluster_url: "http://jaeger_url:16685/jaeger"`
That should be solved when `use_grpc: false` or using the grpc port `internal_url: "http://jaeger_url:16685/jaeger"`
6 changes: 3 additions & 3 deletions content/en/docs/Tutorials/tempo/02-kiali-tempo-integration.md
Original file line number Diff line number Diff line change
Expand Up @@ -222,8 +222,8 @@ Install kiali:
```
helm install \
--namespace istio-system \
--set external_services.tracing.in_cluster_url=http://tempo-smm-query-frontend.tempo:16685 \
--set external_services.tracing.url=http://localhost:16686 \
--set external_services.tracing.internal_url=http://tempo-smm-query-frontend.tempo:16685 \
--set external_services.tracing.external_url=http://localhost:16686 \
--set auth.strategy=anonymous \
kiali-server \
kiali/kiali-server
Expand All @@ -241,4 +241,4 @@ And access Kiali:
```
kubectl port-forward svc/kiali 20001:20001 -n istio-system
```
![Kiali Tempo Traces](/images/tutorial/tempo/kiali-tempo-traces.png "Kiali Tempo traces")
![Kiali Tempo Traces](/images/tutorial/tempo/kiali-tempo-traces.png "Kiali Tempo traces")
8 changes: 4 additions & 4 deletions static/files/contribution_guide/config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@ external_services:
cache_enabled: true
tracing:
enabled: true
in_cluster_url: http://localhost:16685/jaeger
url: http://localhost:16686/jaeger
internal_url: http://localhost:16685/jaeger
external_url: http://localhost:16686/jaeger
use_grpc: false
whitelist_istio_system:
- jaeger-query
Expand All @@ -46,8 +46,8 @@ external_services:
use_kiali_token: false
username: internal
grafana:
in_cluster_url: http://localhost:13000
url: http://localhost:13000
internal_url: http://localhost:13000
external_url: http://localhost:13000
dashboards:
- name: "Istio Service Dashboard"
variables:
Expand Down
Loading