NS-Arm general discussion: direction / user cases / what comes to the table


(Mark Verlinde) #1

Hi ARM enthusiasts,

Let us share our thoughts about the development of nethserver on ARM :thinking:

@dz00te in an thread you said you have some ideas / suggestions…

@mrmarkuz I agree using it as an backup gateway / dhcp server if your home NS-setup is in “maintenance” is a nice user case.

@Jim “Is this stuff is Nethserver ready?” Well, for 32bit arm (armhpf = rpi) this is hard to say because there is no and probably never will be an epel-repository. For 64 bit its already there and therefor see no reason this is going to be impossible.

@Andy_Wismer @ForgottenBeast @bwdjames @jackyes @denis.robel


(Markus Neuberger) #2

I use a rpi as webserver for hosting a NethServer mirror with a cron rsync script for updating the mirror. I can also imagine using it as monitoring agent (nagios, zabbix).

But I think I have to go 64 bit because of more RAM and epel…


(fpausp) #3

Good morning…, what 64bit Hardware could we use, instead of the cheap RPI?


(Mark Verlinde) #4

That’s a good question, personally i have good experiences with the (not so cheap) odroid-c2.

I am following the sunxi community who puts a lot of effort in getting AllWinner SOCs in the mainline kernel. A lot of the affordable 64bit hardware is based on AllWinner.

An other community worth following is armbian, it’s a debian based distro for arm. There you find an overview of hardware they find worthy enough to support and I trust their judgment.


(Rob Bosch) #5

@fausp: a quick google search on rpi3 alternatives gives quite some info on the competition:




All these boards do have limited processor power and RAM resources. Some a bit more than others. I have looked for 4GB Arm boards, but they are hard to find and if available, quite expensive. Example: NVidia Jetson TX1 or TX2: https://www.nvidia.com/en-us/autonomous-machines/embedded-systems-dev-kits-modules/ the TX2 goes for $499,-
More 4 and 8GB Arm boards through a filter on the arrow.com website: https://www.arrow.com/en/categories/embedded-controllers-and-systems/embedded-systems/single-board-computers---sbcs?filters=System+Memory+Maximum+Size:8GB|4GB;
But I have no clue if they run Linux and CentOS in particular.

Interesting option: https://www.solid-run.com/nxp-family/


(fpausp) #6

I did a minute research:

centos for arm

cubietruck

???


(Rob Bosch) #7

AFAIK the NethServer on ARM is built on Centos for ARM.


(Mark Verlinde) #8

@fausp, The Cubietruck has an Allwinner A20 SOC, which is 32 bit.
It has an decent mainline kernel: should run nethserver-arm

Yes it is, if Centos with a decent kernel => 3.10 runs on your machine, nethsever-arm runs too :grinning:

In general I want to warn searching for arm hardware,
I think everybody who likes to thinker with arm singleboard-computers can share the experience one or two are just collecting dust because you never managed to get an decent kernel running on it.

Moreover Centos is not the most forgiving distro when it comes “porting” it to new hardware.

And striving for a stable server application i think somewhat conservative approach is in place.


(Rob Bosch) #9

@mark_nl: agreed, but I can imagine that if you know what rpi3 can do, and you need just that tad more cpu power, and probably more important: memory, you can’t do anything else but looking at specs and hope it will run CentOS.


#10

first of all sorry for my engilsh, i hope to be clear :slight_smile:
from what i have understood, only arm64 (aarrch64) will be supported from upstream in long run.
There is already epel and with latest beta also SCL, so i think in the long run arm64 is the way to go. But probably not all sbc will be supported… see:
https://lists.centos.org/pipermail/arm-dev/2017-October/003123.html
https://lists.centos.org/pipermail/arm-dev/2017-October/003124.html

while at the moment Rpi2-3 arm32 (armhfp) have official centos image, but without full epel and no SCL.

as for now, i see porting NS7 on arm64 is a lot easier, especially for additional modules, also if there aren’t official images for SBC
i think we can follow both the way but with different scopes. Probably only arm64 will be supported from the upstream, so we can imagine that in the future we will have only a NS7 for arm64, so also working on sbc with arm64 i think it’s a good way to stay up to date with the upstream, i mean to be ready when we will have nice hardware with centos fitting nicely on it. ( something like http://macchiatobin.net/ )

On the other way, rpi2-3 is widely used, so i think it could be a good effort to have a “reduced” ns7 for them (also if i hope to see a centos arm64 for rpi3 in 2018 see arm dev ml)

This i why i have split the comps. it would become impossible to keep them both up-to-date, with the same modules available.

What i would like to do is an IMG of NS7.4 ready to be burn on an SD with something like etcher to have an NS7.4 for rpi3 ready in minutes also if not all modules of x64 will be available (but we can work on some of them).

why invest time in something that will probably not be the future of ns7 on arm?

  • because raspberry is widely used
  • because all in all it is not very difficult
  • because I would like to make NS7 also available to raspeberry users (a lot of guys use it for educational purposes)

so to summarize what I thought to do:
arm32: make an IMG for rpi3 (and maybe rpi2)
arm64: continue to test on whatever HW/VM to follow development/porting of NS7 on arm64 until the supported hardware will be more clear

but of course, I’m very curious to know what you and the nethserver community thinks of it,
and redefine the rpath to port ns7 on armalso based on use cases and interests


(Mark Verlinde) #11

Very clear!

And fully agree :hugs:

+1


(Rob Bosch) #12

@dz00te: Fully agree with your points. They make sense. However, I would limit the support on rpi to the RPI3. The RPI2 is getting old and every new RPI will be an RPI3 anyways. (plus they are only $35,-)
On the ARM64 front I would love to see a list of confirmed working boards.


(Mark Verlinde) #13

I gues it makes sence to share some experiments i’m doing following the lead of the very smart Suse guys:
https://www.suse.com/products/arm/raspberry-pi/

In other words, i have experimental nethserver-arm aarch64 running on a rpi 3.

Seen the limited resources of the rpi i not sure it’s worth pursuing. And reading the thoughts of the community: lets keep the RPI on 32 bit.


(Mark Verlinde) #14

Hi all,

Bumping this up in the perspective of About Community/Project Governance. I needed to process the “the tyranny of structureless” to understand the importance of decision making structure. (and to be honest quite revealing: being almost 50 year old, thinking you are still rebelling the elite)

Asking myself is it good enough just to bring up the discussion? Especially because it turns out @dz00te and me are largely on the same page.


#15

Hi,
And what do you think about this stuff… it seems that the ARM could be a puzzle, with the architecture number… I meen Arm v7, Arm v8, etc, etc…
https://www.globalscaletechnologies.com/p-66-primabox.aspx


(Mark Verlinde) #16

Yes is it confusing ARMv7=32 bit, most most ARMv7 processors (SOCs) have hardware floating point capabilities then in the centos environment its referred to as armv7hl and armhfp.
ARMv8 = 64bit and in the centos envioment it is called aarch64.

The primabox is ARMv7 thus 32bit, i have it in my sight for a while now because its the only device I found sofar with 2 physical Ethernet devices. (see block diagram left under corner). the price and the lack of main-line kernel support is keeping me from buying it.

It is really a pity WAN and LAN are connected to one switch on this:
https://www.globalscaletechnologies.com/p-72-marvell-espressobin.aspx
It makes me doubting if kernel IP tables are factually doing the job on it.
Otherwise this would be an buyer for me ( armbian is working on it so i wait for their results/feedback)


(Mark Verlinde) #17

We are quite close in making/providing an nethserver-arm img for a Raspberry PI. I hoped to get this done in a more debian style using debootstrap, but I can’t find a way to install packages for a completely different arch on rpm based systems. :thinking:

After a lot of considerations i think the best option is adopting the way Centos Arm Special Interest group makes the images we all know. ( https://github.com/arrfab/rbf/network )

This means they must be build on the native arch, I tried qemu emulation without positive results. Doing this on a PI, to be more precise on a SD card, is no fun…:disappointed_relieved:

This week my new toy arrived :grinning:

Got Centos arm32 running on it although it still needs some tweaking and optimization. I hope to report the results regarding the nethserver-arm image this weekend.
(BTW this toy is affected by Spectre)


(Mark Verlinde) #18

As promised a report of creating a nethserver image for the Raspberry PI.

there is a result: it boots :grinning:
it brings up the admin interface :roll_eyes:

And there some work to do…
So close, still so far away


#19

great! i will check if mine is still up and running,it’s time to go on with tests… :slight_smile:

let me know if i can help in testing or other… did I have already said: welcome back? :slight_smile:


(Mark Verlinde) #20

Thanx, yes you did!

And there is progress:

  • got some errors out :grinning:
  • and it looks like we can get an better “out of the box experience” as i expected by mounting and booting the pristine network install image living on your disk in a container to expand the templates.

After further findings I will open an new thread to with questions and considerations we like to make.