메뉴 닫기

Ubuntu Tips

성능 분석 도구 perf 설치

sudo apt install linux-tools-common linux-tools-generic linux-cloud-tools-generic

(커널 버전에 맞는 패키지를 선택해서 깔아야하는 경우도 있음)

sudo apt install linux-tools-$(uname -r) linux-cloud-tools-$(uname -r)

사용방법

perf record -ag sleep 5

perf report --stdio

or

perf report

Ubuntu 깔고 나서.

sudo adduser hcpark

sudo vi /etc/sudoers

apt-get update

apt install linux-tools-common sysstat vim git lrzsz samba

NFS 서버 세팅

  • source: https://www.fun25.co.kr/blog/linux-ubuntu-16-04-nfs-setting/
# apt-get update
# apt-get install nfs-common nfs-kernel-server portmap

공유할 디렉토리 생성

# mkdir /home/nfs
# chmod 777 /home/nfs

/etc/exports 파일에 추가 (192.168.0.1 아이피만 접근 가능)

/home/nfs 192.168.0.1 (rw,all_squash,async)

NFS 클라이언트에서는 mount 명령어로 마운트해서 사용

# apt-get install nfs-common
# mount -t nfs 192.168.0.2:/home/nfs /mnt

위와 같이 하면 nfs 서버의 /home/nfs 디렉토리를 로컬의 /mnt 디렉토리로 마운트해서 사용가능

OpenInfraDay 참석

immutable kubernetes architecture – 이어형

  • 과거에 인프라들을 관리하는 기법에서부터 현재에 진행되고있는 인프라 관리 기법에 대해서 이야기를 진행
  • hand scripts -> code(infrastructure as a code) -> image (immutable infrastructure)
  • snowflake server들은 시스템에 에러가 생겼을 때 똑같은 문제점을 최대한 비슷한 시스템으로 만들어도 발생시키기 어려움 -> 이러한 문제점은 해당 문제점을 해결하기 어렵게 되는 일이 될 수 있다.
  • 코드 기반으로 관리할 때 장점 :
    • 간단하게 추가하기 쉬움,
    • 처음 사용하는 사람도 쉽게 관리가능,
    • 인프라에서 무엇이 변경되었는지 쉽게 확인 가능
  • 단점
    • 배포시 외부요인으로 인해 실패
    • 롤백 어려움(롤백에 해당되는 코드를 다 만들어놔야함) -> 이런 문제점은 결국 모든 상황에 대한 롤백코드를 만들기 어렵게 만들어서 결과적으로 snowflake server를 만들게 된다.
    • 절차적구조기반일수록 특정 이벤트가 무시될수 있음
    • 선언적 구조 기반일수록 복잡한 시나리오 대응 힘듬
  • phoenixserver : 오래된 서버와 새로운 서버는 전혀 다르다. 그래서 주기적으로 서버를 초기화해서 새로운 서버로 만드는게 좋다.
  • by image(immutable infrastructure)
  • unikernel : VM은 무겁지 않다. OS가 무거운것이다.(컨테이너 기술을 이용함) 아직은 사용성이 좋지 못함
  • linuxkit 
    • 지정된 컨테이너 이미지만 이용하여 OS를 구성
    • 모든 파트는 컨테이너로만 구성되어서 변경 교체가 쉬움

 

<컨테이너 시대에 딱 맞는 매니코어 기반의 ARM 서버 – 엑세스랩>

  • ARM- 리스크구조의 cpu라서 구조가 간단해 기능추가가 쉬운 장점
  • 클라우드 서비스의 급성장에 따른 데이터센터의 중요성 부각됨.
  • 데이터센터의 냉각 전기세는 운영비의 50%를 차지하는데 이에따른 저전력 고효율의 서버 필요.
  • 데이터센터용 ARM 서버를 구성하고 있는 가 구성요소 기술들에 대한 분석과 가상화가 중시되던 기존의 클라우드 환경이 급격하게 컨테이너 한경으로 변화하게 되면서 가상화보다 프로세서 내부의 코어 개수가 중요해지고 있는 현황을 알게됨.
  • 현재 개발상태 -cpu 48개의 퀄컴칩으로 45% 성능증가

OpenStack Automation with Ansible

  • 서비스 신청 -> 서비스 검토 -> 프로젝트생성 -> 네트워크 생성 -> Flavor 생성 -> 보안 그룹 생성 -> 보안키 생성 -> 인스턴스 생성 -> Floating IP 할당 -> 인스턴스 생성 통보
  • *이 작업을 계속 반복 -> 자동화(Automation) 필요 -> Ansible 이용
  • What is Ansible?
    • Playbook이라 부르는 인프라 스트럭처 코드(Code Code as Infrastructure)는 실제 하드웨어 구성이나 대화 형 구성 도구(Agent방식의 자동화 도구)대신 컴퓨터 처리 가능 정의 파일을 통해 컴퓨팅인프라(프로세스, 베어메탈 서버, 가상 서버 등) 및 해당 구성을 관리하고, 프로비저닝 하는 프로세스이다. 이것은 Ansible 자동화의 중요한 역할을 한다.
  • OpenStack Automation with Ansible 구현 -> OpenStack, Ansible, Ansible Tower, Git Repository 등이 필요

SOfTI Easy Installer(Openstack 쉽게 설치하기) : 박종환 – 삼성전자

  • 최근 5G Networks,  IT Cloud, Telco NFV 등의 기술 등장으로 전국 각지의 국사에 NFV 시스템 구축 필요 -> 이로인해 에러가 나지않고 쉽고 빠른시간에 설치가능한 플랫폼의 필요성이 높아짐.
  • VNF 검증과 그외 요구사항에 대해서 기존의 Openstack Install Tool(Devstack, TripleO, Fuel, Compass, …)들이 부족한 점이 많고 고치기도 힘듦 -> NFV환경에 적합한 Installer, 사용하기 쉽고, Human error을 최소화
  • -구성
    1. CMS OS Deployer
      • cable연결과 최소한의 입력만으로 os설치, 서버를 만질 필요 없이 원격에서 모든 작업 수행
    2. CMS Installer
      • CMS서버의 H/W정보 자동 감지, bridge 자동설정, Component VM 생성, Manager VM 배포
    3. Manager
      • 연결되어 있는 서버의 자동 Detect, 서버의 H/W 정보 자동 Detect , 서버에 OS 설치,  NFVI Life Cycle 관리

TACO (SKT ALL Container Openstack): Cloud Native로의 진화 : 안재석 – SK Telecom

  • TACO란 Container 기술(Docker), Container Orchestration 기술(Kubernetes), 자동화 기술(Helm) 기반으로 STK에서 자체 개발한 OpenStack 솔루션임. 커뮤니티 오픈소스 SW 기반으로 Continuous Integration / Deployment 시스템 구현함. OpenStack의 가장 큰 문제접들을 극복하여 Self-Healing (자동복구), 서비스 무중단 업그레이드, 단순한 설치 및 운영, 다양한 인프라 환경에 최적화가 가능한 유연성을 확보하였음.
  • Upstream First 정책하에서 개발되어 오픈소스 생태계 최적화 활용되었고 비용 효율적인 개발.
  • 현재 Continuous Delivery 단계에 해당하며 Continuous Deployment로 진화하는 중임.

핸즈온 워크샵 : ONOS(SONA)를 이용한 OpenStack 네트워크 관리 실습 : 이건 – ONF Korea 신상호 – ONF Korea 박민철  – ONF Korea

  • ONOS SDN 컨트롤러 기반 SDDC 네트워크 관리 솔루션 SONA를 이용하여 OpenStack 네트워크를 관리하는 실습함. 기본으로 제공되는 All-in-One Installation 스크립트를 사용하여 가상 머신에 OpenStack + SONA를 설치/연동하고 가상 네트워크를 provisioning하는 등 실습함.
  • East-west routing(서로 다른 Network에 속한 VM간 통신이 필요한 경우) 가상의 연동을 함. Horizon을 통해 Router을 생성후 인터페이스를 이용하여 net1, net2를 연결후 각각에 vm생성후 vm간 ping이 되는것을 확인.
  • -현재 ONOS CLI에서 사용가능한 SONA 관련 CLI 실습.
  • – North-South Routing(VxLAN Network를 사용하는 VM이 외부 인터넷 망과 통신하는 경우)을 위한 Network Node구성

Upstream training(7시간정도 세션 진행, 영어)

  1. Trainers:
    • Ildiko Vancsa (IRC: ildikov Email: ildiko@openstack.org)
    • Kendall Nelson (IRC: diablo_rojo Email: knelson@openstack.org)
  2. Reference:
  3. Preparation:
    • Openstack의 Nova, cinder, neutron 등 project들에 한 개 이상 관심을 가지고 있어야함
  4. About training
    • 세션은 openstack upstream institute에서 제공하는 가상 머신 이미지 파일로 진행한다.
    • 또한 세션에서 배우는 내용에 대해 Exercise를 풀고 질문 받는 식으로 진행함.
    • https://github.com/openstack/upstream-institute-virtual-environment/blob/master/README.md(참고링크)
      1. Openstack Project에 대해 알고, 관련된 커뮤니티나 Contrubution에 대한 전반적인 부분 발표함
      2. IRC(Internet Relay Chat)로 Openstack Contributer들과 온라인 미팅을 가지고 개발 논의를 하는 방법 (ex. https://webchat.freenode.net/?channels=openstack-Nova – Web IRC)
      3. Openstack Governance, Openstack Community의 여러 그룹들 그리고 openstack 정부가 존재하는데 각 Committees들, 역할들
      4. Openstack의 Release cycle과 cycle 내의 특징, 세부사항에 대해 배우고 어떻게 각 project들이 Release되고 deployment가 확정되는지에 대해 진행
      5. Mailing List에서 관심있는 프로젝트를 구독하고 IRC 채널을 통해 소통하는 것에 대해함
        http://lists.openstack.org/cgi-bin/mailman/listinfo – mailing list
      6. 1~5까지의 이론적인 내용들을 끝내고 openstack의 contribution process에 대해 진행함
        자신이 관심 있는 프로젝트로 (https://wiki.openstack.org/wiki/IRC ) IRC채널에 접속하고 각 IRC채널의 로그를 보면서 어떤 논의들을 해왔고, offline/online meeting 일정이 어떻게 진행되었는지 확인, Mailing List에 join, git.openstack.org/openstack 에서 clone해온 후 project review를 했다. Contribution을 위해선 본인의 branch를 생성하고, 일련의 task들 (ex. bug, tivial fix, documentation, implementation 등)을 선택하여 code를 commit해보고 contribute test를 함
      7. 하지만 6의 과정을 하기위해선 https://blueprints.launchpad.net/openstack-dev-sandbox (lunchpad – 내 코드가 project에 어떻게 contribute 되고 있는가를 확인할 수 있다.)가입이 필요하고, 위와 연계하여 openstack의 story board(for coordination of cross project work)에 가입진행
      8. Lunchpad에서 내가 찾은 openstack project의 버그를 올리거나 다른 사람들의 bug들을 추적할 수 있다.
        이 모든 과정은 Task들을 Tracking하기 위한 과정이다.
        https://docs.openstack.org/contributors/common/task-tracking.html
        https://storyboard-dev.openstack.org/#!/page/about
      9. 또한 openstack Gerrit에 가입하여 내가 OpenStack repository의 내용에 대해 변경을 제안하고 거기에 대한 Openstack community member들에게 review 요청을 하는 것을 진행함.
        https://docs.openstack.org/contributors/code-and-documentation/using-gerrit.html
      10. CI툴 중 하나인 Zuul에 대한 내용부터 Code 분석까지 진행했어야 하는데 세션 시간이 종료되어 진행하지 못했다. 이 부분에 있어서 아쉬웠다.
  5. About Documentation Contribution
    • 멘토: Ian Y. Choi (ianyrchoi@gmail.com, IRC: ianychoi)
    • Openstack contribution 중 하나인 documentation contribution에 대해 세션을 진행했다. Openstack project에 접근하기 위해선 여러 언어로 번역이 잘 되고 내용이 풍부한 문서들이 필요하다. 따라서 모든 문서에는 세계 각국의 documentation translator와 supporter들이 작업을 했고, 관심이 있으면 참여를 해보라는 권유와 소개였다. 또한 멘토와 1대1 대화를 통해 알게 됐는데,  한국어로 번역된 문서 주소를 알려주셨다.
    • 예를 들어 https://docs.openstack.org/ 이란 주소 끝에 ko_KR를 붙이면 한국어로 잘 번역된 문서들을 접할 수 있다는 것이었다. https://docs.openstack.org/ko_KR/

Invited Talk: A Day in the Java Developer’s Life, with a Taste of Kubernetes

  1. Presenter:
    • Arun Gupta (Principal Open Source Technologist) – AWS
  2. About Session
    • Java Application을 개발과 동시에 docker와 kubernates를 이용해서 간편하게 배포까지 가는 Java Developer Life에 대한 세션을 진행했다.
    • Java Application을 Docker Image로 Pakage화 하는 것, Kubernates Menifest 파일을 생성하여 kubernates와의 연결, 테스팅, 디버거 연결, K8s의 istio를 설치하여 내 kubernates의 서비스들을 가시화하는 것 그리고 나중에는 AWS에 연결하여 진행했다.
    • * 서비스 가시화를 하는데 debugger와 java application이 제대로 올라가 있지 않는다면 service들을 전부 delete한 후 create 하는 방법이 제일 빠르고 간편하다.

People

Advisor

Prof. Hyunchan Park

 

Operating systems, Storage systems, Virtualization, Solid-state drives, Block chain

hyunchan.park at chonbuk ac kr

Students (master course)

Myeongkyu Oh

Operating systems

have9208 at jbnu ac kr

Students (undergraduate course)

Joona Yoon

Operating systems, Algorithm

joona at jbnu ac kr

 

Junhee Jang

Operating systems, Android, Virtualization

icd16244 at gmail com

 

Chu seung ji

Operating systems, NVMe SSD

csgm2328 at gmail com

 

JuYong Seong

Network Virtualization, Big Data

wndyd9557 at jbnu ac kr

 

Publications

International

[7] Cheol Ho Hong, Young Pil Kim, Hyunchan Park, and Chuck Yoo,
“Synchronization support for parallel applications in virtualized clouds,”

Journal of Supercomputing, vol.72, no.9, pp.3348-3365, Sep. 2016
(doi: 10.1007/s11227-015-1476-y, SCI Indexed, IF: 0.870, Category rank: 46.08% in JCR 2015)

 

[6] Hyunchan Park, Seehwan Yoo, Cheol-Ho Hong, Chuck Yoo,
“Storage SLA Guarantee with Novel SSD I/O Scheduler in Virtualized Data Centers,”

IEEE Transactions on Parallel and Distributed Systems, vol.27, no.8, pp.2422-2434, Aug. 2016
(doi: 10.1109/TPDS/2015.2493524, SCI Indexed, IF: 2.661, Category rank: 8.60% in JCR 2015)

 

[5] Cheol-Ho Hong, Kyungwoon Lee, Hyunchan Park, Chuck Yoo,
“ANCS: Achieving QoS through Dynamic Allocation of Network Resources in Virtualized Clouds,”

Scientific Programming, Jun. 2016
(doi: 10.1155/2016/4708195, SCI Indexed, IF: 0.455, Category rank: 89.60% in JCR 2015)

 

[4] Hyunchan Park, Hanchan Jo, Cheol-Ho Hong, Young-Pil Kim, Seehwan Yoo, and Chuck Yoo,
“SSD-Tailor: Automated Customization System for Solid-State Drives,”
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, vol.34, no.5, pp.862-866, May. 2015
(doi: 10.1109/TCAD.2015.2394500, SCI Indexed, IF: 1.003, Category rank: 46.00% in JCR 2014)

 

[3] Hyunchan Park, Sam H. Noh, and Chuck Yoo,
“O1FS: Flash file system with O(1) crash recovery time,”

Journal of Systems and Software, vol.97, pp.86-96, Nov. 2014
(doi: 10.1016/j.jss.2014.07.008, SCIE Indexed, IF: 1.245, Category rank: 28.43% in JCR 2013)

 

[2] Hyunchan Park and Chuck Yoo,
“Effect of buffer cache on storage performance in virtualised environment,”

IET Electronics Letters , vol.49, no.4, pp.251-253, Feb. 2013
(doi: 10.1049/el.2012.4069, SCI Indexed, IF: 1.038, Category rank: 52.67% in JCR 2012)

[1] Seehwan Yoo, Chuck Yoo, and Hyunchan Park,
“Fairness of proportional work-conserving I/O scheduling,”

IET Electronics Letters , vol.48, no.12, pp.682-684, Jun. 2012
(doi: 10.1049/el.2012.0261, SCI Indexed, IF: 0.965 Category rank: 53.47% in JCR 2011)

 

Domestic

Under construction

Patents

Under construction