Skip to content

ngbuddy does not support the concurrent startup of multiple jails. #14

@zhourainsun

Description

@zhourainsun

I use AppJail. After the system restarts, AppJail will simultaneously launch multiple jails. I found that only one of the two jails was successfully started. Upon reviewing the logs, it was discovered that the problem lies in the "link[NUM]" section where the data retrieval is incorrect.

Below is the system log.

Rename datanode7 to datanode9 instead of datanode7.

Dec 22 02:59:57 hadoop-freebsd-test13 kernel: datanode7: link state changed to DOWN
Dec 22 03:00:30 hadoop-freebsd-test13 kernel: datanode9: link state changed to DOWN
Dec 22 03:01:39 hadoop-freebsd-test13 kernel: ngeth1: Ethernet address: 58:9c:fc:10:7a:fe
Dec 22 03:01:39 hadoop-freebsd-test13 kernel: ngeth1: link state changed to UP
Dec 22 03:01:39 hadoop-freebsd-test13 kernel: ngeth2: Ethernet address: 58:9c:fc:10:69:75
Dec 22 03:01:39 hadoop-freebsd-test13 kernel: ngeth1: changing name to 'datanode7'
Dec 22 03:01:39 hadoop-freebsd-test13 kernel: datanode7: changing name to 'datanode9'
Dec 22 03:01:39 hadoop-freebsd-test13 kernel: lo0: link state changed to UP

jail.conf is as follows

[root@hadoop-freebsd-test13 roothome]$ cat /usr/local/appjail/jails/hdfs-datanode9/conf/jail.conf
hdfs-datanode9 {
exec.start = "/bin/sh /etc/rc";
exec.stop = "/bin/sh /etc/rc.shutdown jail";
mount.devfs;
persist;
vnet;
vnet.interface = "datanode9";
exec.prestart = "service ngbuddy jail datanode9 public";
exec.prestop = "service ngbuddy unjail datanode9 hdfs-datanode9";
exec.consolelog = "/var/log/appjail/jails/hdfs-datanode9/console/2025-12-22.log";
mount.fstab = "/usr/local/appjail/jails/hdfs-datanode9/conf/fstab";
host.hostname = "hdfs-datanode9.appjail";
path = "/usr/local/appjail/jails/hdfs-datanode9/jail";
}
[root@hadoop-freebsd-test13 roothome]$ cat /usr/local/appjail/jails/hdfs-datanode7/conf/jail.conf
hdfs-datanode7 {
exec.start = "/bin/sh /etc/rc";
exec.stop = "/bin/sh /etc/rc.shutdown jail";
mount.devfs;
persist;
allow.raw_sockets;
devfs_ruleset = "4";
vnet;
vnet.interface = "datanode7";
exec.prestart = "service ngbuddy jail datanode7 public";
exec.prestop = "service ngbuddy unjail datanode7 hdfs-datanode7";
exec.consolelog = "/var/log/appjail/jails/hdfs-datanode7/console/2025-12-22.log";
mount.fstab = "/usr/local/appjail/jails/hdfs-datanode7/conf/fstab";
host.hostname = "hdfs-datanode7.appjail";
path = "/usr/local/appjail/jails/hdfs-datanode7/jail";

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions