Commit Graph

19210 Commits

Author SHA1 Message Date
freddygv 37a765f8df Update leader routine to maybe use gateways 2022-10-13 14:58:00 -06:00
freddygv 239f0e3084 Update peering establishment to maybe use gateways
When peering through mesh gateways we expect outbound dials to peer
servers to flow through the local mesh gateway addresses.

Now when establishing a peering we get a list of dial addresses as a
ring buffer that includes local mesh gateway addresses if the local DC
is configured to peer through mesh gateways. The ring buffer includes
the mesh gateway addresses first, but also includes the remote server
addresses as a fallback.

This fallback is present because it's possible that direct egress from
the servers may be allowed. If not allowed then the leader will cycle
back to a mesh gateway address through the ring.

When attempting to dial the remote servers we retry up to a fixed
timeout. If using mesh gateways we also have an initial wait in
order to allow for the mesh gateways to configure themselves.

Note that if we encounter a permission denied error we do not retry
since that error indicates that the secret in the peering token is
invalid.
2022-10-13 14:57:55 -06:00
malizz 27d0181806
increase protobuf size limit for cluster peering (#14976) 2022-10-13 13:46:51 -07:00
Jasmine W 233a461fd1
Merge pull request #14975 from hashicorp/ui/bugfix/peering-misspelling
UI: Copy changes for peering detail page
2022-10-13 15:28:21 -04:00
Derek Menteer ff01c11672 Address PR comments. 2022-10-13 14:11:02 -05:00
Derek Menteer cc0a05ffa0 Disallow peering to the same cluster. 2022-10-13 14:11:02 -05:00
wenincode ae06401225 Update peers show tests to look for serverAddresses tab 2022-10-13 13:06:11 -06:00
Jasmine W aaf1277c6d Update index.js 2022-10-13 14:42:13 -04:00
Michael Klein 677bbcf4fa Bento-Box show scrollbars only when necessary 2022-10-13 20:27:19 +02:00
Derek Menteer d47c9b446c Prevent consul peer-exports by discovery chain. 2022-10-13 12:45:09 -05:00
Derek Menteer ee49db9a2f Prevent the "consul" service from being exported. 2022-10-13 12:45:09 -05:00
Jasmine W 718d4f5455 UI: Copy changes for peering detail page 2022-10-13 13:45:03 -04:00
wenincode 9d56feb77e Fix linting error 2022-10-13 10:59:48 -06:00
wenincode 3006025bbe Add changelog 2022-10-13 10:43:57 -06:00
wenincode 31cbbc85e3 Move agentless-notice banner css to it's own file 2022-10-13 10:38:26 -06:00
Michael Klein b6020c0b54
Merge pull request #14973 from hashicorp/ui/chore/consol-api-gateway-bottom-sources-filter
ui: Always sort consul-gateway to bottom sources list
2022-10-13 18:34:45 +02:00
wenincode eb2cdcfb94 Add tests for agentless-notice-banner 2022-10-13 10:29:03 -06:00
wenincode 5fc979ee6e Move banner to component and make it dismissable 2022-10-13 10:29:03 -06:00
wenincode 036ccaf72e Add banner for agentless node notice 2022-10-13 10:29:03 -06:00
Derek Menteer bfa4adbfce Add remote peer partition and datacenter info. 2022-10-13 10:37:41 -05:00
Michael Klein e9cd6753c7 Always sort consul-gateway to bottom sources list 2022-10-13 17:13:00 +02:00
Tyler Wendlandt a6b9219808
Merge pull request #14970 from hashicorp/ui/feature/filter-synthetic-nodes
ui: Filter synthetic nodes on nodes list page
2022-10-13 09:12:03 -06:00
Michael Klein e6cce385e7
Merge pull request #14947 from hashicorp/ui/feat/peer-detail-page
ui: peer detail view
2022-10-13 17:03:57 +02:00
Michael Klein b7f5e02109 Add changelog for peers detail page 2022-10-13 16:45:03 +02:00
Michael Klein e8f2024e43 Add tests peers.show 2022-10-13 16:45:03 +02:00
Michael Klein d9b4f5dab4 Fix href-to persists hash
Copy passed hash before manipulating it.

Assigning to the same hash object will break href-to
because in certain scenarios href-to-helper will
not create a new object that gets passed to
`fsm-with-optional`-hrefTo method.

This is problematic for optional route-params, and lead
to a situation where links to peered services would
create the wrong url for their href-attribute.
2022-10-13 16:45:03 +02:00
Michael Klein 4c2a5c31dc Update peering mocks 2022-10-13 16:45:03 +02:00
Michael Klein db4b38c36e Fix linting error dimension service 2022-10-13 16:45:03 +02:00
Michael Klein c3237ebed4 Fix peering regenerate test
* only dialers will show a regenerate token action
* add test that receivers won't show regenerate action
2022-10-13 16:45:03 +02:00
Michael Klein 56e5081f46 Update yarn.lock 2022-10-13 16:45:03 +02:00
Michael Klein e19008e54b Don't `--focus` for dist-vercel
This breaks the vercel deploy as `--focus` will try to install
workspace dependency from the registry:

Reference:
https://github.com/yarnpkg/yarn/issues/5864
https://github.com/yarnpkg/yarn/issues/6715
2022-10-13 16:43:54 +02:00
Michael Klein 8d0c18f1ed Link to peer.show service-instance peer-info 2022-10-13 16:43:54 +02:00
Michael Klein 482ee42efc Prettify dc.services.show template 2022-10-13 16:43:54 +02:00
Michael Klein f2e0df1534 Use translations for empty states peers.show 2022-10-13 16:43:54 +02:00
Michael Klein 35d8035258 Update dimension provider
* simplify implementation
* add docs
2022-10-13 16:43:54 +02:00
Michael Klein 5a8678e596 Rename `peers.edit` to `peers.show` 2022-10-13 16:43:54 +02:00
Michael Klein 3d1f032b51 Fix bucket-list display depends on navigation
We need to explicitly tell the UI to not show the bucket-list
when we are displaying imported services. If we make
this depend on the data we will sometimes not show
it due to data-loader caching.
2022-10-13 16:43:54 +02:00
Michael Klein 0ad4334597 Match design order health states imported-services 2022-10-13 16:43:54 +02:00
Michael Klein 02c74807b3 Use existing freefilter to match existing design 2022-10-13 16:43:49 +02:00
Michael Klein 33cf82a2d5 Add filtering for 'unknown' imported services 2022-10-13 16:43:49 +02:00
Michael Klein fb306b39d8 Add `unknown`-state predicate services
Based on the new peer relationship
2022-10-13 16:43:49 +02:00
Michael Klein 9624ecadb0 Update imported/export count on peers
Api has changed we need to adjust accordingly.
2022-10-13 16:43:49 +02:00
Michael Klein fd94a0681b Add peer as a belongs-to to service
Working with a peer model as a relationship is much
easier than to workaround a non-relationship in
imported services. This is currently only relevant
for imported-services where we know the peer
in advance.
2022-10-13 16:43:49 +02:00
Michael Klein 2f19d4e97e Always transition to imported peers.edit 2022-10-13 16:43:49 +02:00
Michael Klein 1228b9a8a8 Prototype StreamStatus integration peers detail 2022-10-13 16:43:49 +02:00
Michael Klein 2bc2079758 Move peering bento box into dedicated component 2022-10-13 16:43:49 +02:00
Michael Klein b9d5d3cb62 Don't handle undefined in smart-date-format
We will handle that from the outside
2022-10-13 16:43:38 +02:00
Michael Klein 96015e60d5 Add bento box peers.edit 2022-10-13 16:43:38 +02:00
Michael Klein be604a2828 Implement smart-date-format-helper
Add a helper that knows how to format past dates
in a smart way. When less than a week ago we will
use relative date strings - for dates older than a week
we will use a friendly human-readable format.

This matches best practices we want to adhere to
based on what Terraform did for date-formatting.
2022-10-13 16:43:38 +02:00
Michael Klein bd5b47bfa8 Add empty state peers.edit.addresses 2022-10-13 16:43:38 +02:00