mirror of https://github.com/linkerd/linkerd2.git
* Fix HA race when installing through Helm Fixes #7699 The problem didn't affect 2.11, only latest edges since the Helm charts got split into `linkerd-crds` and `linkerd-control-plane` and we stopped creating the linkerd namespace. With the surrendering of the creation of the namespace, we can no longer guarantee the existence of the `config.linkerd.io/admission-webhooks` label, so this PR creates an `objectSelector` for the injector that filters-out control-plane components, based on the existence of the `linkerd.io/control-plane-component` label. Given we still want the multicluster components to be injected, we had to be rename its `linkerd.io/control-plane-component` label to `component`, following the same convention used by the other extensions. The corresponding Prometheus rule for scraping the service mirrors was updated accordingly. A similar filter was added for the linkerd-cni DaemonSet. Also, now that the `kubernetes.io/metadata.name` is prevalent, we're also using it to filter out the kube-system and cert-manager namespaces. The former namespace was already mentioned in the docs; the latter is also included to avoid having races with cert-manager-cainjector which can be used to provision the injector's cert. |
||
|---|---|---|
| .. | ||
| templates | ||
| .helmignore | ||
| Chart.yaml | ||
| NOTES.txt | ||
| README.md | ||
| README.md.gotmpl | ||
| requirements.lock | ||
| requirements.yaml | ||
| values-ha.yaml | ||
| values.yaml | ||
README.md
linkerd-multicluster
The Linkerd-Multicluster extension contains resources to support multicluster linking to remote clusters
Homepage: https://linkerd.io
Quickstart and documentation
You can run Linkerd on any Kubernetes 1.20+ cluster in a matter of seconds. See the Linkerd Getting Started Guide for how.
For more comprehensive documentation, start with the Linkerd docs.
Prerequisite: Linkerd Core Control-Plane
Before installing the Linkerd Multicluster extension, The core control-plane has to be installed first by following the Linkerd Install Guide.
Adding Linkerd's Helm repository
# To add the repo for Linkerd stable releases:
helm repo add linkerd https://helm.linkerd.io/stable
# To add the repo for Linkerd edge releases:
helm repo add linkerd-edge https://helm.linkerd.io/edge
The following instructions use the linkerd repo. For installing an edge
release, just replace with linkerd-edge.
Installing the Multicluster Extension Chart
helm install linkerd-multicluster -n linkerd-multicluster --create-namespace linkerd/linkerd-multicluster
Get involved
- Check out Linkerd's source code at GitHub.
- Join Linkerd's user mailing list, developer mailing list, and announcements mailing list.
- Follow @linkerd on Twitter.
- Join the Linkerd Slack.
Requirements
Kubernetes: >=1.20.0-0
| Repository | Name | Version |
|---|---|---|
| file://../../../charts/partials | partials | 0.1.0 |
Values
| Key | Type | Default | Description |
|---|---|---|---|
| enablePSP | bool | false |
Create Roles and RoleBindings to associate this extension's ServiceAccounts to the control plane PSP resource. This requires that enabledPSP is set to true on the control plane install. Note PSP has been deprecated since k8s v1.21 |
| enablePodAntiAffinity | bool | false |
Enables Pod Anti Affinity logic to balance the placement of replicas across hosts and zones for High Availability. Enable this only when you have multiple replicas of components. |
| gateway.enabled | bool | true |
If the gateway component should be installed |
| gateway.loadBalancerIP | string | "" |
Set loadBalancerIP on gateway service |
| gateway.name | string | "linkerd-gateway" |
The name of the gateway that will be installed |
| gateway.port | int | 4143 |
The port on which all the gateway will accept incoming traffic |
| gateway.probe.path | string | "/ready" |
The path that will be used by remote clusters for determining whether the gateway is alive |
| gateway.probe.port | int | 4191 |
The port used for liveliness probing |
| gateway.probe.seconds | int | 3 |
|
| gateway.replicas | int | 1 |
Number of replicas for the gateway pod |
| gateway.serviceAnnotations | object | {} |
Annotations to add to the gateway service |
| gateway.serviceType | string | "LoadBalancer" |
Service Type of gateway Service |
| identityTrustDomain | string | "cluster.local" |
Identity Trust Domain of the certificate authority |
| linkerdNamespace | string | "linkerd" |
Namespace of linkerd installation |
| linkerdVersion | string | "linkerdVersionValue" |
Control plane version |
| proxyOutboundPort | int | 4140 |
The port on which the proxy accepts outbound traffic |
| remoteMirrorServiceAccount | bool | true |
If the remote mirror service account should be installed |
| remoteMirrorServiceAccountName | string | "linkerd-service-mirror-remote-access-default" |
The name of the service account used to allow remote clusters to mirror local services |
Autogenerated from chart metadata using helm-docs v1.4.0