Category Archives: UNIX

Raspberry 4 Pi + Kubuntu

買了二塊 Raspberry 4 Pi 回來,本來是準備裝 K8s 的,但是在這之前要先跑個 ubuntu image 才對.

我買 Raspberry 4 Pi 的時候知道他要用 5V3A 的電源,但是我沒有想到我自己沒有 5V3A 的 USB 變壓器,手機用的含 Apple 87W USB-C 變壓器都不足瓦
Apple 87W 只能輸出 5V 2.4A
最後找了一個 Sony 可以輸出 5V 2.7A 才可以用,所以如果要買 Raspberry Pi 4 的人請注意一下

另外這一塊的外接是 Micro-HDMI,我也忘了買,記得還要加買 SD Card

Read more »

QEMU Network Problem When Run With Docker

如果 Docker 和 QEMU 同時執行時,QEMU 內部透過 tap interface bridge 到 host network 的網路會出不去

這個問題的原因是 Docker 起來之後,會將 iptables 的 packet forward 預設變成 DROP

這時可以在 Docker 起來的時候將 bridge interface 加到 iptables 規則內即可,首先編輯 systemd docker service

Read more »

Install Kubernetes on ARM64 Ubuntu 18.04 (with QEMU)

Install Kubernetes on Ubuntu 18.04 is very easy now, but only for x86 platform. If on ARM64 environment, it might have some other problem.
Some old article mentioned a lot of information but software version is too old for deploy a new version software.

After a lot of time to have research, here is instruction for how to install Kubernetes on ARM64 Ubuntu 18.04

Read more »

Ubuntu 18.04 Change Mac Address on QEMU via Netplan

This is a quick note about how to modify mac address for qemu image with ubuntu 18.04 cloud image.

but I have not found a working way only change mac address in system

Read more »

Ubuntu 18.04 ARM64 DPDK in VM (QEMU)

DPDK is a very popular infrastructure in high speed packet process domain, some applications will used the same architecture to process packet, like EPC.

For Ubuntu 18.04, it used dpdk 17.11, it not good for some other application like dpdk pktgen, but enough for testpmd and l3fwd test. here is some personal note for setup whole environment.

DPDK in QEMU archeticture
Read more »

Ubuntu Change Default Mac Address

Ubuntu used netplan as new network manager, but it’s different with previous version.

First create a new file /etc/systemd/network/10-override-mac.link

[Match]
MacAddress=52:54:00:12:34:56

[Link]
MACAddress=52:54:00:12:34:58

52:54:00:12:34:56 is old mac, and 52:54:00:12:34:58 is new mac .

Second, modify /etc/netplan/01-netcfg.yaml, create match: and macaddress field , example

network:
version: 2
ethernets:
eth0:
dhcp4: true
match:
macaddress: ’52:54:00:12:34:58′
set-name: eth0

ref.

Netplan not spoofing MAC as expected

Gentoo ARM64 Docker Image

There is a long time no article about gentoo on my blog.

Today, I have a whim to do a gentoo ARM64 docker image, so, we have this article.

Please understand that ARM64 Gentoo is experimental, and might be different after a while.

Read more »

QEMU Run x86_64 on ARM64 Server command

This is a work note for run x86_64 on ARM64 server .
Because they are different archeticture, so, run x86_64 on ARM server would be very slow.

and some functions might be different when run on different platform

Read more »

Kdump in ubuntu 18.04 ARM64


kdump is very good tool to debug complex system like cloud data center, it can easy to save kernel status when crash.
Running kdump in ARM64 just like running in x86, but I met a strange problem on ARM64 platform.

The kernel version is HWE kernel, current version is 4.18.0-25, mihbt be encounter those problems

Read more »

ARM64 Kdump cannot allocate crashkernel

In ARM64 server and installed memory around 128G, ubuntu default /etc/default/grub.d/kdump-tools.cfg default configuration might cause kdump allocate memory failed. error message as below

[ 0.000000] cannot allocate crashkernel (size:0x80000000)
[ 0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.18.0-25-generic root=UUID=ee8be10d-d649-425d-a807-640751836186 ro console=tty0 crashkernel=2G-4G:320M,4G-32G:512M,32G-64G:1024M,64G-128G:2048M,128G-:4096M

Read more »