일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Qubit
- POD
- C++
- 반도체
- jhDNN
- 딥러닝
- Compression
- cloud
- quantum_computing
- 클라우드
- dnn
- nvidia
- stl
- flash_memory
- CuDNN
- SpMM
- GPU
- CUDA
- Semiconductor
- DRAM
- deep_learning
- 반도체기초
- jhVM
- HA
- FPGA
- convolution
- 쿠버네티스
- kubernetes
- 양자역학의공준
- sycl
- Today
- Total
목록분류 전체보기 (143)
Computing
요즘은 컴퓨터의 메인 저장장치로 하드디스크(HDD)보다는 SSD를 선택하는 게 일반화가 된 것 같다. HDD는 자기 테이프 방식이라 값이 싸지만 데이터를 읽고 쓰는데 느리다. 반면에 SSD(Flash memory)는 반도체를 이용한 저장장치로 HDD보다는 비싸지만 데이터 읽고 쓰기가 더 빠르다. 특히 random access read/write에서 둘의 성능 차이가 극심하게 난다. 기술의 발전에 따라 SSD의 가격이 어느정도 하향되면서 SSD가 메인 보조기억장치로 많이 사용되게 되었고, 특히 최근에는 기존의 SATA 방식 HDD, SSD와는 다른 폼팩터(형태)를 가진 M.2 NVMe SSD도 대중화가 된 것 같다. 오늘은 이 M.2 NVMe SSD에 대해서 용어 정리를 해보고자 한다. M.2 NVMe S..
이전 글 - [Ceph] 개요 및 특징 (1) (Object storage 특징, File 저장 예시) 이전 글에서 간단히 Ceph라는 Storage cluster에 대해서 정리하였다. 이번 포스터에서는 Ceph의 interface에 대해서 정리해보고자 한다. 공부하는 단계에서 정리하는 자료이기에 틀린 내용이 있을 수도 있다. Ceph Interface Fig 1.은 Ceph를 high-level interface 레벨에서 설명하는 그림으로, Ceph architecture를 검색하면 가장 먼저 나오는 그림 중 하나이다. 이 그림은 사용자(client, app 등)가 Ceph를 어떻게 사용할 수 있는 지 방법을 잘 보여준다. 이전 글에서도 정리하였지만, Ceph는 object-based software-..
Ceph는 단일 분산 클러스터 상에 구축되는 object-based 분산 스토리지 시스템(distributed storage system)으로, file-level, object-level, block-level 모든 레벨의 interface를 제공한다[2]. 이번 포스터에서는 이 Ceph라는 분산 스토리지 시스템에 대해서 정리해보고자 한다. 공부하는 수준에서 정리하는 자료이기에 틀린 내용이 있을 수도 있다. Ceph Overview Ceph는 단일 분산 클러스터 상에 구축되는 object-based 분산 스토리지 시스템이다. Fig 1.을 통해 일단 한번 간단히 정리해보자. Fig 1.은 Ceph 아키텍처를 표현한 그림이다. 그림의 오른쪽에 붙은 명칭들은 개인적으로 붙인 것으로 공식적인 용어가 아니다...
Linux 터미널에서 여러 명령어를 순차적으로 실행시켜야 하는 경우가 있다. 예를 들면 폴더를 만들고, 그 폴더에 git을 통해 프로젝트를 다운로드받고, 다운로드받은 프로젝트를 빌드하는 경우를 생각해보자. 일반적으로 [mkdir] 명령어를 통해 폴더를 만들고, [git] 명령어를 통해 프로젝트를 다운받고, 그 이후 [make] 등의 build 명령어를 실행시켜 빌드를 할 것이다. 이때 [git] 명령어가 끝날 때까지 기다린 후 [make] 명령어를 직접 처줘야하는데, 문제는 [git] 명령어가 오래 걸리면 나의 대기시간이 길어진다. 이럴 경우 명령어들을 순차적으로 실행하도록 shell script를 짤 수도 있지만, 터미널 커맨드라인에서 여러 명령어를 순차적으로 한번에 실행시킬 수도 있다. 커맨드라인 한..
이전글 - Pod 네트워크 (1) : Service 필요성과 개념, 종류 (ClusterIP, NodePort, LoadBalancer) - Pod 네트워크 (2) : Service 내부 구현 분석 (kube-proxy와 iptables) 이전 글에서 쿠버네티스 클러스터 상에서 네트워킹을 지원하는 리소스인 Service(서비스), 그 서비스의 종류와 내부 구현에 대하여 정리하였다. 오늘은 서비스의 구현체인 Kube-proxy와, Container Network Interface (CNI)의 구현체인 CNI plugin의 차이에 대해서 정리해보고자 한다. 둘 다 쿠버네티스 운영 시 네트워크 관련된 개념이라는 것 때문에 혼동되는데 이번 기회에 정리를 한번 해보고자 한다. kube-proxy VS. CNI P..
이전글 - Kubernetes 고가용성(HA) (1): 고가용성과 Kube Master의 고가용성 이전 글에서 쿠버네티스 클러스터의 고가용성을 위해 Multiple Masters를 클러스터에 배포한다는 것을 배웠다. 이번 포스터에서는 간단하게 Multiple Masters를 포함하는 쿠버네티스 클러스터를 배포하는 방법에 대해서 정리하고자 한다. 실습 환경 쿠버네티스 클러스터 설치는 kubeadm을 통해 최소한의 시스템으로 설치할 예정이다. 아쉽게도 개인 컴퓨터 환경이기에 3대의 가상머신(VM)과 HAProxy[1]이라는 가상 load balancer를 이용할 예정이다. 실습 환경은 다음과 같다. [각 가상머신 구성] - OS: CentOS 8 - CPU: Physically 2 cores - Memory..
고가용성 High Availability 고가용성(HA, High Availability)라는 말이 생소할 수 있는데 가용성이 높다, 즉 높은 확률로 사용할 수 있다는 말이다. 애플리케이션 서비스를 생각해보자. 이 서비스의 DB가 고장난다면 더 이상 애플리케이션을 사용할 수 없다. 이런 저런 방법으로 DB가 절대 고장나지 않도록 한다면 더이상 DB에 의해 서비스 이용이 불가능해지는 상황이 사라질 것이다. 즉 이 서비스는 높은 확률로 사용가능한(고장나지 않는), 고가용성을 가지는 것이다. 좀 더 정확한 정의로 가용성이란 서버, 네트워크 등의 시스템이 정상적으로 사용 가능한 정도를 말하는 것으로 가동률과 비슷한 의미[1]이다. 가용성은 시스템이 설치된 이후의 전체 시간 중에 정상 작동한 시간의 비율이다. 시..
이전글 - Pod 네트워크 (1) : Service 필요성과 개념, 종류 (ClusterIP, NodePort, LoadBalancer) 이전 글에서 쿠버네티스의 서비스 리소스의 필요성과 그 개념에 대하여 정리하였다. 쿠버네티스 서비스는 파드들에 네트워크 접근할 수 있도록 변하지 않는 Private or Public IP를 제공하는 리소스이다. 사실 서비스 없이도 파드와 네트워크 통신할 수 있지만, 그 과정이 복잡하고 구현하기 까다롭다. (Iptables rule, routing table 설정 등을 Pod 정보가 변할 때마다 개발자가 직접 계속해서 관리해줘야 할 것이다.) 쿠버네티스는 서비스라는 추상화된 개념을 도입하여 이를 누구나 쉽게 이용할 수 있도록 제공한다. Fig 1.은 Service 개념을 ..