거울 소개 및 인수인계 세미나 BY COEARTH.

Slides:



Advertisements
Similar presentations
1 장 Unix/Linux 소개 1 Helpers. 1 장 내용 1. 왜 유닉스인가 ? 2. 유닉스 시스템 구조 3. 유닉스 역사 및 버전 4. 리눅스 설치 ( 별도 2 시간 실습 ) 5. 사용 환경 6. 사용자 계정 관리 Unix/Linux 2.
Advertisements

‘140 자의 마법 ’ 트위터 배우기 하나님의 참사랑을 상속받고 승화 때까지 영광을 올리자 ! 한국협회 기획조정실.
성동구 성수동 지역 답사 및 투자가치 분석 1. 성수동 주요지표 및 재개발 개요 2. 뚝섬 서울숲 시민공원 개요와 영향 3. 신분당선 연장 노선과 영향 4. 성수동 랜드마크 아파트 동향 ( 롯데 캐슬, 현대 아이파크 ) 5. 성수동 지역 재개발 동향 ( 아파트, IT 공업단지,
KAIST 09 SPARCS 10 안재만 (Kuss).  OS  Kernel & Shell  OS Layer  Linux  Linux / GNU  Linux 역사  Linux 배포판  Linux Directories.
인적사항 기재요령 ▣ 주민등록번호, 주소 반드시 확인 (주민등록 등본과 일치 원칙)
라포르시안 뉴스레터 e마케팅 소개서 ㈜올댓닥터스
Linux Seminar #1 리눅스 이해하기.
Smart Media Board 구축 및 운영 제안서
Introduction to Django
시작부터 끝까지 진지한 궁서체로 진행하는 완벽한 주입식의 하드코어한 리눅스/장난감 세미나
2 장 인터넷의 구성 및 접속.
3 장 인터넷 서비스.
SPARCS Current Status SPARCS08 logue 김도국.
극동대학교 전자결재 구축 그룹웨어 결재자 교육.
휠 인수인계 세미나 jambo ⓒ 홍양홍삼.
Ⅰ웹로그분석을 통한 쇼핑몰 운영전략 코리아 인터넷 마케팅센터 대표 김형택
웹 해킹 기초와 실습.
1장 유닉스 소개.
FTP 09 SPARCS 박철웅 [dothack].
Korea Internet Neutral exchange 목차 Section 1 Section 2 Section 3 회사소개
프로그램 사용 안내서 프로그램명 : 멤버북.
<LS그룹 연수원 교육 아르바이트 채용 공고>
SQL*Plus - Oracle ISQL -
NFS, FTP coearth, george.
Chapter 32 Analyzing Web Traffic
Chapter 02. 시스템 보안 : 건강한 시스템이 챙겨야 할 기본
서버의 종류와 기능 환경공학과 권진희.
Geek OS Setup 정범종
Introduction to Networking
소리가 작으면 이어폰 사용 권장!.
13장. FTP 서버의 설치와 운영.
사용자의, 사용자에 의한, 사용자를 위한 APT.상가 분양임대관리 System 제안서
Web Security 모든 HTTP 패킷은 엽서와 같음 SSL/TLS
Geek OS.
자바 5.0 프로그래밍.
리눅스 명령어 실습 임베디드 시스템 I.
Processing resulting output
호스팅 서비스 보안 및 백업 가이드 라인 ver 1.0 한국 호스팅 도메인 협회
Geek-OS Project 정영진
실시간 자원 량 정보 제공을 결합한 Heartbeat
Html(front end) & jsp(back end)
상지대학교 컴퓨터공학과 고광만 Lecture 01: 유닉스/리눅스 소개 상지대학교 컴퓨터공학과 고광만
BIZSIREN 실명확인서비스 개발 가이드 서울신용평가정보㈜ 신용조회부 (TEL , FAX )
「 LINUX IBM SpectrumScale 설치 가이드」
Google Cloud Platform을 이용한 서버 인프라 구축
정보보안.
Part 04-3 Windows 2000 Server IIS Outlook Express 도메인 사용 관리자
PDFwebReport ( PDF 로 만드는 웹 리포트 ) 파워빌더로 개발하고 PDF 로 보는 웹 리포트입니다
안드로이드 UCheckPlus 학생용 App 출석체크 간편 매뉴얼
Linux 9.X 기초에서 활용까지 Chapter 03 리눅스 설치.
운영체제 RaspberryPi Sejin Oh.
For Linux 1.0.
서울디지털대학교 상대평가 성적입력 방법 교무처 교무행정팀.
Ⅳ. 컴퓨터와 생활.
실전 프로젝트: 홈페이지 구축 시트콤 프렌즈 팬 사이트 구축하기.
Unix 방문(접속하여 로그인) 하기 수퍼 유저 되어 사용자 계정 만들기 Unix의 아파치 웹 서버에 홈페이지 등록하기
컴퓨터활용능력 필기 2급 정리.
[ 한가지 부족한 것 ] [ 밤이 오기 전에 일하라 ]-----
극단. 기획사 참가단체 사랑티켓 홈페이지 사용안내서
거래처 매뉴얼 리 얼 시 스 템 주 식 회 사.
동계성수기 예약 신청서 강원도 춘천시 남산면 북한강변길 688 엘 리 시 안 강 촌
개인정보 수집/이용 동의서 □ 개인정보의 수집/이용 목적 - 채용 및 채용관리, 지원자 평가, 지원자 사후관리
HTML5 웹 프로그래밍 입문 홈페이지 계정.
매물장 로그인 직원을 미리 생성하시면 직원 ID로 로그인 가능.
거래처 매뉴얼 리 얼 시 스 템 주 식 회 사.
“전자구매” 메뉴 접속을 위해 “전자입찰” 메뉴에서 공인인증서 등록
코 칭 결 과 센 터 구성센터 (모바일) 코칭대상 프로 (엔지니어) 코칭일시
전문건설업의 정도경영 기업생존의 핵심요소 성건회 투명사회실천위원회 성건회 투명사회실천위원회 안녕하십니까!
㈜커티스국제여행사.
매출채권보험 제도 안내 4대 효과 중소기업 사장님들의 든든한 우산 판매위험 보장 사후관리 매출증대 대출금리 우대 매출채권보험
Presentation transcript:

거울 소개 및 인수인계 세미나 BY COEARTH

거울 간단한 소개 Apt-get으로 패키지 받는 곳? Eclipse 패키지/플러그인 받는 곳? 아치 리눅스 한국 유일의 tier 1 미러? 거울

미러링 Ubuntu, Eclipse, Debian 등등의 사용자는 엄청나다. 이런 서비스들은 사용자에게 여러 파일들을 제공한다. Eclipse: 설치 파일, 업데이트 파일, … Ubuntu, Debian: 패키지 저장소, OS 이미지 파일, … 이 파일들이 모두 한 서버에 저장되어 있다면… 전세계의 모든 사용자들이 한 서버에 몰리게 됨 서버 폭발! 미러 서버는 주 서버의 트래픽을 적절히 분산시킨다.

목차 미러링하고 있는 서비스 소개 FTP 서버 소개 FTP 서버 구조 미러링 추가하기/중단하기/삭제하기 보안 관련 사항 Troubleshooting 메일 처리하기 / 중요한 메일링 리스트 선배들 도움 받을 수 있는 곳 중요한 사람들 해야할 일들

미러링하고 있는 서비스 소개 가장 많이 사용하는 것 우분투 페도라 데비안 오픈수세 CentOS 이클립스 정도?

서버 소개 하드디스크 12개를 RAID-6로 묶어 18TiB의 저장 공간 확보 램 24Gib, 랜선 2 * 1Gbps (현재 40G랜카드가 장착되어 있으나, 드라이버 문제 때문에 사용 불가능) Http, FTP, rsync 프로토콜을 통한 접속을 지원 트래픽 양은 HTTP > FTP > rsync

Server 소프트웨어 소개 HTTP FTP Rsync Lightttpd 사용 Vsftpd 사용 Rsync 사용 주로 다른 미러에 미러를 제공하기 위한 수단

FTP 서버 구조 디렉토리 구조만 잘 알면 됨!

/mirror/ 거울에 관련된 파일들이 있다 Mirror 디렉토리 전체는 git으로 관리된다 패키지 관리 스크립트 셀제 패키지 데이터 패키지 메타데이터 http://ftp.kaist.ac.kr/ 웹 사이트 Mirror 디렉토리 전체는 git으로 관리된다 https://github.com/sparcs-kaist/ftp.kaist.ac.kr 참고 몇몇 디렉토리는 /srv/로 링크된다 /mirror/ftp/ -> /srv/ftp/, /mirror/www/ -> /srv/www/ RAID6로 18TiB를 마운트

/mirror/bin/ 패키지 추가나 사용량 통계 등을 내는 각종 스크립트들이 있다. create-pkg: 패키지 추가하기. check-anomalies: 로그를 보고 이상한 점을 알려준다. publish-status: 현재 상태를 업데이트 해 JSON으로 저장. get: URL에 따라 미러링할 컨텐츠를 받아온다. (get.ftp, get.http, get.rsync) 대부분의 스크립트는 bash로 짜여져 있음. create-pkg를 제외하고는 주기적으로 자동 실행되거나 다른 스크립트 에서 참조될 뿐, 직접 실행할 일은 거의 없다. /mirror/lib/: 미러링과 관련된 각종 함수들이 구현되어 있다. sync.sh <- pkg.sh <- geoul.sh

/mirror/pkgs/ 거울에서 미러링하는 패키지들에 대한 메타데이터가 담겨 있다. http://ftp.kaist.ac.kr/geoul/pkgs/... /mirror/pkgs/fedora/: Fedora 미러링에 대한 정보 ./sync: 실제 싱크를 시작하는 스크립트 ./name: 패키지 이름 ./source: 데이터를 받아 오는 곳 ./frequency: 싱크 주기 ISO 8601 시간 포맷을 따른다. ./links: 패키지와 연관된 프로젝트 페이지 ./data/: 실제로 미러링하는 패키지 데이터 ./du.P#X.png: 디스크 사용량 ./usage.P#X.png: 트래픽 사용량 다른 특이사항을 적는 ./note나 원본 파일임을 알리는 빈 ./original 파일이 있을 수 있다.

/mirror/ftp/ 실제로 미러링되는 데이터가 있는 폴더. /mirror/ftp/fedora/: Fedora 컨텐츠(iso, rpm 파일 등등)를 담고 있다. /mirror/ftp/vim/: Vim 홈페이지를 미러링하고 있다. ./robots.txt: 웹 크롤러 접근을 제어하기 위해 HTTP 서버로서 제 공하는 파일 기본적으로 모든 디렉토리를 차단 ./ls-lR: 다른 미러를 위해 FTP 서버로서 제공하는 파일

/mirror/log/ 미러링과 관련된 로그가 있는 폴더. ./sync: 싱크와 관련된 로그들을 저장 ./usage: 트래픽 그래프를 저장 ./size: 디스크 사용량 그래프를 저장 ./unified: HTTP 서버 등 서비스의 로그를 저장 현재 로그가 있고 연도/월별 폴더에 예전 로그들이 gzip 압축되어 있음

/mirror/www/ ./self: http://ftp.kaist.ac.kr 거울에 관련된 정보들을 볼 수 있다. @kaist_ftp 트위터 피드 트래픽, 디스크 공간 사용량 현재 패키지 싱크 상황 index.html은 index.html.in으로부터 생성된다. ul#contents 하위의 패키지 목록들을 자동으로 생성한다. make index.html ./debian, ./ubuntu: 각각의 프로젝트 HTTP 미러링

/mirror/etc/ 거울에서 쓰는 다양한 프로그램/데몬의 설정 등을 담고 있음. /mirror/etc/noupdate lighttpd.conf rsyncd.conf vsftpd.conf crontab.node, crontab.leader 주기적으로 상태 업데이트, 정체된 싱크 취소 등의 일을 한다. 주기적인 싱크: crontab.node에 설정 되어 있다. /mirror/bin/maintain-sync를 3분마다 실행 /mirror/etc/noupdate 존재하면 싱크를 수행하지 않는다. (/mirror/lib/geoul.sh의 system_not_degraded로 점검중인지 확인)

패키지 추가하기 /mirror/bin/create-pkg에 패키지 ID를 인자로 준다. 패키지 ID: /mirror/pkgs/아래에 이 이름으로 디렉토리가 생성된다. Name: 표시할 패키지 이름 Directory Name: ftp.kaist.ac.kr에 노출할 폴더 이름 /mirror/ftp/하에 이 이름으로 디렉토리가 생성된다. 생성되지 않는다면 직접 생성 해 줘야 된다. 권한 설정 꼭 확인! (폴더 소유자가 mirror여야 함) Source URL: 싱크받아올 곳 Frequency: 싱크 주기 보통 하루나 12시간 정도로 잡는다. Homepage URL: 패키지와 연관된 프로젝트의 웹 사이트

패키지 확인하기 기본적으로 새 패키지를 생성하면 frequency가 아닌 frequency.disabled가 생 성된다. 바로 자동적으로 싱크되지 않는다. /mirror/pkgs/ID/에서 설정을 확인한다. 필수적인 모든 파일들(name, source, frequency.disabled)이 있는지 확인한다. /mirror/ftp/DIRNAME/이 존재하는지 확인한다. frequency.disabled를 frequency로 옮긴다. frequency가 있으면 여기에 적힌 주기대로 자동적으로 싱크가 수행된다. Fedora같은 몇몇 패키지는 추가적인 sync 작업을 필요로 한다. ./sync 파일을 적절히 수정하자. 모든 게 정상이라면 패키지 싱크를 수행한다.

패키지 싱크받기 /mirror/pkgs/ID/ 안에서 ./sync now를 실행한다. 기본적으로 /mirror/lib/sync.sh를 불러오고 /mirror/bin/get을 실행한다. 디렉토리 안의 source에 따라 알아서 rsync, wget등을 실행한다. 싱크가 시작되면 /mirror/log/sync/에서 로그를 볼 수 있다. 오류가 난다면 http://ftp.kaist.ac.kr/geoul/sync/ 아래에서 로그를 찾아 보자. http://ftp.kaist.ac.kr/ 에 있는 목록에서 로그를 바로 열 수도 있다. 싱크가 진행중일 때는 lock 파일이 생성된다. 한 패키지를 여러 번 sync하려 할 때 생기는 경쟁 조건이 방지된다. 이미 진행중인 싱크를 중단할 때에는 ./sync stop을 쓴다.

싱크 할 때 팁 싱크 도중에 터미널을 꺼버리면 싱크가 멈춰버림 현재 ftp 서버에는 screen이 설치되어 있음 ./sync now 을 실행하고 Ctrl-A D 를 누르면 가상 터미널에서 분리됨 그 다음 터미널을 꺼도 됩니다.

패키지 삭제하기 그냥 /mirror/pkgs/의 해당 패키지를 삭제하면 된다. 물론, /mirror/ftp/등에 있는 (/mirror/pkgs/data/) 데이터는 직접 찾아서 삭 제해 줘야 된다. 깃허브의 검색 기능 사용하면 해당 페키지 설정 파일들이 어디에 위치해 있는지 쉽게 파악하기 가능! 일일이 찾아서 지워주자 index.html을 다시 make해 주는 것을 잊으면 안 된다. How? /mirror/www/self/ 에서 make 해주면 된다

새로운 계정 생성하기 FTP 서버의 경우 보안을 위해서 sparcs서버에서의 접속만 허용하고 있 음 접속도 오직 Public Key를 이용해야만 접속 가능 관리자 권한도 휠과 분리해서 관리, LDAP 연동 돼있지 않음 계정 만드는 과정) useradd 로 계정 만들기 Ssh-keygen 으로 private key/public key 만들기 (2048 byte 이상의 rsa key권 장), 스팍스 서버에서 만들기 /home/[유저이름]/.ssh/authorized_keys 에 pubic key 추가 Sshd_config에 해당 계정 추가 Visudo를 이용해 새로운 계정 추가 항상 비밀번호는 최대한 길고, 다른 사이트에서 사용하지 않은 것으로 하기

방화벽 관리하기 스팍스 대부분 서비스와 다르게 ftp는 netfilter/iptables로 방화벽 설정이 되어있음 Iptables –L 로 현재 방화벽 설정을 볼 수 있다 Iptables-save > /etc/iptables.rules 로 방화벽 설정 저장 가능 데비안 푸시 서버 ip가 바뀌는 경우 방화벽에서 막으므로 새로운 ip로 접근이 가능하도록 바꿔주기

TroubLESHOOTING 패키지 싱크가 안 될 때 로그를 확인해본다. WEB으로도 쉽게 확인 가능

이 경우 미러링 하는 서버가 접속이 안되서 (Network is unreachable) 싱크가 안되고 있다 Ex) 일본 서버 (ftp.jaist.ac.jp) 등을 고려해본다.

싱크 위치 바꾸는 방법 /mirror/pkgs/[패키지 이름]/ 폴더로 이동 Source 파일 변경해주기

Debian의 경우 싱크 안될 때 Debian의 경우 archvsync라는 프로그램을 따로 이용해서 싱크가 돌아감 푸시가 제대로 오는지 확인 (방화벽 등에 문제가 있을 수 있음)

한꺼번에 너무 많은 파일이 삭제돼서 안될 때 Eclipse와 같은 경우 파일이 많이 삭제 경우가 많음 소프트웨어 새 버전이 업데이트되어 옛 버전이 지워졌을 수도… 혹시 모를 비정상적인 싱크를 방지하기 위한 대비책 하지만 정상적인 경우라면 강제로 싱크를 해줄 필요가 있음

/mirror/pkgs/[패키지 이름]/ 폴더로 이동 환경변수를 주고 sync now를 실행하기 GET_NO_MAXDELETE=true ./sync now 최후의 수단으로는 /mirror/ftp/[패키지 이름]를 날려버릴 수 있다 극단적인 해결방법이므로 확실히 무언가 심각하게 꼬였을 때에만 고려한다

몇몇 파일을 미러링할 수 없을 때 임시파일 등의 권한이 잘못되어 미러링 할 수 없을 때가 있다 그쪽 서버 문제이므로 exclude 목록에 추가하는 것 이상으로 해줘야 될 일 은 없다 로그를 보고 무슨 파일이 문제를 일으키는지 확인하자

중요한 사람들? 코렌 (Koren) KOREN NOC Helpdesk Tel : 02-6191-2081 네트워크 광 단자 빌린 곳 인터넷 망을 제공하는 곳 인터넷에 문제가 생기면 연락할 필요가 있음 <연락 주소> KOREN NOC Helpdesk Tel : 02-6191-2081 E-mail : noc@koren.kr

FTP로 메일 온 것 처리하기 학교 외부 사람들도 FTP를 많이 사용함, 그래서 간간히 메일이 옴 미러 추가 요청, 서비스 장애 요청, 속도 느리다는 불만 등등? (당연하게도) 신속하게 처리해 줄 필요가 있음 일단 edalias로 geoul 메일링을 구독하자

이런식으로 반드시 CC에 ftp@ftp.kaist.ac.kr를 붙여준다 그래야 다른 거울 구성원들이 메일에 답장을 했는지 알 수 있어서 중복된 답변을 피할 수 있다.

선배들 도움 받기 스랙의 #ftp-issues 에서 질문하기. 거울이면 반드시 들어오세요 메일을 통해 질문하기. (cc에 ftp@ftp.kaist.ac.kr) 붙이면 됩니다 석주 先輩에 질문하면 아마 도와줄 수도?

해당 배포판 미러 관리자에게 도움받기 우분투, 페도라 등등 개별적인 배포판의 미러링 문제가 있을 때, 직접 미러 관리자에게 물어보는게 가장 확실한 대답을 들을 수 있 음 예) arch-mirrors@archlinux.org 에 메일을 보내면 아치리눅스 미러링 관련된 질문의 대답을 얻을 수 있음 mirrors@debian.org 에 메일을 보내면 데비안 관려된 질문, 대답을 얻을 수 있음 누구의 흑역사도 그대로 인터넷으로 공개되어있으니 한번 메일링 리스트에 서 찾아보세요. (힌트) https://lists.debian.org/debian-mirrors/ 에서 찾아보 기

해야할 일들 OS 업데이트 거울 깃허브 위키 활성화 사이트 리뉴얼 HTTPS(TLS) 적용 이것 때문에 보안 패치, 40G 네트워크 카드를 사용하지 못하고 있음 거울 깃허브 위키 활성화 쉽게 내용들을 찾아볼 수 있게 만들어서 인수인계/문제 해결이 쉽도록 사이트 리뉴얼 https://mirrors.tuna.tsinghua.edu.cn/ 가 정말 깔끔하게 잘 적용 HTTPS(TLS) 적용 OS 업그레이드 등 적용하기 이전에는 힘들 수도 있을 것 같음

해야할 일들 필요 없는 패키지 정리하기 40G 인터넷으로 전환 서버 업그레이드 및 하드디스크 용량 업그레이드 일부 이미 진행되었음 (medibuntu, freebsd-kr) 40G 인터넷으로 전환 OS 업데이트 ㅠㅠ 서버 업그레이드 및 하드디스크 용량 업그레이드 서버 사용한지 거의 10년이 다 되감 하드 용량과 성능이 부족함. 간간히 엄청 느려지는 경우가 있음 ZFS 사용해보기? SSD로 cachin하면 하드디스크 botleneck 문제도 해결 될 수 있을 것 같음….. (서버 업그레이드 한다는 가정 하에)

참고자료 Differ 거울 세미나 (감사합니다…)