Skip to content

Commit 00448f4

Browse files
DLPX-96025 zfs_arc_meta_strategy no longer exists
PR URL: https://www.github.com/delphix/delphix-platform/pull/553
1 parent b4b9b8f commit 00448f4

File tree

3 files changed

+59
-17
lines changed

3 files changed

+59
-17
lines changed

README.md

Lines changed: 58 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,38 @@
44

55
### Building
66

7+
#### Prerequisites: SSH Key Setup
8+
9+
Before cloning a build VM, ensure your SSH keys are loaded in ssh-agent so they
10+
are automatically installed on the VM for passwordless access:
11+
12+
$ ssh-add -l # Check if keys are loaded
13+
$ ssh-add ~/.ssh/id_ed25519 # Load your key if not already loaded
14+
15+
The `dc clone-latest` command will automatically install your public key from
16+
ssh-agent onto the VM. If no key is available, you'll see a warning and the
17+
VM won't be accessible via SSH key authentication.
18+
19+
**Manual SSH Key Setup (if automatic setup fails):**
20+
21+
If you cloned the VM before loading your keys, or the automatic setup didn't
22+
work, you can manually configure passwordless SSH. First, log in with standard
23+
password:
24+
25+
$ ssh delphix@$USER-bootstrap.dlpxdc.co
26+
27+
Then add your public key to authorized_keys:
28+
29+
$ mkdir -p ~/.ssh && chmod 700 ~/.ssh
30+
$ echo "YOUR_PUBLIC_KEY_HERE" >> ~/.ssh/authorized_keys
31+
$ chmod 600 ~/.ssh/authorized_keys
32+
33+
To get your public key, run this on your local machine:
34+
35+
$ cat ~/.ssh/id_ed25519.pub # or id_rsa.pub
36+
37+
#### Create Build VM
38+
739
Run this command on "dlpxdc.co" to create the VM used to do the build:
840

941
$ dc clone-latest --size COMPUTE_LARGE dlpx-internal-buildserver-develop $USER-bootstrap
@@ -12,10 +44,35 @@ Log into that VM using the "delphix" user, and run these commands:
1244

1345
$ git clone https://github.com/delphix/delphix-platform.git
1446
$ cd delphix-platform
15-
$ sudo apt-get update && sudo apt-get install python3-docker
47+
48+
#### Bootstrap and Build
49+
50+
For Ubuntu 18.04/20.04 build servers:
51+
52+
$ sudo apt-get update && sudo apt-get install -y python3-docker
1653
$ ansible-playbook bootstrap/playbook.yml
1754
$ ./scripts/docker-run.sh make packages
1855

56+
For Ubuntu 24.04+ (where python3-docker package is unavailable):
57+
58+
$ sudo apt-get update && sudo apt-get install -y docker.io python3-pip
59+
$ sudo pip3 install docker --break-system-packages
60+
$ sudo usermod -aG docker $USER
61+
$ sudo docker build -t delphix-platform docker/
62+
$ sg docker -c './scripts/docker-run.sh make packages'
63+
64+
#### Build Specific Platforms
65+
66+
To build for a specific platform instead of all platforms:
67+
68+
$ ./scripts/docker-run.sh make package-aws # AWS only
69+
$ ./scripts/docker-run.sh make package-azure # Azure only
70+
$ ./scripts/docker-run.sh make package-esx # ESX only
71+
72+
Available platforms: aws, azure, esx, gcp, hyperv, kvm, oci
73+
74+
Build artifacts are placed in the `artifacts/` directory.
75+
1976
## Contributing
2077

2178
All contributors are required to sign the Delphix Contributor Agreement prior

debian/postinst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ configure)
4646
systemctl disable motd-news.timer
4747

4848
# Disable multipathd service by default. It will be enabled if the iSCSI initiator feature is used
49-
systemctl disable multipathd.service
49+
systemctl disable multipathd.service
5050

5151
#
5252
# Various tools generate mail on the system, e.g. cron, and we don't

files/common/lib/modprobe.d/10-zfs.conf

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -83,21 +83,6 @@ options zfs zfs_mg_noalloc_threshold=5
8383
#
8484
options zfs zfs_override_estimate_recordsize=8192
8585

86-
#
87-
# The default arc metadata eviction policy is a balanced policy. This policy
88-
# evicts both data and metadata and provides a callback to the ZPL layer
89-
# to evict blocks from the inode and dentry caches. This policy has serious
90-
# implications because it tries too hard to reduce metadata so that it's
91-
# below the arc_meta_limit. As a result this can end up consuming all of
92-
# the cpus and causing the system to run out of memory. Since the arc
93-
# metadata eviction is called in the critical path, we want a lightweight
94-
# policy to be used to ensure that eviction happens quickly and new additions
95-
# to the arc are not blocked for a significant amount of time. To do this,
96-
# we changes the metadata eviction policy to ARC_STRATEGY_META_ONLY,
97-
# which is what we used in illumos.
98-
#
99-
options zfs zfs_arc_meta_strategy=0
100-
10186
#
10287
# Increasing zvol taskq threads to 256 to improve performance for some
10388
# workloads. Taskq threads are created and destroyed dynamically so there

0 commit comments

Comments
 (0)