Foudnation /usr/lib/foundationdb/make_public.py

I have installed foundation DB on 3 servers and now want to run /usr/lib/foundationdb/make_public.py to make foundationdb externally accessible as per build server manual. I dont find this script in the location specified so not sure why. I installed 6.3.24 rpm for linux.

where i will get this script /usr/lib/foundationdb/make_public.py? Should I download it from GIT ?

You can find that here: foundationdb/make_public.py at 07e531947765696c3d0e80703967dd5da420fb28 · apple/foundationdb · GitHub. If you have a specific ip address you want your fdbserver to listen to on be sure to pass that with the -a argument. You can also just edit /etc/foundationdb/fdb.cluster, and then do service foundationdb restart, which is essentially all that script is doing. This should be the last time you edit your cluster file by hand. Future updates (e.g. to change coordinators) should be done through fdbcli. See more here: Configuration — FoundationDB 7.1.

I’m not sure why it’s missing from the 6.3.24 rpm.

yep i got it from GIT and ran it successfully. Now my final status looks as below . I am using 3 nodes and each with 2 data processes. thanks for the reply

fdb> status details

Using cluster file `/etc/foundationdb/fdb.cluster’.

Configuration:
Redundancy mode - double
Storage engine - ssd-2
Coordinators - 3
Usable Regions - 1

Cluster:
FoundationDB processes - 6
Zones - 3
Machines - 3
Memory availability - 8.0 GB per process on machine with least available
Fault Tolerance - 1 machines
Server time - 05/27/22 21:25:39

Data:
Replication health - Healthy
Moving data - 0.000 GB
Sum of key-value sizes - 0 MB
Disk space used - 944 MB

Operating space:
Storage server - 2034.1 GB free on most full server
Log server - 2034.1 GB free on most full server

Workload:
Read rate - 22 Hz
Write rate - 0 Hz
Transactions started - 8 Hz
Transactions committed - 0 Hz
Conflict rate - 0 Hz

Backup and DR:
Running backups - 0
Running DRs - 0

Process performance details:
******:4500 ( 1% cpu; 1% machine; 0.000 Gbps; 0% disk IO; 0.4 GB / 8.0 GB RAM )
******:4501 ( 1% cpu; 1% machine; 0.000 Gbps; 0% disk IO; 0.4 GB / 8.0 GB RAM )
******:4500 ( 1% cpu; 13% machine; 0.001 Gbps; 0% disk IO; 0.4 GB / 8.0 GB RAM )
*****:4501 ( 1% cpu; 13% machine; 0.001 Gbps; 0% disk IO; 0.3 GB / 8.0 GB RAM )
******:4500 ( 1% cpu; 1% machine; 0.000 Gbps; 0% disk IO; 0.4 GB / 8.0 GB RAM )
******:4501 ( 0% cpu; 1% machine; 0.000 Gbps; 0% disk IO; 0.4 GB / 8.0 GB RAM )

Coordination servers:
*******:4500 (reachable)
******:4500 (reachable)
********:4500 (reachable)

Client time: 05/27/22 21:25:39

do you how to check the current of following processes . I know how to change the value but not clear how to check current value before changing the same. “status” does not show these processes count.

  • grv_proxies
  • commit_proxies
  • resolvers
  • logs

I think there might not actually be a user-friendly way of seeing the current config values (although they do seem to show up in status once you actually configure them).

If you want to see what roles are actually running on what workers, (and you have jq) you can do something like fdbcli --exec 'status json' | jq '.cluster.processes | to_entries | map(.value | {address, roles: (.roles | map(.role))})'

Hope that helps

This helps as I do get information .

Can you please also check my new question posted as i am am not clear on setting recommended number of proxies and use all the 4 cpu on each node (total 3 nodes) using fdbserver.ID or “configuration” command.

topic is Need help to understand setting fdbserver.ID