Merge pull request #10539 from hashicorp/dnephin/backport-to-1.10.x

[1.10.x] Backport main branch rename, and fix 32bit panic
This commit is contained in:
Daniel Nephin 2021-07-05 12:35:56 -04:00 committed by GitHub
commit c8bba8bd60
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
36 changed files with 233 additions and 179 deletions

3
.changelog/10515.txt Normal file
View File

@ -0,0 +1,3 @@
```release-note:bug
agent: fix a panic on 32-bit platforms caused by misaligned struct fields used with sync/atomic.
```

View File

@ -60,7 +60,7 @@ steps:
name: notify-slack-failure
when: on_fail
command: |
if [[ $CIRCLE_BRANCH == "master" ]]; then
if [[ $CIRCLE_BRANCH == "main" ]]; then
CIRCLE_ENDPOINT="https://app.circleci.com/pipelines/github/${CIRCLE_PROJECT_USERNAME}/${CIRCLE_PROJECT_REPONAME}?branch=${CIRCLE_BRANCH}"
GITHUB_ENDPOINT="https://github.com/${CIRCLE_PROJECT_USERNAME}/${CIRCLE_PROJECT_REPONAME}/commit/${CIRCLE_SHA1}"
COMMIT_MESSAGE=$(git log -1 --pretty=%B | head -n1)
@ -79,7 +79,7 @@ steps:
] \
}" "${FEED_CONSUL_GH_URL}"
else
echo "Not posting slack failure notifications for non-master branch"
echo "Not posting slack failure notifications for non-main branch"
fi
commands:
@ -116,14 +116,20 @@ jobs:
- run: go get -u github.com/hashicorp/lint-consul-retry && lint-consul-retry
- run: *notify-slack-failure
# Runs Go linters
lint:
description: "Run golangci-lint"
parameters:
go-arch:
type: string
default: ""
docker:
- image: *GOLANG_IMAGE
environment:
GOTAGS: "" # No tags for OSS but there are for enterprise
GOARCH: "<<parameters.go-arch>>"
steps:
- checkout
- run: go env
- run:
name: Install golangci-lint
command: |
@ -275,6 +281,40 @@ jobs:
path: /tmp/jsonfile
- run: *notify-slack-failure
# go-test-32bit is to catch problems where 64-bit ints must be 64-bit aligned
# to use them with sync/atomic. See https://golang.org/pkg/sync/atomic/#pkg-note-BUG.
# Running tests with GOARCH=386 seems to be the best way to detect this
# problem. Only runs tests that are -short to limit the time we spend checking
# for these bugs.
go-test-32bit:
docker:
- image: *GOLANG_IMAGE
environment:
<<: *ENVIRONMENT
GOTAGS: "" # No tags for OSS but there are for enterprise
steps:
- checkout
- run: *install-gotestsum
- run: go mod download
- run:
name: go test 32-bit
environment:
GOARCH: 386
command: |
mkdir -p $TEST_RESULTS_DIR /tmp/jsonfile
go env
gotestsum \
--jsonfile /tmp/jsonfile/go-test-32bit.log \
--junitfile $TEST_RESULTS_DIR/gotestsum-report.xml -- \
-tags="$GOTAGS" -p 2 \
-short ./...
- store_test_results:
path: *TEST_RESULTS_DIR
- store_artifacts:
path: *TEST_RESULTS_DIR
- run: *notify-slack-failure
go-test-lib:
description: "test a library against a specific Go version"
parameters:
@ -386,7 +426,7 @@ jobs:
<<: *ENVIRONMENT
steps:
- checkout
- attach_workspace: # this normally runs as the first job and has nothing to attach; only used in master branch after rebuilding UI
- attach_workspace: # this normally runs as the first job and has nothing to attach; only used in main branch after rebuilding UI
at: .
- run:
command: make dev
@ -486,7 +526,7 @@ jobs:
path: *TEST_RESULTS_DIR
- run: *notify-slack-failure
# run integration tests on nomad/master
# run integration tests on nomad/main
nomad-integration-main:
docker:
- image: *GOLANG_IMAGE
@ -648,7 +688,7 @@ jobs:
short_sha=$(git rev-parse --short HEAD)
git add agent/uiserver/bindata_assetfs.go
git commit -m "auto-updated agent/uiserver/bindata_assetfs.go from commit ${short_sha}"
git push origin master
git push origin main
else
echo "no UI changes so no static assets to publish"
fi
@ -833,7 +873,7 @@ jobs:
path: *TEST_RESULTS_DIR
- run: *notify-slack-failure
# only runs on master: checks latest commit to see if the PR associated has a backport/* or docs* label to cherry-pick
# only runs on main: checks latest commit to see if the PR associated has a backport/* or docs* label to cherry-pick
cherry-picker:
docker:
- image: docker.mirror.hashicorp.services/alpine:3.12
@ -961,6 +1001,10 @@ workflows:
- check-generated-protobuf: *filter-ignore-non-go-branches
- lint-consul-retry: *filter-ignore-non-go-branches
- lint: *filter-ignore-non-go-branches
- lint:
name: "lint-32bit"
go-arch: "386"
<<: *filter-ignore-non-go-branches
- test-connect-ca-providers: *filter-ignore-non-go-branches
- dev-build: *filter-ignore-non-go-branches
- go-test:
@ -986,6 +1030,7 @@ workflows:
go-version: "1.15"
<<: *filter-ignore-non-go-branches
- go-test-race: *filter-ignore-non-go-branches
- go-test-32bit: *filter-ignore-non-go-branches
build-distros:
unless: << pipeline.parameters.trigger-load-test >>
jobs:
@ -995,12 +1040,12 @@ workflows:
- check-vendor
- build-amd64: *require-check-vendor
- build-arm: *require-check-vendor
# every commit on master will have a rebuilt UI
# every commit on main will have a rebuilt UI
- frontend-cache:
filters:
branches:
only:
- master
- main
- ember-build-prod:
requires:
- frontend-cache
@ -1011,7 +1056,7 @@ workflows:
filters:
branches:
only:
- master
- main
- /release\/\d+\.\d+\.x$/
requires:
- build-static-assets
@ -1036,7 +1081,7 @@ workflows:
branches:
ignore:
- /^pull\/.*$/ # only push dev builds from non forks
- master # all master dev uploads will include a UI rebuild in build-distros
- main # all main dev uploads will include a UI rebuild in build-distros
- dev-upload-docker:
<<: *dev-upload
context: consul-ci
@ -1073,7 +1118,7 @@ workflows:
filters:
branches:
only:
- master
- main
- algolia-index:
context: consul-docs
filters:
@ -1087,7 +1132,7 @@ workflows:
filters:
branches:
only:
- master
- main
- /^ui\/.*/
- workspace-tests:
requires:
@ -1120,14 +1165,14 @@ workflows:
filters:
branches:
only:
- master
- main
- /release\/\d+\.\d+\.x$/
- cherry-picker:
context: team-consul
filters:
branches:
only:
- master
- main
- /release\/\d+\.\d+\.x$/
load-test:
when: << pipeline.parameters.trigger-load-test >>
@ -1141,6 +1186,6 @@ workflows:
filters:
branches:
only:
- master
- main
jobs:
- load-test

View File

@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
# This script is meant to run on every new commit to master in CircleCI. If the commit comes from a PR, it will
# This script is meant to run on every new commit to main in CircleCI. If the commit comes from a PR, it will
# check the PR associated with the commit for labels. If the label matches `docs*` it will be cherry-picked
# to stable-website. If the label matches `backport/*`, it will be cherry-picked to the appropriate `release/*`
# branch.

View File

@ -60,7 +60,7 @@ issue. Stale issues will be closed.
## Building Consul
If you wish to work on Consul itself, you'll first need [Go](https://golang.org)
installed (version 1.14 is _required_).
installed (The version of Go should match the one of our [CI config's](https://github.com/hashicorp/consul/blob/main/.circleci/config.yml) Go image).
Next, clone this repository and then run `make dev`. In a few moments, you'll have a working

View File

@ -4,9 +4,9 @@
on:
pull_request:
types: [opened, synchronize, labeled]
# Runs on PRs to master and all release branches
# Runs on PRs to main and all release branches
branches:
- master
- main
- release/*
jobs:

View File

@ -1,7 +1,7 @@
on:
pull_request:
branches:
- master
- main
types: [labeled]
jobs:
@ -16,9 +16,9 @@ jobs:
- name: Trigger CircleCI Load Test Pipeline
run: |
# build json payload to trigger CircleCI Load Test Pipeline
# This only runs the load test pipeline on the 'master' branch
# This only runs the load test pipeline on the 'main' branch
jsonData=$(jq --null-input -r --arg commit ${{ github.event.pull_request.head.sha }} \
'{branch:"master", parameters: {"commit": $commit, "trigger-load-test": true}}')
'{branch:"main", parameters: {"commit": $commit, "trigger-load-test": true}}')
echo "Passing JSON data to CircleCI API: $jsonData"
load_test_pipeline_id=$(curl -X POST \
-H "Circle-Token: ${{ secrets.CIRCLE_TOKEN }}" \

View File

@ -13,9 +13,9 @@
on:
pull_request_target:
types: [opened]
# Runs on PRs to master and all release branches
# Runs on PRs to main and all release branches
branches:
- master
- main
- release/*
jobs:

View File

@ -1543,7 +1543,7 @@ SECURITY:
IMPROVEMENTS:
* build: Bumped Go version to 1.10 [[GH-3988](https://github.com/hashicorp/consul/pull/3988)]
* agent: Blocking queries on service-specific health and catalog endpoints now return a per-service `X-Consul-Index` improving watch performance on very busy clusters. [[GH-3890](https://github.com/hashicorp/consul/issues/3890)]. **Note this may break blocking clients that relied on undocumented implementation details** as noted in the [upgrade docs](https://github.com/hashicorp/consul/blob/master/website/source/docs/upgrading.html.md#upgrade-from-version-106-to-higher).
* agent: Blocking queries on service-specific health and catalog endpoints now return a per-service `X-Consul-Index` improving watch performance on very busy clusters. [[GH-3890](https://github.com/hashicorp/consul/issues/3890)]. **Note this may break blocking clients that relied on undocumented implementation details** as noted in the [upgrade docs](https://github.com/hashicorp/consul/blob/main/website/source/docs/upgrading.html.md#upgrade-from-version-106-to-higher).
* agent: All endpoints now respond to OPTIONS requests. [[GH-3885](https://github.com/hashicorp/consul/issues/3885)]
* agent: List of supported TLS cipher suites updated to include newer options, [[GH-3962](https://github.com/hashicorp/consul/pull/3962)]
* agent: WAN federation can now be disabled by setting the serf WAN port to -1. [[GH-3984](https://github.com/hashicorp/consul/issues/3984)]
@ -1725,12 +1725,12 @@ BREAKING CHANGES:
| `dogstatsd_tags` | [`telemetry.dogstatsd_tags`](https://www.consul.io/docs/agent/options.html#telemetry-dogstatsd_tags) |
| `http_api_response_headers` | [`http_config.response_headers`](https://www.consul.io/docs/agent/options.html#response_headers) |
| `ports.rpc` | None, the RPC server for CLI commands is no longer supported. |
| `recursor` | [`recursors`](https://github.com/hashicorp/consul/blob/master/website/source/docs/agent/options.html.md#recursors) |
| `recursor` | [`recursors`](https://github.com/hashicorp/consul/blob/main/website/source/docs/agent/options.html.md#recursors) |
| `retry_join_azure` | [`-retry-join`](https://www.consul.io/docs/agent/options.html#microsoft-azure) |
| `retry_join_ec2` | [`-retry-join`](https://www.consul.io/docs/agent/options.html#amazon-ec2) |
| `retry_join_gce` | [`-retry-join`](https://www.consul.io/docs/agent/options.html#google-compute-engine) |
| `statsd_addr` | [`telemetry.statsd_address`](https://github.com/hashicorp/consul/blob/master/website/source/docs/agent/options.html.md#telemetry-statsd_address) |
| `statsite_addr` | [`telemetry.statsite_address`](https://github.com/hashicorp/consul/blob/master/website/source/docs/agent/options.html.md#telemetry-statsite_address) |
| `statsd_addr` | [`telemetry.statsd_address`](https://github.com/hashicorp/consul/blob/main/website/source/docs/agent/options.html.md#telemetry-statsd_address) |
| `statsite_addr` | [`telemetry.statsite_address`](https://github.com/hashicorp/consul/blob/main/website/source/docs/agent/options.html.md#telemetry-statsite_address) |
| `statsite_prefix` | [`telemetry.metrics_prefix`](https://www.consul.io/docs/agent/options.html#telemetry-metrics_prefix) |
| `telemetry.statsite_prefix` | [`telemetry.metrics_prefix`](https://www.consul.io/docs/agent/options.html#telemetry-metrics_prefix) |
| (service definitions) `serviceid` | [`service_id`](https://www.consul.io/docs/agent/services.html) |

View File

@ -176,7 +176,7 @@ ci.dev-docker:
@echo $(DOCKER_PASS) | docker login -u="$(DOCKER_USER)" --password-stdin
@echo "Pushing dev image to: https://cloud.docker.com/u/hashicorpdev/repository/docker/hashicorpdev/consul"
@docker push $(CI_DEV_DOCKER_NAMESPACE)/$(CI_DEV_DOCKER_IMAGE_NAME):$(GIT_COMMIT)
ifeq ($(CIRCLE_BRANCH), master)
ifeq ($(CIRCLE_BRANCH), main)
@docker tag $(CI_DEV_DOCKER_NAMESPACE)/$(CI_DEV_DOCKER_IMAGE_NAME):$(GIT_COMMIT) $(CI_DEV_DOCKER_NAMESPACE)/$(CI_DEV_DOCKER_IMAGE_NAME):latest
@docker push $(CI_DEV_DOCKER_NAMESPACE)/$(CI_DEV_DOCKER_IMAGE_NAME):latest
endif

View File

@ -1,4 +1,4 @@
# Consul [![CircleCI](https://circleci.com/gh/hashicorp/consul/tree/master.svg?style=svg)](https://circleci.com/gh/hashicorp/consul/tree/master) [![Discuss](https://img.shields.io/badge/discuss-consul-ca2171.svg?style=flat)](https://discuss.hashicorp.com/c/consul)
# Consul [![CircleCI](https://circleci.com/gh/hashicorp/consul/tree/main.svg?style=svg)](https://circleci.com/gh/hashicorp/consul/tree/main) [![Discuss](https://img.shields.io/badge/discuss-consul-ca2171.svg?style=flat)](https://discuss.hashicorp.com/c/consul)
* Website: https://www.consul.io
* Tutorials: [HashiCorp Learn](https://learn.hashicorp.com/consul)
@ -54,4 +54,4 @@ https://www.consul.io/docs
## Contributing
Thank you for your interest in contributing! Please refer to [CONTRIBUTING.md](https://github.com/hashicorp/consul/blob/master/.github/CONTRIBUTING.md) for guidance.
Thank you for your interest in contributing! Please refer to [CONTRIBUTING.md](https://github.com/hashicorp/consul/blob/main/.github/CONTRIBUTING.md) for guidance.

View File

@ -5473,7 +5473,7 @@ func TestLoad_FullConfig(t *testing.T) {
HTTPSPort: 15127,
HTTPUseCache: false,
KeyFile: "IEkkwgIA",
KVMaxValueSize: 1234567800000000,
KVMaxValueSize: 1234567800,
LeaveDrainTime: 8265 * time.Second,
LeaveOnTerm: true,
Logging: logging.Config{
@ -5868,7 +5868,7 @@ func TestLoad_FullConfig(t *testing.T) {
"wan_ipv4": "78.63.37.19",
},
TranslateWANAddrs: true,
TxnMaxReqLen: 5678000000000000,
TxnMaxReqLen: 567800000,
UIConfig: UIConfig{
Dir: "pVncV4Ey",
ContentPath: "/qp1WRhYH/", // slashes are added in parsing

View File

@ -285,8 +285,8 @@ limits {
rpc_rate = 12029.43
rpc_max_burst = 44848
rpc_max_conns_per_client = 2954
kv_max_value_size = 1234567800000000
txn_max_req_len = 5678000000000000
kv_max_value_size = 1234567800
txn_max_req_len = 567800000
}
log_level = "k1zo9Spt"
log_json = true

View File

@ -285,8 +285,8 @@
"rpc_rate": 12029.43,
"rpc_max_burst": 44848,
"rpc_max_conns_per_client": 2954,
"kv_max_value_size": 1234567800000000,
"txn_max_req_len": 5678000000000000
"kv_max_value_size": 1234567800,
"txn_max_req_len": 567800000
},
"log_level": "k1zo9Spt",
"log_json": true,

View File

@ -52,8 +52,11 @@ var defaultMetrics = metrics.Default
// statsHandler is a grpc/stats.StatsHandler which emits connection and
// request metrics to go-metrics.
type statsHandler struct {
// activeConns is used with sync/atomic and MUST be 64-bit aligned. To ensure
// alignment on 32-bit platforms this field must remain the first field in
// the struct. See https://golang.org/pkg/sync/atomic/#pkg-note-BUG.
activeConns uint64
metrics *metrics.Metrics
activeConns uint64 // must be 8-byte aligned for atomic access
}
func newStatsHandler(m *metrics.Metrics) *statsHandler {
@ -103,10 +106,11 @@ func (c *statsHandler) HandleConn(_ context.Context, s stats.ConnStats) {
}
type activeStreamCounter struct {
// count is used with sync/atomic and MUST be 64-bit aligned. To ensure
// alignment on 32-bit platforms this field must remain the first field in
// the struct. See https://golang.org/pkg/sync/atomic/#pkg-note-BUG.
count uint64
metrics *metrics.Metrics
// count of the number of open streaming RPCs on a server. It is accessed
// atomically.
count uint64
}
// GRPCCountingStreamInterceptor is a grpc.ServerStreamInterceptor that emits a

View File

@ -555,7 +555,7 @@ function git_push_ref {
local upstream=$(git_upstream "${sdir}") || return 1
# upstream branch for this branch does not track the remote we need to push to
# basically this checks that the upstream (could be something like origin/master) references the correct remote
# basically this checks that the upstream (could be something like origin/main) references the correct remote
# if it doesn't then the string modification wont apply and the var will reamin unchanged and equal to itself.
if test "${upstream#${remote}/}" == "${upstream}"
then

View File

@ -86,7 +86,7 @@ type BootstrapConfig struct {
// configure the aspects that Connect relies upon to work. It's recommended
// that this only be used if necessary, and that it be based on the default
// template in
// https://github.com/hashicorp/consul/blob/master/command/connect/envoy/bootstrap_tpl.go
// https://github.com/hashicorp/consul/blob/main/command/connect/envoy/bootstrap_tpl.go
// for the correct version of Consul and Envoy being used.
OverrideJSONTpl string `mapstructure:"envoy_bootstrap_json_tpl"`

View File

@ -59,6 +59,10 @@ func TestRun_FlagValidation(t *testing.T) {
}
func TestGenerateConfigFromFlags(t *testing.T) {
if testing.Short() {
t.Skip("too slow for testing.Short")
}
cases := []struct {
name string
command func() cmd

View File

@ -22,13 +22,13 @@ The components in this section are shared between Consul agents in client and se
| Directory | Contents |
| --------- | -------- |
| [command/agent](https://github.com/hashicorp/consul/tree/master/command/agent) | This contains the actual CLI command implementation for the `consul agent` command, which mostly just invokes an agent object from the `agent` package. |
| [agent](https://github.com/hashicorp/consul/tree/master/agent) | This is where the agent object is defined, and the top level `agent` package has all of the functionality that's common to both client and server agents. This includes things like service registration, the HTTP and DNS endpoints, watches, and top-level glue for health checks. |
| [agent/config](https://github.com/hashicorp/consul/tree/master/agent/config) | This has all the user-facing [configuration](https://www.consul.io/docs/agent/options.html) processing code, as well as the internal configuration structure that's used by the agent. |
| [agent/checks](https://github.com/hashicorp/consul/tree/master/agent/checks) | This has implementations for the different [health check types](https://www.consul.io/docs/agent/checks.html). |
| [agent/ae](https://github.com/hashicorp/consul/tree/master/agent/ae), [agent/local](https://github.com/hashicorp/consul/tree/master/agent/local) | These are used together to power the agent's [Anti-Entropy Sync Back](https://www.consul.io/docs/internals/anti-entropy.html) process to the Consul servers. |
| [agent/router](https://github.com/hashicorp/consul/tree/master/agent/router), [agent/pool](https://github.com/hashicorp/consul/tree/master/agent/pool) | These are used for routing RPC queries to Consul servers and for connection pooling. |
| [agent/structs](https://github.com/hashicorp/consul/tree/master/agent/structs) | This has definitions of all the internal RPC protocol request and response structures. |
| [command/agent](https://github.com/hashicorp/consul/tree/main/command/agent) | This contains the actual CLI command implementation for the `consul agent` command, which mostly just invokes an agent object from the `agent` package. |
| [agent](https://github.com/hashicorp/consul/tree/main/agent) | This is where the agent object is defined, and the top level `agent` package has all of the functionality that's common to both client and server agents. This includes things like service registration, the HTTP and DNS endpoints, watches, and top-level glue for health checks. |
| [agent/config](https://github.com/hashicorp/consul/tree/main/agent/config) | This has all the user-facing [configuration](https://www.consul.io/docs/agent/options.html) processing code, as well as the internal configuration structure that's used by the agent. |
| [agent/checks](https://github.com/hashicorp/consul/tree/main/agent/checks) | This has implementations for the different [health check types](https://www.consul.io/docs/agent/checks.html). |
| [agent/ae](https://github.com/hashicorp/consul/tree/main/agent/ae), [agent/local](https://github.com/hashicorp/consul/tree/main/agent/local) | These are used together to power the agent's [Anti-Entropy Sync Back](https://www.consul.io/docs/internals/anti-entropy.html) process to the Consul servers. |
| [agent/router](https://github.com/hashicorp/consul/tree/main/agent/router), [agent/pool](https://github.com/hashicorp/consul/tree/main/agent/pool) | These are used for routing RPC queries to Consul servers and for connection pooling. |
| [agent/structs](https://github.com/hashicorp/consul/tree/main/agent/structs) | This has definitions of all the internal RPC protocol request and response structures. |
### Server Components
@ -36,9 +36,9 @@ The components in this section are only used by Consul servers.
| Directory | Contents |
| --------- | -------- |
| [agent/consul](https://github.com/hashicorp/consul/tree/master/agent/consul) | This is where the Consul server object is defined, and the top-level `consul` package has all of the functionality that's used by server agents. This includes things like the internal RPC endpoints. |
| [agent/consul/fsm](https://github.com/hashicorp/consul/tree/master/agent/consul/fsm), [agent/consul/state](https://github.com/hashicorp/consul/tree/master/agent/consul/state) | These components make up Consul's finite state machine (updated by the Raft consensus algorithm) and backed by the state store (based on immutable radix trees). All updates of Consul's consistent state is handled by the finite state machine, and all read queries to the Consul servers are serviced by the state store's data structures. |
| [agent/consul/autopilot](https://github.com/hashicorp/consul/tree/master/agent/consul/autopilot) | This contains a package of functions that provide Consul's [Autopilot](https://www.consul.io/docs/guides/autopilot.html) features. |
| [agent/consul](https://github.com/hashicorp/consul/tree/main/agent/consul) | This is where the Consul server object is defined, and the top-level `consul` package has all of the functionality that's used by server agents. This includes things like the internal RPC endpoints. |
| [agent/consul/fsm](https://github.com/hashicorp/consul/tree/main/agent/consul/fsm), [agent/consul/state](https://github.com/hashicorp/consul/tree/main/agent/consul/state) | These components make up Consul's finite state machine (updated by the Raft consensus algorithm) and backed by the state store (based on immutable radix trees). All updates of Consul's consistent state is handled by the finite state machine, and all read queries to the Consul servers are serviced by the state store's data structures. |
| [agent/consul/autopilot](https://github.com/hashicorp/consul/tree/main/agent/consul/autopilot) | This contains a package of functions that provide Consul's [Autopilot](https://www.consul.io/docs/guides/autopilot.html) features. |
### Other Components
@ -46,12 +46,12 @@ There are several other top-level packages used internally by Consul as well as
| Directory | Contents |
| --------- | -------- |
| [acl](https://github.com/hashicorp/consul/tree/master/api) | This supports the underlying policy engine for Consul's [ACL](https://www.consul.io/docs/guides/acl.html) system. |
| [api](https://github.com/hashicorp/consul/tree/master/api) | This `api` package provides an official Go API client for Consul, which is also used by Consul's [CLI](https://www.consul.io/docs/commands/index.html) commands to communicate with the local Consul agent. |
| [command](https://github.com/hashicorp/consul/tree/master/command) | This contains a sub-package for each of Consul's [CLI](https://www.consul.io/docs/commands/index.html) command implementations. |
| [snapshot](https://github.com/hashicorp/consul/tree/master/snapshot) | This has implementation details for Consul's [snapshot archives](https://www.consul.io/api/snapshot.html). |
| [api/watch](https://github.com/hashicorp/consul/tree/master/api/watch) | This has implementation details for Consul's [watches](https://www.consul.io/docs/agent/watches.html), used both internally to Consul and by the [watch CLI command](https://www.consul.io/docs/commands/watch.html). |
| [website](https://github.com/hashicorp/consul/tree/master/website) | This has the full source code for [consul.io](https://www.consul.io/). Pull requests can update the source code and Consul's documentation all together. |
| [acl](https://github.com/hashicorp/consul/tree/main/api) | This supports the underlying policy engine for Consul's [ACL](https://www.consul.io/docs/guides/acl.html) system. |
| [api](https://github.com/hashicorp/consul/tree/main/api) | This `api` package provides an official Go API client for Consul, which is also used by Consul's [CLI](https://www.consul.io/docs/commands/index.html) commands to communicate with the local Consul agent. |
| [command](https://github.com/hashicorp/consul/tree/main/command) | This contains a sub-package for each of Consul's [CLI](https://www.consul.io/docs/commands/index.html) command implementations. |
| [snapshot](https://github.com/hashicorp/consul/tree/main/snapshot) | This has implementation details for Consul's [snapshot archives](https://www.consul.io/api/snapshot.html). |
| [api/watch](https://github.com/hashicorp/consul/tree/main/api/watch) | This has implementation details for Consul's [watches](https://www.consul.io/docs/agent/watches.html), used both internally to Consul and by the [watch CLI command](https://www.consul.io/docs/commands/watch.html). |
| [website](https://github.com/hashicorp/consul/tree/main/website) | This has the full source code for [consul.io](https://www.consul.io/). Pull requests can update the source code and Consul's documentation all together. |
## FAQ

View File

@ -31,12 +31,12 @@ endpoint calls raft.Apply, which if successful will save the new data in the sta
When the [state.Store commits] it produces an event which is managed by the [EventPublisher]
and sent to any active subscriptions.
[rpcclient/health.Health]: https://github.com/hashicorp/consul/blob/master/agent/rpcclient/health/health.go
[StreamingHealthServices cache-type]: https://github.com/hashicorp/consul/blob/master/agent/cache-types/streaming_health_services.go
[materialized view]: https://github.com/hashicorp/consul/blob/master/agent/submatview/materializer.go
[SubscribeEndpoint]: https://github.com/hashicorp/consul/blob/master/agent/rpc/subscribe/subscribe.go
[EventPublisher]: https://github.com/hashicorp/consul/blob/master/agent/consul/stream/event_publisher.go
[state.Store commits]: https://github.com/hashicorp/consul/blob/master/agent/consul/state/memdb.go
[rpcclient/health.Health]: https://github.com/hashicorp/consul/blob/main/agent/rpcclient/health/health.go
[StreamingHealthServices cache-type]: https://github.com/hashicorp/consul/blob/main/agent/cache-types/streaming_health_services.go
[materialized view]: https://github.com/hashicorp/consul/blob/main/agent/submatview/materializer.go
[SubscribeEndpoint]: https://github.com/hashicorp/consul/blob/main/agent/rpc/subscribe/subscribe.go
[EventPublisher]: https://github.com/hashicorp/consul/blob/main/agent/consul/stream/event_publisher.go
[state.Store commits]: https://github.com/hashicorp/consul/blob/main/agent/consul/state/memdb.go
## Event Publisher

View File

@ -15,7 +15,7 @@ the community.
<ul>
<li>
<a href="https://github.com/hashicorp/consul/tree/master/api">api</a> -
<a href="https://github.com/hashicorp/consul/tree/main/api">api</a> -
Official Go client for the Consul HTTP API
</li>
<li>

View File

@ -470,7 +470,7 @@ The template for a complete provider JavaScript file is given below.
```
Additionally, the built in [Prometheus
provider code](https://github.com/hashicorp/consul/blob/master/ui/packages/consul-ui/vendor/metrics-providers/prometheus.js)
provider code](https://github.com/hashicorp/consul/blob/main/ui/packages/consul-ui/vendor/metrics-providers/prometheus.js)
can be used as a reference.
### Configuring the Agent With a Custom Metrics Provider.

View File

@ -234,7 +234,7 @@ ID for the name specified in `-sidecar-for`.
[`/v1/agent/connect/ca/leaf/`]: /api/agent/connect#service-leaf-certificate
[`/v1/agent/connect/ca/roots`]: /api/agent/connect#certificate-authority-ca-roots
[`/v1/health/connect/:service_id`]: /api/health#list-nodes-for-connect-capable-service
[`api` package]: https://github.com/hashicorp/consul/tree/master/api
[`api` package]: https://github.com/hashicorp/consul/tree/main/api
[`consul/connect/proxy/config.go`]: https://github.com/hashicorp/consul/blob/v1.8.3/connect/proxy/config.go#L187
[`consul/connect/tls.go`]: https://github.com/hashicorp/consul/blob/v1.8.3/connect/tls.go#L232-L237
[discovery chain]: /docs/connect/l7-traffic/discovery-chain

View File

@ -50,7 +50,7 @@ Required by all agents.
**Serf WAN** This is used by servers to gossip over the WAN, to
other servers. As of Consul 0.8 the WAN join flooding feature requires
the Serf WAN port (TCP/UDP) to be listening on both WAN and LAN interfaces. See also:
[Consul 0.8.0 CHANGELOG](https://github.com/hashicorp/consul/blob/master/CHANGELOG.md#080-april-5-2017) and [GH-3058](https://github.com/hashicorp/consul/issues/3058)
[Consul 0.8.0 CHANGELOG](https://github.com/hashicorp/consul/blob/main/CHANGELOG.md#080-april-5-2017) and [GH-3058](https://github.com/hashicorp/consul/issues/3058)
**Server RPC** This is used by servers to handle incoming
requests from other agents.

View File

@ -113,7 +113,7 @@ to update to the new version.
1. Ensure you've read the [Upgrading Consul](/docs/upgrading) documentation.
1. Ensure you've read any [specific instructions](/docs/upgrading/upgrade-specific) for the version you're upgrading
to and the Consul [changelog](https://github.com/hashicorp/consul/blob/master/CHANGELOG.md) for that version.
to and the Consul [changelog](https://github.com/hashicorp/consul/blob/main/CHANGELOG.md) for that version.
1. Read our [Compatibility Matrix](/docs/k8s/upgrade/compatibility) to ensure
your current Helm chart version supports this Consul version. If it does not,
you may need to also upgrade your Helm chart version at the same time.

View File

@ -29,4 +29,4 @@ page_title: 1.9.0
- Drops support for Envoy versions 1.12.0, 1.12.1, 1.12.2, and 1.13.0
- Switches the default gateway port from 443 to 8443 to avoid assumption of Envoy running as root.
For more detailed information, please refer to the [changelog](https://github.com/hashicorp/consul/blob/master/CHANGELOG.md#190-november-24-2020).
For more detailed information, please refer to the [changelog](https://github.com/hashicorp/consul/blob/main/CHANGELOG.md#190-november-24-2020).

View File

@ -950,7 +950,7 @@ here, with examples:
way to define more specific policies. Clients can list or read queries for
which they have "read" access based on their prefix, and similar they can
update any queries for which they have "write" access. An example use for
this type is a query with a well-known name (eg. `prod-master-customer-db`)
this type is a query with a well-known name (eg. `prod-primary-customer-db`)
that is used and known by many clients to provide geo-failover behavior for
a database.

View File

@ -408,7 +408,7 @@ here, with examples:
access that query name. Clients can list or read queries for
which they have "read" access based on their prefix, and similar they can
update any queries for which they have "write" access. An example use for
this type is a query with a well-known name (eg. `prod-master-customer-db`)
this type is a query with a well-known name (eg. `prod-primary-customer-db`)
that is used and known by many clients to provide geo-failover behavior for
a database.

View File

@ -72,7 +72,7 @@ parameters are required to properly configure an auth method of type
- `JWTSupportedAlgs` `(array<string>)` - JWTSupportedAlgs is a list of
supported signing algorithms. Defaults to `RS256`. ([Available
algorithms](https://github.com/hashicorp/consul/blob/master/vendor/github.com/coreos/go-oidc/jose.go#L7))
algorithms](https://github.com/hashicorp/consul/blob/main/vendor/github.com/coreos/go-oidc/jose.go#L7))
- `BoundAudiences` `(array<string>)` - List of `aud` claims that are valid for
login; any match is sufficient.

View File

@ -13,50 +13,50 @@ description: >-
## Introduction
This guide explains how to best upgrade a single Consul Enterprise datacenter to v1.10.0
from a version of Consul that is forwards compatible with v1.10. If you are on a major
version of Consul prior to 1.8, you will need to complete and [upgrade to 1.8.13](/docs/upgrading/instructions)
or higher before continuing with this guide. If you are already on major versions 1.8 or 1.9
from a version of Consul that is forward compatible with v1.10. If you are on a major
version of Consul prior to 1.8, you will need to complete and [upgrade to 1.8.13](/docs/upgrading/instructions)
or higher before continuing with this guide. If you are already on a major version of 1.8 or 1.9, then
this guide will go over the procedures required for upgrading to v1.10. This process
will require intermediate version upgrades to a forwards compatible release of v1.8 or v1.9
as well as other licensing related configuration changes. If you have multiple Consul datacenters
then they are upgraded in the normal order with each upgrade taking into account the instructions below.
will require intermediate version upgrades to a forward-compatible release of v1.8 or v1.9,
as well as other licensing related configuration changes. If you have multiple Consul datacenters,
upgrade them in the normal order and take the following instructions into account for each upgrade.
For the open source version of Consul please follow the
For the open source version of Consul please follow the
[General Upgrade Process](/docs/upgrading/instructions/general-process).
~> You can only upgrade to Consul Enterprise 1.10 from a version of Consul Enterprise
1.8 >= 1.8.13 or 1.9 >= 1.9.7. Other versions of Consul Enterprise are not forwards
~> You can only upgrade to Consul Enterprise 1.10 from a version of Consul Enterprise
1.8 >= 1.8.13 or 1.9 >= 1.9.7. Other versions of Consul Enterprise are not forward
compatible with v1.10 and will cause issues during the upgrade that could result in
agents failing to start due to [changes in the way we manage licenses](/docs/enterprise/license/faq).
## Requirements
- All Consul servers, clients and snapshot agents should be on a version of Consul >= 1.8.0 and < 1.10.0. If
they are not at the minimum version or higher, follow [normal upgrade procedures](/docs/upgrading) to get them there.
- All Consul servers, clients, and snapshot agents should be on a version of Consul >= 1.8.0 and < 1.10.0. If
they are not at the minimum version or higher, follow the [normal upgrade procedures](/docs/upgrading) to upgrade them until the version requirement is met.
## Assumptions
This guides makes the following assumptions:
- You are familiar with the [General Upgrade Process](/docs/upgrading/instructions/general-process).
- You have the ability to run Consul CLI commands.
- If ACLs are in use then you possess a token with at least `operator:read` permissions.
- You have the ability to run Consul CLI commands.
- If ACLs are in use, then you possess a token with at least `operator:read` permissions.
## Considerations
The main breaking changes in Consul Enterprise 1.10 that need special handling during upgrading are
the licensing changes outlined on the [Specific Version Details](/docs/upgrading/upgrade-specific#consul-1-10-0)
page. There are notes on that page about other changes that might cause issues during an upgrade as well.
You can find more granular details in the [licensing FAQ](/docs/enterprise/license/faq) as well as the full
[changelog](https://github.com/hashicorp/consul/blob/master/CHANGELOG.md#1100-june-22-2021).
Looking through these changes prior to upgrading is highly recommended.
The licensing changes outlined on the [Specific Version Details](/docs/upgrading/upgrade-specific#consul-1-10-0)
page are the main breaking changes in Consul Enterprise 1.10 that require special handling during the upgrade process.
The page also describes other changes that might cause issues during an upgrade.
You can also review the [licensing FAQ](/docs/enterprise/license/faq), which includes granular details, as well as the full
[changelog](https://github.com/hashicorp/consul/blob/main/CHANGELOG.md#1100-june-22-2021).
We strongly recommend reviewing the changes prior to upgrading.
## Procedures
~> Any steps in the following section that mention upgrading servers/clients assume that normal safe upgrade
procedures are followed. These instructions require licensing related configuration changes
needed to upgrade to 1.10, and also require intermediate version upgrades to ensure forward compatibility.
Refer to our documentation for the [basic server upgrade process](/docs/upgrading/instructions/general-process),
~> Any steps in the following section that mention upgrading servers/clients assume that normal safe upgrade
procedures are followed. Licensing-related configuration changes are required for upgrading to 1.10.
Intermediate version upgrades are also required to ensure forward compatibility.
Refer to our documentation for the [basic server upgrade process](/docs/upgrading/instructions/general-process),
and for [autopilot assisted upgrades](https://learn.hashicorp.com/tutorials/consul/upgrade-automation)
for more information.
@ -66,13 +66,11 @@ for more information.
consul license get -signed > consul.hclic
```
Note that the command can be run on anywhere that is running Consul already or from some other location
that has network access to the cluster. If run elsewhere than other options to the command may be neede
to direct the request to the right Consul API.
Note that you can run the command from anywhere Consul is already running or from a location that has network access to the cluster.
Additional command line options for directing the request to the correct Consul API may be necessary if the command runs from another location.
This will save the license to a file in the local directory named `consul.hclic`. Having this
will be useful when preparing the license for the 1.10 upgrades later on in the process.
This will save the license to a file in the local directory named `consul.hclic`. Having this
will be useful when preparing the license for the 1.10 upgrades later on in the process.
**2.** Take a snapshot of the cluster by running the following command:
@ -80,24 +78,23 @@ consul license get -signed > consul.hclic
consul snapshot save original.snap
```
Note that the command can be run on anywhere that is running Consul already or from some other location
that has network access to the cluster. If run elsewhere than other options to the command may be neede
to direct the request to the right Consul API.
Note that you can run the command from anywhere Consul is already running or from a location that has network access to the cluster.
Additional command line options for directing the request to the correct Consul API may be necessary if the command runs from another location.
Note that you will need to ensure there is enough disk space in the current directory
to store the snapshot. In the worst case, the snapshot size could be close to the amount
of RAM the Consul server processes are consuming.
Note that you will need to ensure that there is enough disk space in the current directory
to store the snapshot. In the worst case, the snapshot size could be close to the amount
of RAM the Consul server processes are consuming.
This snapshot should not be needed but if something were to go wrong, having
the snapshot would make it possible to restore the previous state.
This snapshot should not be needed, but if something were to go wrong, having
the snapshot would make it possible to restore the previous state.
**3.** Determine if ACLs are enabled by running the following CLI command.
```shell
consul info | grep "acl ="
````
```
If you receive output like either of the following then ACLs are enabled:
If you receive output like either of the following, then ACLs are enabled:
```text
Error querying agent: Unexpected response code: 403 (Permission denied)
@ -108,8 +105,8 @@ Error querying agent: Unexpected response code: 403 (Permission denied)
```
Select the correct tab below based on whether ACLs are enabled or disabled or if you
are operating Consul within Kubernetes.
Select the correct tab below based on whether ACLs are enabled or disabled or if you
are operating Consul within Kubernetes.
<Tabs>
<Tab heading="ACLs Enabled">
@ -126,23 +123,23 @@ Error querying agent: Unexpected response code: 403 (Permission denied)
consul snapshot save intermediate.snap
```
Note that the command can be run on anywhere that is running Consul already or from some other location
that has network access to the cluster. If run elsewhere than [other options](/docs/commands/snapshot/save#api-options)
to the command may be needed to direct the request to the right Consul API.
Note that you can run the command from anywhere Consul is already running or from a location that has network access to the cluster.
If run elsewhere, [additional command line options](/docs/commands/snapshot/save#api-options) may be needed to direct the request to the right Consul API.
Note that you will need to ensure there is enough disk space in the current directory
to store the snapshot. In the worst case, the snapshot size could be close to the amount
of RAM the Consul server processes are consuming.
Note that you will need to ensure there is enough disk space in the current directory
to store the snapshot. In the worst case, the snapshot size could be close to the amount
of RAM the Consul server processes are consuming.
This snapshot should not be needed but if something were to go wrong, having
the snapshot would make it possible to restore the previous state.
This snapshot should not be needed, but if something were to go wrong, having
the snapshot would make it possible to restore the previous state.
**8.** Pre-configure the server agents with a license.
This can either be set with the `license_path` configuration item, the
`CONSUL_LICENSE_PATH` environment variable or the `CONSUL_LICENSE`
environment variable. See the [licensing documentation](/docs/enterprise/license/overview)
for more information about how to configure the license.
This can either be set with the `license_path` configuration item, the
`CONSUL_LICENSE_PATH` environment variable, or the `CONSUL_LICENSE`
environment variable. See the [licensing documentation](/docs/enterprise/license/overview)
for more information about how to configure the license.
You can also refer to the [Apply Enterprise License](https://learn.hashicorp.com/tutorials/consul/deployment-guide#apply-enterprise-license) tutorial for additional information.
**9.** Upgrade all server agents to v1.10.0.
@ -154,26 +151,27 @@ consul snapshot save intermediate.snap
<Tab heading="ACLs Disabled">
~> We do not recommend running in production with ACLs disabled. An alternative upgrade
path involves first enabling ACLs by following [this tutorial](https://learn.hashicorp.com/tutorials/consul/access-control-setup-production)
and then proceeding with the instructions within the "ACLs Enabled" tab.
path involves first enabling ACLs by following [this tutorial](https://learn.hashicorp.com/tutorials/consul/access-control-setup-production)
and then proceeding with the instructions within the "ACLs Enabled" tab.
**4.** Upgrade all server agents to the latest 1.8.x or 1.9.x release.
**5.** Pre-configure the client agents with a license.
This can either be set with the `license_path` configuration item, the
`CONSUL_LICENSE_PATH` environment variable or the `CONSUL_LICENSE`
environment variable. See the [licensing documentation](/docs/enterprise/license/overview)
for more information about how to configure the license. Note that while
Consul Enterprise 1.8.13 and 1.9.7 have the ability to load the license
from these configurations, it is intended to only be used during upgrades.
Licenses loaded this way are not online reloadable. It is therefore important
to promptly proceed with the upgrade and not leave agents in the intermediate state.
This can either be set with the `license_path` configuration item, the
`CONSUL_LICENSE_PATH` environment variable, or the `CONSUL_LICENSE`
environment variable. See the [licensing documentation](/docs/enterprise/license/overview)
for more information about how to configure the license.
You can also refer to the [Apply Enterprise License](https://learn.hashicorp.com/tutorials/consul/deployment-guide#apply-enterprise-license) tutorial for additional information.
Note that while Consul Enterprise 1.8.13 and 1.9.7 have the ability to load the license
from these configurations, it is intended to only be used during upgrades.
Licenses loaded this way are not online reloadable. It is therefore important
to promptly proceed with the upgrade and not leave agents in the intermediate state.
**6.** Upgrade all client agents to the latest 1.8.x or 1.9.x release.
**7.** Pre-configure the snapshot agents with a license. This is the same process that
was executed for the servers in step 5.
was executed for the servers in step 5.
**8.** Upgrade all [snapshot agents](/docs/commands/snapshot/agent) to the latest 1.8.x or 1.9.x release.
@ -183,25 +181,24 @@ consul snapshot save intermediate.snap
consul snapshot save intermediate.snap
```
Note that the command can be run on anywhere that is running Consul already or from some other location
that has network access to the cluster. If run elsewhere than other options to the command may be neede
to direct the request to the right Consul API.
Note that you can run the command from anywhere Consul is already running or from a location that has network access to the cluster.
Additional command line options for directing the request to the correct Consul API may be necessary if the command runs from another location.
Note that you will need to ensure there is enough disk space in the current directory
to store the snapshot. In the worst case, the snapshot size could be close to the amount
of RAM the Consul server processes are consuming.
Note that you will need to ensure there is enough disk space in the current directory
to store the snapshot. In the worst case, the snapshot size could be close to the amount
of RAM the Consul server processes are consuming.
This snapshot should not be needed but if something were to go wrong, having
the snapshot would make it possible to restore the previous state.
This snapshot should not be needed but if something were to go wrong, having
the snapshot would make it possible to restore the previous state.
**8.** Pre-configure the server agents with a license. This is the same process that
was executed for the servers in step 5.
**10.** Pre-configure the server agents with a license. This is the same process that
was executed for the servers in step 5.
**9.** Upgrade all server agents to v1.10.0.
**11.** Upgrade all server agents to v1.10.0.
**10.** Upgrade all client agents to v1.10.0.
**12.** Upgrade all client agents to v1.10.0.
**11.** Upgrade all [snapshot agents](/docs/commands/snapshot/agent) to v1.10.0.
**13.** Upgrade all [snapshot agents](/docs/commands/snapshot/agent) to v1.10.0.
</Tab>
<Tab heading="Kubernetes">
@ -213,35 +210,36 @@ to the latest 1.8.x or 1.9.x before the next steps. Otherwise, this step can be
**6.** Update the value of `global.image` in the values file to the latest 1.8.x or 1.9.x image.
Additionally, ensure that the Kuberenetes secret with the license is specified in the
values `server.enterpriseLicense.secretName` and `server.enterpriseLicense.secretKey`.
Additionally, ensure that the Kuberenetes secret with the license is specified in the
values `server.enterpriseLicense.secretName` and `server.enterpriseLicense.secretKey`.
**7.** Upgrade the cluster.
Follow the steps in the [Kubernetes Upgrade Guide](/docs/k8s/upgrade#upgrade-consul-on-kubernetes)
to upgrade the cluster. Ensure you check the steps to upgrade the [servers](/docs/k8s/upgrade#upgrading-consul-servers)
and the [clients](/docs/k8s/upgrade#upgrading-consul-clients).
Follow the steps in the [Kubernetes Upgrade Guide](/docs/k8s/upgrade#upgrade-consul-on-kubernetes)
to upgrade the cluster. Ensure you check the steps to upgrade the [servers](/docs/k8s/upgrade#upgrading-consul-servers)
and the [clients](/docs/k8s/upgrade#upgrading-consul-clients).
**8.** **If** the Consul servers are running outside the Kubernetes cluster, ensure they are upgraded
to 1.10.0 before the next steps. Otherwise, this step can be skipped.
to 1.10.0 before the next steps. Otherwise, this step can be skipped.
This will require pre-configuring the servers with a license
before running 1.10. This can either be set with the `license_path` configuration item, the
`CONSUL_LICENSE_PATH` environment variable or the `CONSUL_LICENSE`
environment variable. See the [licensing documentation](/docs/enterprise/license/overview)
for more information about how to configure the license. Note that while
Consul Enterprise 1.8.13 and 1.9.7 have the ability to load the license
from these configurations, it is intended to only be used during upgrades.
Licenses loaded this way are not online reloadable. It is therefore important
to promptly proceed with the upgrade and not leave agents in the intermediate state.
This will require pre-configuring the servers with a license
before running 1.10. This can either be set with the `license_path` configuration item, the
`CONSUL_LICENSE_PATH` environment variable or the `CONSUL_LICENSE`
environment variable. See the [licensing documentation](/docs/enterprise/license/overview)
for more information about how to configure the license.
You can also refer to the [Apply Enterprise License](https://learn.hashicorp.com/tutorials/consul/deployment-guide#apply-enterprise-license) tutorial for additional information.
Note that while Consul Enterprise 1.8.13 and 1.9.7 have the ability to load the license
from these configurations, it is intended to only be used during upgrades.
Licenses loaded this way are not online reloadable. It is therefore important
to promptly proceed with the upgrade and not leave agents in the intermediate state.
**9.** Update the value of `global.image` in the values file to the 1.10.0 image.
**10.** Upgrade the cluster.
Follow the steps in the [Kubernetes Upgrade Guide](/docs/k8s/upgrade#upgrade-consul-on-kubernetes)
to then upgrade the cluster. Ensure you check the steps to upgrade the [servers](/docs/k8s/upgrade#upgrading-consul-servers)
and the [clients](/docs/k8s/upgrade#upgrading-consul-clients).
Follow the steps in the [Kubernetes Upgrade Guide](/docs/k8s/upgrade#upgrade-consul-on-kubernetes)
to then upgrade the cluster. Ensure you check the steps to upgrade the [servers](/docs/k8s/upgrade#upgrading-consul-servers)
and the [clients](/docs/k8s/upgrade#upgrading-consul-clients).
</Tab>
</Tabs>

View File

@ -40,7 +40,7 @@ This guide makes the following assumptions:
There are not too many major changes that might cause issues upgrading from 1.0.8, but notable changes
are called out in our [Specific Version Details](/docs/upgrading/upgrade-specific#consul-1-1-0)
page. You can find more granular details in the full [changelog](https://github.com/hashicorp/consul/blob/master/CHANGELOG.md#124-november-27-2018).
page. You can find more granular details in the full [changelog](https://github.com/hashicorp/consul/blob/main/CHANGELOG.md#124-november-27-2018).
Looking through these changes prior to upgrading is highly recommended.
## Procedure

View File

@ -45,7 +45,7 @@ This guide makes the following assumptions:
There are quite a number of changes between releases. Notable changes
are called out in our [Specific Version Details](/docs/upgrading/upgrade-specific#consul-1-6-3)
page. You can find more granular details in the full [changelog](https://github.com/hashicorp/consul/blob/master/CHANGELOG.md#124-november-27-2018).
page. You can find more granular details in the full [changelog](https://github.com/hashicorp/consul/blob/main/CHANGELOG.md#124-november-27-2018).
Looking through these changes prior to upgrading is highly recommended.
Two very notable items are:

View File

@ -33,7 +33,7 @@ This guides makes the following assumptions:
There are not too many major changes that might cause issues upgrading from 1.6.9, but notable changes
are called out in our [Specific Version Details](/docs/upgrading/upgrade-specific#consul-1-8-0)
page. You can find more granular details in the full [changelog](https://github.com/hashicorp/consul/blob/master/CHANGELOG.md#183-august-12-2020).
page. You can find more granular details in the full [changelog](https://github.com/hashicorp/consul/blob/main/CHANGELOG.md#183-august-12-2020).
Looking through these changes prior to upgrading is highly recommended.
## Procedure

View File

@ -542,12 +542,12 @@ upgrading. Here's the complete list of removed options and their equivalents:
| `dogstatsd_tags` | [`telemetry.dogstatsd_tags`](/docs/agent/options#telemetry-dogstatsd_tags) |
| `http_api_response_headers` | [`http_config.response_headers`](/docs/agent/options#response_headers) |
| `ports.rpc` | None, the RPC server for CLI commands is no longer supported. |
| `recursor` | [`recursors`](https://github.com/hashicorp/consul/blob/master/website/pages/docs/agent/options.mdx#recursors) |
| `recursor` | [`recursors`](https://github.com/hashicorp/consul/blob/main/website/pages/docs/agent/options.mdx#recursors) |
| `retry_join_azure` | [`-retry-join`](/docs/agent/options#_retry_join) |
| `retry_join_ec2` | [`-retry-join`](/docs/agent/options#_retry_join) |
| `retry_join_gce` | [`-retry-join`](/docs/agent/options#_retry_join) |
| `statsd_addr` | [`telemetry.statsd_address`](https://github.com/hashicorp/consul/blob/master/website/pages/docs/agent/options.mdx#telemetry-statsd_address) |
| `statsite_addr` | [`telemetry.statsite_address`](https://github.com/hashicorp/consul/blob/master/website/pages/docs/agent/options.mdx#telemetry-statsite_address) |
| `statsd_addr` | [`telemetry.statsd_address`](https://github.com/hashicorp/consul/blob/main/website/pages/docs/agent/options.mdx#telemetry-statsd_address) |
| `statsite_addr` | [`telemetry.statsite_address`](https://github.com/hashicorp/consul/blob/main/website/pages/docs/agent/options.mdx#telemetry-statsite_address) |
| `statsite_prefix` | [`telemetry.metrics_prefix`](/docs/agent/options#telemetry-metrics_prefix) |
| `telemetry.statsite_prefix` | [`telemetry.metrics_prefix`](/docs/agent/options#telemetry-metrics_prefix) |
| (service definitions) `serviceid` | [`service_id`](/docs/agent/services) |

View File

@ -10,7 +10,7 @@ import {
const baseRoute = 'api-docs'
const navDataFile = `data/${baseRoute}-nav-data.json`
const localContentDir = `content/${baseRoute}`
const mainBranch = 'master'
const mainBranch = 'main'
const product = { name: productName, slug: productSlug }
export default function ApiDocsLayout(props) {

View File

@ -10,7 +10,7 @@ import {
const baseRoute = 'commands'
const navDataFile = `data/${baseRoute}-nav-data.json`
const localContentDir = `content/${baseRoute}`
const mainBranch = 'master'
const mainBranch = 'main'
const product = { name: productName, slug: productSlug }
export default function CommandsLayout(props) {

View File

@ -12,7 +12,7 @@ const additionalComponents = { ConfigEntryReference }
const baseRoute = 'docs'
const navDataFile = `data/${baseRoute}-nav-data.json`
const localContentDir = `content/${baseRoute}`
const mainBranch = 'master'
const mainBranch = 'main'
const product = { name: productName, slug: productSlug }
export default function DocsLayout(props) {