Skip to content

Commit d6f040b

Browse files
olix0rkleimkuhler
andauthored
proxy: v2.175.0 (#8142)
This release alters the policy-related labels that the proxy sets on inbound traffic: * The `srv_kind` label is set with a value of "default" or "server", depending on whether the `srv_name` label correponds to a default policy or a `Server` resource. `srv_name` no longer includes a "default:" prefix for default policies. * The `saz_name` label is removed, replaced by `authz_kind` and `authz_name` labels. Similarly, the `authz_kind` label is either `default` or `serverauthorization`, and the `authz_name` label never includes a "default:" prefix. --- * build(deps): bump tj-actions/changed-files from 17.3 to 18 (linkerd/linkerd2-proxy#1539) * build(deps): bump async-stream from 0.3.2 to 0.3.3 (linkerd/linkerd2-proxy#1540) * build(deps): bump syn from 1.0.86 to 1.0.87 (linkerd/linkerd2-proxy#1541) * build(deps): bump mio from 0.8.0 to 0.8.1 (linkerd/linkerd2-proxy#1542) * build(deps): bump syn from 1.0.87 to 1.0.88 (linkerd/linkerd2-proxy#1545) * build(deps): bump libc from 0.2.119 to 0.2.120 (linkerd/linkerd2-proxy#1544) * build(deps): bump tj-actions/changed-files from 18 to 18.1 (linkerd/linkerd2-proxy#1543) * build(deps): bump tj-actions/changed-files from 18.1 to 18.2 (linkerd/linkerd2-proxy#1546) * build(deps): bump mio from 0.8.1 to 0.8.2 (linkerd/linkerd2-proxy#1550) * build(deps): bump quote from 1.0.15 to 1.0.16 (linkerd/linkerd2-proxy#1549) * build(deps): bump syn from 1.0.88 to 1.0.89 (linkerd/linkerd2-proxy#1548) * build(deps): bump tj-actions/changed-files from 18.2 to 18.3 (linkerd/linkerd2-proxy#1547) * build(deps): bump which from 4.2.4 to 4.2.5 (linkerd/linkerd2-proxy#1554) * build(deps): bump tokio-rustls from 0.23.2 to 0.23.3 (linkerd/linkerd2-proxy#1553) * build(deps): bump tj-actions/changed-files from 18.3 to 18.4 (linkerd/linkerd2-proxy#1551) * build(deps): bump log from 0.4.14 to 0.4.15 (linkerd/linkerd2-proxy#1555) * build(deps): bump foreign-types-shared from 0.3.0 to 0.3.1 (linkerd/linkerd2-proxy#1557) * build(deps): bump foreign-types-macros from 0.2.1 to 0.2.2 (linkerd/linkerd2-proxy#1556) * build(deps): bump hyper from 0.14.17 to 0.14.18 (linkerd/linkerd2-proxy#1559) * build(deps): bump log from 0.4.15 to 0.4.16 (linkerd/linkerd2-proxy#1558) * inbound: Support multiple authorization types (linkerd/linkerd2-proxy#1560) Signed-off-by: Oliver Gould <[email protected]> Signed-off-by: Kevin Leimkuhler <[email protected]> Co-authored-by: Kevin Leimkuhler <[email protected]>
1 parent a274393 commit d6f040b

File tree

5 files changed

+35
-28
lines changed

5 files changed

+35
-28
lines changed

.proxy-version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
v2.174.0
1+
v2.175.0

test/integration/deep/opaqueports/opaque_ports_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ var (
2222
opaqueUnmeshedSvcPod = "opaque-unmeshed-svc"
2323
opaqueUnmeshedSvcSC = "slow-cooker-opaque-unmeshed-svc"
2424
tcpMetricRE = regexp.MustCompile(
25-
`tcp_open_total\{direction="inbound",peer="src",target_addr="[0-9\.]+:[0-9]+",target_ip="[0-9\.]+",target_port="[0-9]+",tls="true",client_id="default\.linkerd-opaque-ports-test\.serviceaccount\.identity\.linkerd\.cluster\.local",srv_name="default:all-unauthenticated".*} [0-9]+`,
25+
`tcp_open_total\{direction="inbound",peer="src",target_addr="[0-9\.]+:[0-9]+",target_ip="[0-9\.]+",target_port="[0-9]+",tls="true",client_id="default\.linkerd-opaque-ports-test\.serviceaccount\.identity\.linkerd\.cluster\.local",srv_kind="default",srv_name="all-unauthenticated"} [0-9]+`,
2626
)
2727
tcpMetricOutUnmeshedRE = regexp.MustCompile(
2828
`tcp_open_total\{direction="outbound",peer="dst",authority="[a-zA-Z\-]+\.[a-zA-Z\-]+\.svc\.cluster\.local:[0-9]+",target_addr="[0-9\.]+:[0-9]+",target_ip="[0-9\.]+",target_port="[0-9]+",tls="no_identity",no_tls_reason="not_provided_by_service_discovery",.*\} [0-9]+`,

test/integration/viz/policy/policy_test.go

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ package policy
22

33
import (
44
"context"
5-
"errors"
65
"fmt"
76
"os"
87
"strconv"
@@ -147,13 +146,7 @@ func TestPolicy(t *testing.T) {
147146
return nil
148147
})
149148
if err != nil {
150-
// FIXME this test is flakey, and we may not get a success rate reported. If we
151-
// hit that flakiness, just skip the test for now.
152-
var ne noSuccess
153-
if errors.As(err, &ne) {
154-
t.Skipf("XXX Skipping flakey test: %s", err)
155-
}
156-
testutil.AnnotatedFatal(t, fmt.Sprintf("timed-out checking stats (%s)", timeout), err)
149+
testutil.AnnotatedFatal(t, fmt.Sprintf("timed-out checking policy stats (%s)", timeout), err)
157150
}
158151
})
159152
}

viz/metrics-api/policy.go

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -164,17 +164,27 @@ func buildServerRequestLabels(req *pb.StatSummaryRequest) (labels model.LabelSet
164164
namespaceLabel: model.LabelValue(req.GetSelector().GetResource().GetNamespace()),
165165
})
166166
}
167-
var resourceLabel model.LabelName
167+
var resourceGrouping model.LabelName
168168
if req.GetSelector().GetResource().GetType() == k8s.Server {
169-
resourceLabel = serverLabel
169+
resourceGrouping = serverNameLabel
170+
labels = labels.Merge(model.LabelSet{
171+
serverKindLabel: model.LabelValue("server"),
172+
})
173+
if req.GetSelector().GetResource().GetName() != "" {
174+
labels = labels.Merge(model.LabelSet{
175+
serverNameLabel: model.LabelValue(req.GetSelector().GetResource().GetName()),
176+
})
177+
}
170178
} else if req.GetSelector().GetResource().GetType() == k8s.ServerAuthorization {
171-
resourceLabel = serverAuthorizationLabel
172-
}
173-
174-
if req.GetSelector().GetResource().GetName() != "" {
179+
resourceGrouping = authorizationNameLabel
175180
labels = labels.Merge(model.LabelSet{
176-
resourceLabel: model.LabelValue(req.GetSelector().GetResource().GetName()),
181+
authorizationKindLabel: model.LabelValue("serverauthorization"),
177182
})
183+
if req.GetSelector().GetResource().GetName() != "" {
184+
labels = labels.Merge(model.LabelSet{
185+
authorizationNameLabel: model.LabelValue(req.GetSelector().GetResource().GetName()),
186+
})
187+
}
178188
}
179189

180190
switch out := req.Outbound.(type) {
@@ -189,7 +199,7 @@ func buildServerRequestLabels(req *pb.StatSummaryRequest) (labels model.LabelSet
189199
// no extra labels needed
190200
}
191201

192-
groupBy := model.LabelNames{namespaceLabel, resourceLabel}
202+
groupBy := model.LabelNames{namespaceLabel, resourceGrouping}
193203

194204
return labels, groupBy
195205
}

viz/metrics-api/prometheus.go

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -36,14 +36,16 @@ const (
3636
promLatencyP95 = promType("0.95")
3737
promLatencyP99 = promType("0.99")
3838

39-
namespaceLabel = model.LabelName("namespace")
40-
dstNamespaceLabel = model.LabelName("dst_namespace")
41-
gatewayNameLabel = model.LabelName("gateway_name")
42-
gatewayNamespaceLabel = model.LabelName("gateway_namespace")
43-
remoteClusterNameLabel = model.LabelName("target_cluster_name")
44-
authorityLabel = model.LabelName("authority")
45-
serverLabel = model.LabelName("srv_name")
46-
serverAuthorizationLabel = model.LabelName("saz_name")
39+
namespaceLabel = model.LabelName("namespace")
40+
dstNamespaceLabel = model.LabelName("dst_namespace")
41+
gatewayNameLabel = model.LabelName("gateway_name")
42+
gatewayNamespaceLabel = model.LabelName("gateway_namespace")
43+
remoteClusterNameLabel = model.LabelName("target_cluster_name")
44+
authorityLabel = model.LabelName("authority")
45+
serverKindLabel = model.LabelName("srv_kind")
46+
serverNameLabel = model.LabelName("srv_name")
47+
authorizationKindLabel = model.LabelName("authz_kind")
48+
authorizationNameLabel = model.LabelName("authz_name")
4749
)
4850

4951
var (
@@ -117,9 +119,11 @@ func promQueryLabels(resource *pb.Resource) model.LabelSet {
117119
if resource != nil {
118120
if resource.Name != "" {
119121
if resource.GetType() == k8s.Server {
120-
set[serverLabel] = model.LabelValue(resource.GetName())
122+
set[serverKindLabel] = model.LabelValue("server")
123+
set[serverNameLabel] = model.LabelValue(resource.GetName())
121124
} else if resource.GetType() == k8s.ServerAuthorization {
122-
set[serverAuthorizationLabel] = model.LabelValue(resource.GetName())
125+
set[authorizationKindLabel] = model.LabelValue("serverauthorization")
126+
set[authorizationNameLabel] = model.LabelValue(resource.GetName())
123127
} else if resource.GetType() != k8s.Service {
124128
set[promResourceType(resource)] = model.LabelValue(resource.Name)
125129
}

0 commit comments

Comments
 (0)