Skip to content

Commit

Permalink
Sorting links in footnotes sections throughout site. (etcd-io#184)
Browse files Browse the repository at this point in the history
Signed-off-by: Nate W <[email protected]>
  • Loading branch information
nate-double-u authored Apr 6, 2021
1 parent 8208033 commit 82e85bb
Show file tree
Hide file tree
Showing 100 changed files with 352 additions and 386 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -54,5 +54,5 @@ Bootstrap another machine and use the [hey HTTP benchmark tool][hey] to send req
| 256 | 64 | all servers | 1033 | 121.5 |
| 256 | 256 | all servers | 3061 | 119.3 |

[hey]: https://github.com/rakyll/hey
[hack-benchmark]: https://github.com/coreos/etcd/tree/master/hack/benchmark
[hey]: https://github.com/rakyll/hey
2 changes: 1 addition & 1 deletion content/docs/next/benchmarks/etcd-2-2-0-rc-benchmarks.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ Bootstrap another machine and use the [hey HTTP benchmark tool][hey] to send req

- write QPS to all servers is increased by 30~80% because follower could receive latest commit index earlier and commit proposals faster.

[hey]: https://github.com/rakyll/hey
[c7146bd5]: https://github.com/coreos/etcd/commits/c7146bd5f2c73716091262edc638401bb8229144
[etcd-2.1-benchmark]: etcd-2-1-0-alpha-benchmarks
[hack-benchmark]: https://github.com/etcd-io/etcd/tree/v2.3.8/hack/benchmark
[hey]: https://github.com/rakyll/hey
Original file line number Diff line number Diff line change
Expand Up @@ -99,4 +99,3 @@ Based on the result, we know the value size does not significantly impact the me

[btree]: https://en.wikipedia.org/wiki/B-tree
[pagecache]: https://en.wikipedia.org/wiki/Page_cache

2 changes: 1 addition & 1 deletion content/docs/next/dev-guide/api_grpc_gateway.md
Original file line number Diff line number Diff line change
Expand Up @@ -130,8 +130,8 @@ curl -L http://localhost:2379/v3/kv/put \
Generated [Swagger][swagger] API definitions can be found at [rpc.swagger.json][swagger-doc].

[api-ref]: ./api_reference_v3
[go-client]: https://github.com/etcd-io/etcd/tree/master/client/v3
[etcdctl]: https://github.com/coreos/etcd/tree/master/etcdctl
[go-client]: https://github.com/etcd-io/etcd/tree/master/client/v3
[grpc]: https://www.grpc.io/
[grpc-gateway]: https://github.com/grpc-ecosystem/grpc-gateway
[json-mapping]: https://developers.google.com/protocol-buffers/docs/proto3#json
Expand Down
2 changes: 1 addition & 1 deletion content/docs/next/dev-guide/local_cluster.md
Original file line number Diff line number Diff line change
Expand Up @@ -149,5 +149,5 @@ To exercise etcd's fault tolerance, kill a member and attempt to retrieve the ke
Restarting the member re-establish the connection. `etcdctl` will now be able to retrieve the key successfully. To learn more about interacting with etcd, read [interacting with etcd section][interacting].
[interacting]: ./interacting_v3
[clustering]: ../op-guide/clustering
[interacting]: ./interacting_v3
2 changes: 1 addition & 1 deletion content/docs/next/dl-build.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,6 @@ OK

If OK is printed, then etcd is working!

[example-hardware-configurations]: op-guide/hardware#example-hardware-configurations
[github-release]: https://github.com/etcd-io/etcd/releases/
[go]: https://golang.org/doc/install
[example-hardware-configurations]: op-guide/hardware#example-hardware-configurations
22 changes: 11 additions & 11 deletions content/docs/next/faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -155,21 +155,21 @@ If none of the above suggestions clear the warnings, please [open an issue][new_
etcd sends a snapshot of its complete key-value store to refresh slow followers and for [backups][backup]. Slow snapshot transfer times increase MTTR; if the cluster is ingesting data with high throughput, slow followers may livelock by needing a new snapshot before finishing receiving a snapshot. To catch slow snapshot performance, etcd warns when sending a snapshot takes more than thirty seconds and exceeds the expected transfer time for a 1Gbps connection.


[hardware-setup]: op-guide/hardware
[supported-platform]: op-guide/supported-platform
[wal_fsync_duration_seconds]: metrics#disk
[tuning]: tuning
[new_issue]: https://github.com/etcd-io/etcd/issues/new
[api-mvcc]: learning/api#revisions
[backend_commit_metrics]: metrics#disk
[raft]: https://raft.github.io/raft.pdf
[backup]: op-guide/recovery#snapshotting-the-keyspace
[chubby]: http://static.googleusercontent.com/media/research.google.com/en//archive/chubby-osdi06.pdf
[runtime reconfiguration]: op-guide/runtime-configuration
[benchmark]: https://github.com/coreos/etcd/tree/master/tools/benchmark
[benchmark-result]: op-guide/performance
[api-mvcc]: learning/api#revisions
[chubby]: http://static.googleusercontent.com/media/research.google.com/en//archive/chubby-osdi06.pdf
[fio]: https://github.com/axboe/fio
[fio-blog-post]: https://www.ibm.com/cloud/blog/using-fio-to-tell-whether-your-storage-is-fast-enough-for-etcd
[hardware-setup]: op-guide/hardware
[maintenance-compact]: op-guide/maintenance#history-compaction-v3-api-key-value-database
[maintenance-defragment]: op-guide/maintenance#defragmentation
[maintenance-disarm]: https://github.com/etcd-io/etcd/blob/master/etcdctl/README.md#alarm-disarm
[fio]: https://github.com/axboe/fio
[fio-blog-post]: https://www.ibm.com/cloud/blog/using-fio-to-tell-whether-your-storage-is-fast-enough-for-etcd
[new_issue]: https://github.com/etcd-io/etcd/issues/new
[raft]: https://raft.github.io/raft.pdf
[runtime reconfiguration]: op-guide/runtime-configuration
[supported-platform]: op-guide/supported-platform
[tuning]: tuning
[wal_fsync_duration_seconds]: metrics#disk
2 changes: 1 addition & 1 deletion content/docs/next/learning/api.md
Original file line number Diff line number Diff line change
Expand Up @@ -477,9 +477,9 @@ message LeaseKeepAliveResponse {
* TTL - the new time-to-live, in seconds, that the lease has remaining.

[elections]: https://github.com/etcd-io/etcd/blob/master/client/v3/concurrency/election.go
[kv-proto]: https://github.com/etcd-io/etcd/blob/master/api/mvccpb/kv.proto
[grpc-api]: ../dev-guide/api_reference_v3
[grpc-service]: https://github.com/etcd-io/etcd/blob/master/api/etcdserverpb/rpc.proto
[kv-proto]: https://github.com/etcd-io/etcd/blob/master/api/mvccpb/kv.proto
[locks]: https://github.com/etcd-io/etcd/blob/master/client/v3/concurrency/mutex.go
[mvcc]: https://en.wikipedia.org/wiki/Multiversion_concurrency_control
[stm]: https://github.com/etcd-io/etcd/blob/master/client/v3/concurrency/stm.go
7 changes: 3 additions & 4 deletions content/docs/next/learning/api_guarantees.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,10 +60,9 @@ etcd ensures linearizability for all other operations by default. Linearizabilit

etcd provides [a lease mechanism][lease]. The primary use case of a lease is implementing distributed coordination mechanisms like distributed locks. The lease mechanism itself is simple: a lease can be created with the grant API, attached to a key with the put API, revoked with the revoke API, and will be expired by the wall clock time to live (TTL). However, users need to be aware about [the important properties of the APIs and usage][why] for implementing correct distributed coordination mechanisms.

[txn]: api#transaction
[lease]: https://web.stanford.edu/class/cs240/readings/89-leases.pdf
[linearizability]: https://cs.brown.edu/~mph/HerlihyW90/p463-herlihy.pdf
[strict_serializability]: http://jepsen.io/consistency/models/strict-serializable
[serializable_isolation]: https://en.wikipedia.org/wiki/Isolation_(database_systems)#Serializable
[Linearizability]: #Linearizability
[lease]: https://web.stanford.edu/class/cs240/readings/89-leases.pdf
[strict_serializability]: http://jepsen.io/consistency/models/strict-serializable
[txn]: api#transaction
[why]: why#notes-on-the-usage-of-lock-and-lease
4 changes: 2 additions & 2 deletions content/docs/next/learning/data_model.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,6 @@ The key of key-value pair is a 3-tuple (major, sub, type). Major is the store re

etcd also keeps a secondary in-memory [btree][btree] index to speed up range queries over keys. The keys in the btree index are the keys of the store exposed to user. The value is a pointer to the modification of the persistent b+tree. Compaction removes dead pointers.

[persistent-ds]: https://en.wikipedia.org/wiki/Persistent_data_structure
[btree]: https://en.wikipedia.org/wiki/B-tree
[b+tree]: https://en.wikipedia.org/wiki/B%2B_tree
[btree]: https://en.wikipedia.org/wiki/B-tree
[persistent-ds]: https://en.wikipedia.org/wiki/Persistent_data_structure
4 changes: 2 additions & 2 deletions content/docs/next/learning/lock/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ failed to write to storage: error: given version (4703569812595502721) differ fr
### Notes on the parameters related to stop the world GC pause
`client` program includes two constant values: `nrGarbageObjects` and `sessionTTL`. These parameters are configured for causing lease expiration with stop the world GC pause of go runtime. They heavily rely on resources of a machine for executing the example. If lease expiration doesn't happen on your machine, update these parameters and try again.

[why.md]: ../why#notes-on-the-usage-of-lock-and-lease
[fencing]: https://martin.kleppmann.com/2016/02/08/how-to-do-distributed-locking.html
[unsafe-lock]: https://martin.kleppmann.com/2016/02/unsafe-lock.png
[fencing-tokens]: https://martin.kleppmann.com/2016/02/fencing-tokens.png
[unsafe-lock]: https://martin.kleppmann.com/2016/02/unsafe-lock.png
[why.md]: ../why#notes-on-the-usage-of-lock-and-lease
68 changes: 34 additions & 34 deletions content/docs/next/learning/why.md
Original file line number Diff line number Diff line change
Expand Up @@ -97,48 +97,48 @@ Why do etcd and other systems provide lease if they provide mutual exclusion bas

Note that in the case of etcd keys, it can be locked efficiently because of the mechanisms of lease and version number validation. If users need to protect resources which aren't related to etcd, the resources must provide the version number validation mechanism and consistency of replicas like keys of etcd. The lock feature of etcd itself cannot be used for protecting external resources.

[production-users]: https://github.com/etcd-io/etcd/blob/master/ADOPTERS.md
[grpc]: https://www.grpc.io
[chubby]: https://research.google/pubs/pub27897/
[cockroach]: https://github.com/cockroachdb/cockroach
[cockroach-grant]: https://www.cockroachlabs.com/docs/stable/grant.html
[consul-acl]: https://www.consul.io/docs/internals/acl.html
[consul-bulletproof]: https://www.consul.io/docs/internals/sessions.html
[consul-json]: https://www.consul.io/docs/agent/http.html#formatted-json-output
[consul-linread]: https://www.consul.io/docs/agent/http.html#consistency
[consul-lock]: https://www.consul.io/commands/lock
[consul-reconfig]: https://www.consul.io/docs/guides/servers.html
[consul-txn]: https://www.consul.io/docs/agent/http/kv.html#txn
[consul-watch]: https://www.consul.io/docs/agent/watches.html
[container-linux]: https://coreos.com/why
[curator]: http://curator.apache.org/
[cockroach]: https://github.com/cockroachdb/cockroach
[spanner]: https://cloud.google.com/spanner/
[tidb]: https://github.com/pingcap/tidb
[etcd-v3lock]: https://godoc.org/github.com/etcd-io/etcd/server/etcdserver/api/v3lock/v3lockpb
[etcd-v3election]: https://godoc.org/github.com/etcd-io/etcd/server/etcdserver/api/v3election/v3electionpb
[etcd-etcdctl-lock]: https://github.com/etcd-io/etcd/blob/master/etcdctl/README.md#lock-options-lockname-command-arg1-arg2-
[dbtester-comparison-results]: https://github.com/coreos/dbtester/tree/master/test-results/2018Q1-02-etcd-zookeeper-consul
[etcd-commonname]: ../op-guide/authentication#using-tls-common-name
[etcd-etcdctl-elect]: https://github.com/etcd-io/etcd/blob/master/etcdctl/README.md#elect-options-election-name-proposal
[etcd-etcdctl-lock]: https://github.com/etcd-io/etcd/blob/master/etcdctl/README.md#lock-options-lockname-command-arg1-arg2-
[etcd-json]: ../dev-guide/api_grpc_gateway
[etcd-linread]: api_guarantees#isolation-level-and-consistency-of-replicas
[etcd-mvcc]: data_model
[etcd-rbac]: ../op-guide/authentication#working-with-roles
[etcd-recipe]: https://godoc.org/github.com/etcd-io/etcd/client/v3/experimental/recipes
[consul-lock]: https://www.consul.io/commands/lock
[newsql-leader]: http://dl.acm.org/citation.cfm?id=2960999
[etcd-reconfig]: ../op-guide/runtime-configuration
[zk-reconfig]: https://zookeeper.apache.org/doc/current/zookeeperReconfig.html
[consul-reconfig]: https://www.consul.io/docs/guides/servers.html
[etcd-linread]: api_guarantees#isolation-level-and-consistency-of-replicas
[consul-linread]: https://www.consul.io/docs/agent/http.html#consistency
[etcd-json]: ../dev-guide/api_grpc_gateway
[consul-json]: https://www.consul.io/docs/agent/http.html#formatted-json-output
[etcd-txn]: api#transaction
[zk-txn]: https://zookeeper.apache.org/doc/r3.4.3/api/org/apache/zookeeper/ZooKeeper.html#multi(java.lang.Iterable)
[consul-txn]: https://www.consul.io/docs/agent/http/kv.html#txn
[etcd-v3election]: https://godoc.org/github.com/etcd-io/etcd/server/etcdserver/api/v3election/v3electionpb
[etcd-v3lock]: https://godoc.org/github.com/etcd-io/etcd/server/etcdserver/api/v3lock/v3lockpb
[etcd-watch]: api#watch-streams
[zk-watch]: https://zookeeper.apache.org/doc/current/zookeeperProgrammers.html#ch_zkWatches
[consul-watch]: https://www.consul.io/docs/agent/watches.html
[etcd-commonname]: ../op-guide/authentication#using-tls-common-name
[etcd-rbac]: ../op-guide/authentication#working-with-roles
[zk-acl]: https://zookeeper.apache.org/doc/r3.1.2/zookeeperProgrammers.html#sc_ZooKeeperAccessControl
[consul-acl]: https://www.consul.io/docs/internals/acl.html
[cockroach-grant]: https://www.cockroachlabs.com/docs/stable/grant.html
[spanner-roles]: https://cloud.google.com/spanner/docs/iam#roles
[zk-bindings]: https://zookeeper.apache.org/doc/r3.1.2/zookeeperProgrammers.html#ch_bindings
[container-linux]: https://coreos.com/why
[locksmith]: https://github.com/coreos/locksmith
[kubernetes]: https://kubernetes.io/docs/concepts/overview/what-is-kubernetes/
[dbtester-comparison-results]: https://github.com/coreos/dbtester/tree/master/test-results/2018Q1-02-etcd-zookeeper-consul
[etcdlease]: https://godoc.org/github.com/etcd-io/etcd/client/v3/leasing
[lease]: https://web.stanford.edu/class/cs240/readings/89-leases.pdf
[chubby]: https://research.google/pubs/pub27897/
[fencing]: https://martin.kleppmann.com/2016/02/08/how-to-do-distributed-locking.html
[physicalclock]: http://www.dainf.cefetpr.br/~tacla/SDII/PracticalUseOfClocks.pdf
[fencing-zk]: https://fpj.me/2016/02/10/note-on-fencing-and-distributed-locks/
[grpc]: https://www.grpc.io
[kubernetes]: https://kubernetes.io/docs/concepts/overview/what-is-kubernetes/
[lease]: https://web.stanford.edu/class/cs240/readings/89-leases.pdf
[locksmith]: https://github.com/coreos/locksmith
[newsql-leader]: http://dl.acm.org/citation.cfm?id=2960999
[physicalclock]: http://www.dainf.cefetpr.br/~tacla/SDII/PracticalUseOfClocks.pdf
[production-users]: https://github.com/etcd-io/etcd/blob/master/ADOPTERS.md
[spanner]: https://cloud.google.com/spanner/
[spanner-roles]: https://cloud.google.com/spanner/docs/iam#roles
[tidb]: https://github.com/pingcap/tidb
[zk-acl]: https://zookeeper.apache.org/doc/r3.1.2/zookeeperProgrammers.html#sc_ZooKeeperAccessControl
[zk-bindings]: https://zookeeper.apache.org/doc/r3.1.2/zookeeperProgrammers.html#ch_bindings
[zk-reconfig]: https://zookeeper.apache.org/doc/current/zookeeperReconfig.html
[zk-txn]: https://zookeeper.apache.org/doc/r3.4.3/api/org/apache/zookeeper/ZooKeeper.html#multi(java.lang.Iterable)
[zk-watch]: https://zookeeper.apache.org/doc/current/zookeeperProgrammers.html#ch_zkWatches
2 changes: 1 addition & 1 deletion content/docs/next/metrics.md
Original file line number Diff line number Diff line change
Expand Up @@ -116,8 +116,8 @@ Heavy file descriptor (`process_open_fds`) usage (i.e., near the process's file

{{< metrics-list dir="../content/docs/next/metrics" regexp="." >}}

[go-grpc-prometheus]: https://github.com/grpc-ecosystem/go-grpc-prometheus
[prometheus]: https://prometheus.io/
[prometheus-getting-started]: https://prometheus.io/docs/introduction/getting_started/
[prometheus-naming]: https://prometheus.io/docs/practices/naming/
[v2-http-metrics]: /docs/v2.3/metrics/#http-requests
[go-grpc-prometheus]: https://github.com/grpc-ecosystem/go-grpc-prometheus
8 changes: 4 additions & 4 deletions content/docs/next/op-guide/clustering.md
Original file line number Diff line number Diff line change
Expand Up @@ -486,15 +486,15 @@ When the `--proxy` flag is set, etcd runs in [proxy mode][proxy]. This proxy mod

To setup an etcd cluster with proxies of v2 API, please read the the [clustering doc in etcd 2.3 release][clustering_etcd2].

[clustering_etcd2]: https://github.com/coreos/etcd/blob/release-2.3/Documentation/clustering.md
[conf-adv-client]: configuration#--advertise-client-urls
[conf-listen-client]: configuration#--listen-client-urls
[discovery-proto]: ../dev-internal/discovery_protocol
[gateway]: gateway
[proxy]: https://github.com/coreos/etcd/blob/release-2.3/Documentation/proxy.md
[rfc-srv]: http://www.ietf.org/rfc/rfc2052.txt
[runtime-conf]: runtime-configuration
[runtime-reconf-design]: runtime-reconf-design
[proxy]: https://github.com/coreos/etcd/blob/release-2.3/Documentation/proxy.md
[clustering_etcd2]: https://github.com/coreos/etcd/blob/release-2.3/Documentation/clustering.md
[security-guide]: security
[security-guide-dns-srv]: security#notes-for-dns-srv
[security-guide]: security
[tls-setup]: https://github.com/etcd-io/etcd/tree/master/hack/tls-setup
[gateway]: gateway
1 change: 0 additions & 1 deletion content/docs/next/op-guide/hardware.md
Original file line number Diff line number Diff line change
Expand Up @@ -95,4 +95,3 @@ Example application workload: A 3,000 node Kubernetes cluster
[fio]: https://github.com/axboe/fio
[fio-blog-post]: https://www.ibm.com/cloud/blog/using-fio-to-tell-whether-your-storage-is-fast-enough-for-etcd
[tuning]: ../tuning.md

2 changes: 1 addition & 1 deletion content/docs/next/op-guide/monitoring.md
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,6 @@ Sample dashboard:
![](../etcd-sample-grafana.png)


[prometheus]: https://prometheus.io/
[grafana]: http://grafana.org/
[prometheus]: https://prometheus.io/
[template]: ../grafana.json
10 changes: 5 additions & 5 deletions content/docs/next/op-guide/runtime-configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -240,13 +240,13 @@ It is enabled by default.
[cluster-reconf]: #cluster-reconfiguration-operations
[conf-adv-peer]: configuration#clustering-flags
[conf-name]: configuration#member-flags
[design-learner]: ../learning/design-learner
[disaster recovery]: recovery
[error cases when promoting a member]: #error-cases-when-promoting-a-learner-member
[fault tolerance table]: /docs/v2.3/admin_guide#fault-tolerance-table
[majority failure]: #restart-cluster-from-majority-failure
[member migration]: /docs/v2.3/admin_guide#member-migration
[member-api]: /docs/v2.3/members_api
[member-api-grpc]: ../dev-guide/api_reference_v3
[remove member]: #remove-a-member
[runtime-reconf]: runtime-reconf-design
[error cases when promoting a member]: #error-cases-when-promoting-a-learner-member
[design-learner]: ../learning/design-learner
[member-api]: /docs/v2.3/members_api
[member migration]: /docs/v2.3/admin_guide#member-migration
[fault tolerance table]: /docs/v2.3/admin_guide#fault-tolerance-table
6 changes: 3 additions & 3 deletions content/docs/next/op-guide/security.md
Original file line number Diff line number Diff line change
Expand Up @@ -437,9 +437,9 @@ No. etcd doesn't encrypt key/value data stored on disk drives. If a user need to
### I’m seeing a log warning that "directory X exist without recommended permission -rwx------"
When etcd create certain new directories it sets file permission to 700 to prevent unprivileged access as possible. However, if user has already created a directory with own preference, etcd uses the existing directory and logs a warning message if the permission is different than 700.

[cfssl]: https://github.com/cloudflare/cfssl
[tls-setup]: https://github.com/etcd-io/etcd/tree/master/hack/tls-setup
[tls-guide]: https://github.com/coreos/docs/blob/master/os/generate-self-signed-certificates.md
[alt-name]: http://wiki.cacert.org/FAQ/subjectAltName
[auth]: authentication
[cfssl]: https://github.com/cloudflare/cfssl
[dm-crypt]: https://en.wikipedia.org/wiki/Dm-crypt
[tls-guide]: https://github.com/coreos/docs/blob/master/os/generate-self-signed-certificates.md
[tls-setup]: https://github.com/etcd-io/etcd/tree/master/hack/tls-setup
2 changes: 1 addition & 1 deletion content/docs/next/op-guide/supported-platform.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,5 +40,5 @@ To avoid inadvertently running a possibly unstable etcd server, `etcd` on unstab

Currently amd64 and ppc64le architectures are officially supported by `etcd`.

[go-issue]: https://github.com/golang/go/issues/599
[go-atomic]: https://golang.org/pkg/sync/atomic/#pkg-note-BUG
[go-issue]: https://github.com/golang/go/issues/599
6 changes: 3 additions & 3 deletions content/docs/next/platforms/container-linux-systemd.md
Original file line number Diff line number Diff line change
Expand Up @@ -199,9 +199,9 @@ To stop and disable:
systemctl disable --now etcd2.service
```
[systemd-docs]: https://github.com/systemd/systemd
[container-linux-ct]: https://github.com/coreos/container-linux-config-transpiler
[container-linux-docs]: https://coreos.com/os/docs/latest
[container-linux-faq]: https://github.com/coreos/docs/blob/master/etcd/os-faq.md
[container-linux-provision]: https://github.com/coreos/docs/blob/master/os/provisioning.md
[container-linux-ignition]: https://github.com/coreos/docs/blob/master/ignition/what-is-ignition.md
[container-linux-ct]: https://github.com/coreos/container-linux-config-transpiler
[container-linux-provision]: https://github.com/coreos/docs/blob/master/os/provisioning.md
[systemd-docs]: https://github.com/systemd/systemd
Loading

0 comments on commit 82e85bb

Please sign in to comment.