Skip to content

Instantly share code, notes, and snippets.

View ruo91's full-sized avatar

Yongbok Kim ruo91

View GitHub Profile
@ruo91
ruo91 / gentoo-2022-11-26-dev-libs-gjs-1.74.1.txt
Created November 26, 2022 12:23
gentoo-2022-11-26-dev-libs-gjs-1.74.1
ruo91 /var/db/repos/gentoo/dev-libs/gjs # cat /var/tmp/portage/dev-libs/gjs-1.74.1/temp/build.log
* Package: dev-libs/gjs-1.74.1:0
* Repository: gentoo
* Maintainer: gnome@gentoo.org
* USE: abi_x86_64 amd64 cairo elibc_glibc kernel_linux readline userland_GNU
* FEATURES: network-sandbox preserve-libs sandbox userpriv usersandbox
>>> Unpacking source...
>>> Unpacking gjs-1.74.1.tar.xz to /var/tmp/portage/dev-libs/gjs-1.74.1/work
>>> Source unpacked in /var/tmp/portage/dev-libs/gjs-1.74.1/work
>>> Preparing source in /var/tmp/portage/dev-libs/gjs-1.74.1/work/gjs-1.74.1 ...
@ruo91
ruo91 / ocp4-sdn-issue.md
Last active August 11, 2022 16:18
OpenShift - 네트워크 흐름도 및 이슈 분석

OpenShift - 네트워크 흐름도 및 이슈 분석

OpenShift는 v3.x, v4.x 버전 상관 없이 기본적으로 OpenvSwitch(OVS) 기반의 openshift-sdn cni plugin을 사용한다.
고객사에서 Application 지연 부분이 생기면, OpenShift 플랫폼 상의 문제가 있지 않느냐라는 이슈 제기를 좀 하는데,
SDN의 대부분은 VXLAN 기반이므로 성능상의 이슈가 있을수는 있겠지만, 크게 크리티컬한건 별로 못 봄.

Application 부분과 네트워크 단에서 문제가 발생하는 상황이 대부분이었고, 이를 책임 전가하는 부분이 너무 많았음.
그래서, 네트워크 흐름도를 만들었고 니네 구성이 개판이라 발생한 것이고 그걸 까기 위한 내용을 공유 한다.

1. OpenShift 네트워크 흐름도

실제 데이터 요청은 아래와 같은 흐름을 통해 전달 된다.

@ruo91
ruo91 / ocp4-ingress-controller-access-log.md
Last active July 17, 2022 09:35
OpenShift v4.x - Ingress Controller 접근 로그(access log) 설정

OpenShift 환경에서 Ingress Controller에 Access Log를 설정하는 방법에 대해서 정리한다.

1. 개요

Kubernetes 환경에서 Ingress Controller의 주 역할은 내부/외부에서
Application Pod 접근에 사용되는 Software L4, L7 기능을 담당한다고 보면 된다.

OpenShift의 경우 HAProxy 기반으로 제공되는 Router Pod가 이 역할을 담당하고 있으며,
OpenShift v4.x 버전부터는 Ingress Controller Operator라는 이름으로 CRD(Custom Resource Definition)에서 제공하는
기능으로만 제어가 가능하도록 변경 되었다.

@ruo91
ruo91 / gentoo-enable-audio-hp-elite-dragonfly-max.md
Last active June 12, 2022 14:51
Gentoo Linux - Enable Audio on HP Elite Dragonfly Max

Gentoo Linux - Enable Audio on HP Elite Dragonfly Max

HP Elite Dragonfly Max 노트북에 Gentoo Linux 설치 이후 지문인식과 마이크가 안되던 문제가 해결됐다.

1. 마이크 지원 (Microphone)

HP 노트북에서 지원하는 내장 사운드 장치는 Realtek ALC285 사용한다.
이 장치를 사용하기 위해서는 linux kernel 단에서 사용되는 HDA 모듈을 활성화 해야한다.
이와 관련 된 Realtek High Definition Audio 모듈 변수는 SND_HDA_CODEC_REALTEK을 사용한다.

이 변수를 사용하면 기본적으로 Realtek Codec을 통해서 사운드 출력을 지원 해주고

@ruo91
ruo91 / ocp4-etcd-backup-restore.md
Created June 7, 2022 05:07
OpenShift v4.x - ETCD 백업 및 복구 방법

OpenShift v4.x - ETCD 백업 및 복구 방법

본 글은 OpenShift 환경에서 클러스터가 정상적이지 않거나 사용자에 의해
object resource가 손상되었을 경우를 대비해 백업 및 복구하는 방법에 대해서 작성 되었다.

1. ETCD 백업

etcd는 kubernetes에서 사용되는 모든 정보들이 저장되어 있는 key/value 기반의 database 이다.
etcd 백업은 크게 2가지 방법으로 수행이 가능하다.

1.1. 스크립트 백업

OpenShift에서 Control Plane(Master Nodes)에서만 제공되는 "cluster-backup.sh" 스크립트를 통해 가능하다.

@ruo91
ruo91 / gist:d797d74fb18760ef264b66bcdc096b6b
Created April 23, 2022 13:07
gentoo - media-gfx/shotwell-0.30.15 - meson.build:67:0: ERROR: Dependency "gdk-wayland-3.0" not found, tried pkgconfig and cmake
>>> Emerging (413 of 462) media-gfx/shotwell-0.30.15::gentoo
* shotwell-0.30.15.tar.xz BLAKE2B SHA512 size ;-) ... [ ok ]
* Checking whether python3_10 is suitable ...
* >=dev-lang/python-3.10.0_p1-r1:3.10 ... [ ok ]
* Using python3.10 to build (via PYTHON_COMPAT iteration)
>>> Unpacking source...
>>> Unpacking shotwell-0.30.15.tar.xz to /var/tmp/portage/media-gfx/shotwell-0.30.15/work
>>> Source unpacked in /var/tmp/portage/media-gfx/shotwell-0.30.15/work
>>> Preparing source in /var/tmp/portage/media-gfx/shotwell-0.30.15/work/shotwell-0.30.15 ...
* Applying 0.30.15-opencv4-compatibility.patch ...
@ruo91
ruo91 / ocp4-pv-nfs-mount-options.md
Created April 9, 2022 14:33
OpenShift v4.x - NFS PV Mount 옵션 사용

Persistence Volume(PV)를 NFS 방식으로 사용시 Mount Options은 아래와 같이 사용 가능하다.
다만, Storage Class 방식으로 사용하려면 Storage 벤더사에서 CSI(Container Storage Interface)를 지원해야 사용가능 하다.

1. NFS 옵션 조회

사용가능한 옵션을 조회 한다.

[root@bastion ~]# mount -t nfs -o [tab][tab]
_netdev        acregmin=      context=       dirsync        hard           mounthost=     nfsvers=       nodev          noiversion     nostrictatime  rdirplus       retry=         sharecache     timeo=
ac             actimeo=       cto            exec           intr           mountport=     noac           nodiratime     nomand         nosuid         rdma           ro             soft           udp

acdirmax= async defaults fg iversion mountproto= noacl noexec nordirplus nouser relatime rootcontext= strictatime user

@ruo91
ruo91 / ocp410-metallb-bgp-peer-crd.yaml
Created April 3, 2022 16:22
OpenShift v4.x - MetalLB BGP Peer CRD
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.7.0
operatorframework.io/installed-alongside-8cc443a56e44e053: ybkim/metallb-operator.4.10.0-202203111548
operatorframework.io/installed-alongside-b6ce4f7cd2a9868e: metallb/metallb-operator.4.10.0-202203111548
creationTimestamp: "2022-03-11T12:01:34Z"
generation: 1
labels:
@ruo91
ruo91 / gentoo-linux-asus-zenbook-pro-15-make.conf
Last active April 3, 2022 12:53
Gentoo Linux (ASUS ZenBook Pro 15) - /etc/portage/make.conf
########################################
# ASUS ZenBook Pro 15 UX550GEX_UX580GE #
########################################
# These settings were set by the catalyst build script that automatically
# built this stage.
# Please consult /usr/share/portage/config/make.conf.example for a more
# detailed example.
#### CPU Model ####
# Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
@ruo91
ruo91 / gentoo-setuptools-61.3.0-build-failed.txt
Created April 2, 2022 11:54
Gentoo Linux - setuptools-61.3.0 Build Failed
ruo91 ~# cat /var/tmp/portage/dev-python/setuptools-61.3.0/temp/build.log
* Package: dev-python/setuptools-61.3.0
* Repository: gentoo
* Maintainer: python@gentoo.org
* USE: abi_x86_64 amd64 elibc_glibc kernel_linux python_targets_python3_10 python_targets_python3_9 userland_GNU
* FEATURES: network-sandbox preserve-libs sandbox userpriv usersandbox
>>> Unpacking source...
>>> Unpacking setuptools-61.3.0.gh.tar.gz to /var/tmp/portage/dev-python/setuptools-61.3.0/work
>>> Unpacking python-gentoo-patches-3.10.0_p1.tar.xz to /var/tmp/portage/dev-python/setuptools-61.3.0/work
>>> Source unpacked in /var/tmp/portage/dev-python/setuptools-61.3.0/work