Category Archives: Computer

Python 取得 PM2.5 和天氣資訊

最近終於將很久之前就說要架的室內 PM 2.5 偵測弄起來,上一版是用 Cacti 做的,但是有點過時了,這一版是用 Grafana + Prometheus 做的,看起來就漂亮多了

不過架上去之後的問題是,想比較數值,但是又不想再組一套系統出來,畢竟感測器也是成本,不如就用現成的氣象和環保局的數據吧,反正都只是參考用的,看個大概就好了

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 »