Skip to content

Deployment and Maintenance / Guide for Official Raspberry Pi OS Deployment

This document mainly introduces how to run this system on a Raspberry Pi with the official Raspberry Pi OS installed.

Always use the latest version of DataFlux Func for operations

It is recommended to use a wired network connection to the Raspberry Pi during the operation

This article is based on the Raspberry Pi 4B 8GB version for operations. The Raspberry Pi 3B is too weak to run

1. Preparations

Some preparations are needed before installing DataFlux Func on the Raspberry Pi.

1.1 Burning the Raspberry Pi SD Card

It is recommended to use a clean official image to burn the SD card before installing DataFlux Func.

When burning the SD card, you can choose:

  1. Use the official Raspberry Pi Imager tool for burning

  2. Directly download the official Raspberry Pi OS image and use a third-party tool for burning

After burning, insert the SD card into the Raspberry Pi and power it on.

1.2 Enabling ARM 64-bit Mode

The official Raspberry Pi OS does not enable 64-bit mode for backward compatibility. However, for products after Raspberry Pi 3B, 64-bit mode can be enabled.

You can use the following command to open the Raspberry Pi configuration:

Bash
1
sudo vi /boot/config.txt

And add the following content to enable ARM 64-bit mode:

Text Only
1
arm_64bit=1

Save and restart the Raspberry Pi.

After rebooting, you can confirm with the following command:

Bash
1
arch

The output should be:

Text Only
1
aarch64

2. Installing DataFlux Func

The process of installing DataFlux Func on the Raspberry Pi is basically the same as installing it on a regular server.

2.1 Downloading

The downloading operation is the same as on other platforms. Use the following command, and the script will detect the current environment architecture and download the ARM version resources.

Bash
1
/bin/bash -c "$(curl -fsSL docs.dataflux-func.com/download)"

If you need to download the DataFlux Func installation package for the Raspberry Pi on a PC, you need to specify --aarch64 in the download command

Bash
1
/bin/bash -c "$(curl -fsSL docs.dataflux-func.com/download)" -- --arch=aarch64

2.2 Installing

After downloading, enter the downloaded directory and execute the following command to install:

Bash
1
sudo /bin/bash run-portable.sh

2.3 Initializing the System

After installation, use a browser to open the DataFlux Func initialization page for operations.

  • When on the Raspberry Pi itself, access http://127.0.0.1:8088
  • When accessing from another device, access http://{Raspberry Pi IP}:8088

2.4 Confirming Installation

After installation, log in to the system, go to "Manage / About", and you will see that the "Architecture" is aarch64:

management-about-aarch64.png

Subsequent operations are no different from DataFlux Func installed on a regular server.

3. Configuring WI-FI Connection

If you want the Raspberry Pi to connect to the network via WI-FI after installing DataFlux Func, please read this section

After installing DataFlux Func, the WI-FI control panel in the Raspberry Pi taskbar may prompt No wireless interfaces found, and you may not be able to connect to WI-FI via the UI. Meanwhile, the wired connection can access the network normally.

This issue has been discovered during testing, but the cause is still unclear. However, it does not affect the wired connection

3.1 Fixing the Raspberry Pi WI-FI Issue

To fix this issue, you can open the network configuration:

Bash
1
sudo vi /etc/network/interfaces

Add the following configuration:

Bash
1
2
3
4
5
auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-ssid {Your WI-FI SSID}
wpa-psk  {Your WI-FI Password}

Save and restart the Raspberry Pi.

3.2 Confirming the Fix

Use the following command to confirm the WI-FI module:

Bash
1
iwconfig wlan0

The output should be:

Text Only
1
2
3
4
5
6
7
8
wlan0     IEEE 802.11  ESSID:"{Your WI-FI SSID}"
          Mode:Managed  Frequency:2.472 GHz  Access Point: 08:36:C9:FC:3B:B0
          Bit Rate=72.2 Mb/s   Tx-Power=31 dBm
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:on
          Link Quality=70/70  Signal level=-35 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:254  Invalid misc:0   Missed beacon:0

Use the following command to confirm the WI-FI network connection:

Bash
1
ifconfig wlan0

The output should be:

Text Only
1
2
3
4
5
6
7
8
wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet {IP address assigned to the Raspberry Pi}  netmask 255.255.255.0  broadcast 10.0.0.255
        inet6 fe80::e65f:1ff:fe30:c85d  prefixlen 64  scopeid 0x20<link>
        ether e4:5f:01:30:c8:5d  txqueuelen 1000  (Ethernet)
        RX packets 33397  bytes 5759317 (5.4 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 28599  bytes 22218944 (21.1 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Finally, open a browser, and if you can access the internet normally, it means the WI-FI issue has been fixed.

You can also directly use cURL to verify if the network connection is successful:

Bash
1
curl -L bing.com

Even if the WI-FI issue is fixed, the WI-FI control panel in the taskbar may still display No wireless interfaces found

X. Appendix

Here are some notes related to the Raspberry Pi for reference.

X.1 Maximizing Raspberry Pi Performance

Open the /boot/config.txt file:

Bash
1
sudo vim /boot/firmware/usercfg.txt

Add the following content as needed:

Text Only
1
2
3
4
5
force_turbo=0  # Prevent the CPU from running at maximum frequency
arm_freq=2100  # Overclock the CPU to 2.1Ghz (default is 1.5Ghz)
gpu_freq=750   # Overclock the GPU to 750Mhz
gpu_mem=512    # Change the video memory to 512MB
over_voltage=6 # Increase the voltage to level 6

You can use it normally without the above settings, and a metal case alone can achieve passive cooling

This setting involves overclocking. When running at full load, passive cooling with just a metal case is not enough. At least a fan is required

More aggressive configurations can further enhance the performance of the Raspberry Pi, but it will void the warranty

If your Raspberry Pi is damaged due to overclocking, the author of this article is not responsible. Please think twice before proceeding

X.2 Raspberry Pi Stress Testing Tool

You can use the Raspberry Pi stress testing tool to test the stability of the Raspberry Pi (especially after overclocking).

Clone the repository:

Bash
1
git clone https://gitee.com/sujivin/rpi-cpu-stress.git

The original author's Github repository address is: github.com/xukejing/rpi-cpu-stress

Add executable permissions:

Bash
1
2
cd rpi-cpu-stress
chmod +x stress.sh

Start the stress test:

Text Only
1
sudo ./stress.sh

Then, you can see the following output in the terminal:

Text Only
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
a72 freq: 2100000
temp: 50634

a72 freq: 2100000
temp: 54530

a72 freq: 2100000
temp: 55991

a72 freq: 2100000
temp: 56478
  • a72 freq: 2100000: Indicates the current CPU frequency is 2.1Ghz
  • temp: 50634: Indicates the temperature is 50.634 degrees Celsius

Do not let the Raspberry Pi stay at high temperatures (above 80 degrees Celsius) for a long time