본문 바로가기

MISC8

[나는 리뷰어다] 동시성 프로그래밍 이 글은 한빛미디어 활동을 위해서 책을 제공받아 작성된 서평입니다. 동시성 프로그래밍 Rust 언어를 중심으로 어셈블리어, C 언어를 사용해 CPU 아토믹 처리, 소프트웨어 트랜잭셔널 메모리, async/await 등 동시성 프로그래밍과 관련된 이론적 배경부터 구현까지 설계자 입장에서 살펴본 hanbit.co.kr 개요 2000년대에 들어서면서 그 유명한 무어의 법칙이 깨지고 프로세서의 clock rate 향상에 한계가 생기면서 multi-core/many-core 프로세서가 트렌드로 접어든지 오래이다. 프로세서가 하나라고 가정하고 짠 프로그램은 더 많아진 프로세서를 제대로 활용하지 못하기 때문에, 이제는 많은 개발자들이 병렬 프로그래밍에 대해서 잘 알아야한다. 이 책은 동시성 프로그래밍의 개념을 전체적.. 2022. 10. 2.
Grafana에서 bpftrace 사용하기 (feat. Performance Co-Pilot) 최근에 BPF 스크립트, Flame Graph를 Grafana 같은 모니터링 시스템에서 실행하는건 어떤가 생각했는데 이미 있었다. 와 이게 된다니!! 이 글에서는 Ubuntu 21.04 (hirsute)에서 Performance Co-Pilot 플러그인으로 Grafana에서 bpftrace를 사용하는 방법을 다룬다. bpftrace 설치 당연하게도 bpftrace를 Grafana에서 사용하려면 bpftrace를 먼저 설치해야한다. $ sudo apt-get install -y bpftrace bpftrace 설치는 간단한데 bpftrace를 사용하려면 커널이 BPF 관련 일부 config가 활성화된 상태로 빌드되어야 한다. 요즘 배포판에선 대부분 기본적으로 켜져있는 것 같다. CONFIG_BPF=y CO.. 2021. 11. 28.
Grafana로 모니터링 시스템 구축하기 저번에 구축한 오드로이드 홈서버에 Grafana로 모니터링 시스템을 구축해보려고 한다. 배포판은 Armbian (데비안)이다. 구성 Grafana: 모니터링 시스템 Prometheus: Grafana의 데이터 소스로 사용할 시스템으로 node_exporter로부터 모니터링 데이터를 수집 node_exporter: 각종 모니터링 데이터를 보여준다. node_exporter 설치 # node_exporter 다운로드 # 여기선 오드로이드에 설치할거라 ARM이지만 아니라면 따로 받아야함 # 링크 : https://prometheus.io/download/#node_exporter $ wget https://github.com/prometheus/node_exporter/releases/download/v1.2.. 2021. 11. 18.
오드로이드 홈서버 구축기 - 운영체제 설치 (Armbian) 오드로이드에서는 공식적으로 오드로이드용 Ubuntu 배포판을 지원한다. 하지만 배포판 버전이랑 커널 버전이 늦게 업데이트되어서 비공식 배포판을 사용해야한다. 나는 Armbian을 설치할 것이다. 원래 Fedora를 설치해보고 싶었는데 그러려면 내가 직접 이미지를 만들어야 해서 그냥 Armbian으로 했다. Ubuntu나 다른 비공식 배포판도 있긴하다. 원래는 우분투 비공식 이미지에서 커널이랑 배포판 업데이트를 하려고 했는데 Armbian이 더 간편하다. Armbian Download – Armbian CategoryAllGeneral purposeIOTNASNetworkingDesktop MakerAllSolidRunCubietechSinovoipOlimexKobolHardkernelAsusFriendl.. 2021. 11. 18.
오드로이드 홈서버 구축기 - 하드웨어 구성 매달 구글 클라우드 플랫폼에 5~10만원씩 내다보니까 좀 빡세서 휴가 나온 김에 홈서버를 구축해봤다. 서버로 쓸 보드는 하드커널의 오드로이드 시리즈이다. 오드로이드 HC4, XU4, N2+를 샀다. 싱글보드 컴퓨터 종류 중에 성능이 제일 괜찮은게 오드로이드라고 생각한다. (홍보글 아님) 서버 구성 ODROID HC4 CPU는 Cortex-A55 1.8GHz 쿼드코어에 메모리는 DDR4 4GB 정도이다. 원래 N2+를 2개 사려다가 SATA 커넥터가 있어서 이것도 하나 샀다. SSD나 HDD를 직접 연결할 수 있다. USB 처럼 혹시 툭 쳐서 뽑히는 일은 없겠지 (?) 여기에 장착할 500GB짜리 SSD랑 2TB짜리 HDD도 사서 꽂아봤다. ODROID N2+ 얘는 big.Little CPU를 사용한다. .. 2021. 11. 16.
루팅 없이 안드로이드에서 Docker 돌리기 나도 내 홈 서버를 만들고 싶은데, 라즈베리파이는 비싸므로 내 태블릿으로 서버를 돌려보기로 했다. 뭔가 하려면 그래도 도커 정도는 돌릴 수 있어야겠지? Alpine Term 설치하기 alpine-term-v12.1-standard-release.apk xeffyr/alpine-term Run Alpine Linux in your pocket. Contribute to xeffyr/alpine-term development by creating an account on GitHub. github.com 앱을 설치하고 기다리자. 부팅을 하는 데 시간이 오래 걸린다.. 체감상 10-20분? apk add docker # 왼쪽 탭을 열면 각각의 /dev/ttyXX가 있는데, 각각의 탭을 열어서 다음을 실행 co.. 2020. 9. 18.