- 2015.01.20
1. DNS 복습
[초기]
SIR-NIC라는 컴퓨터가 hosts.txt 파일을 가지고 있었다.
hosts.txt에는 모든 컴퓨터의 host name 과 ip address 정보가 저장됨.
Client는 FTP를 이용해 SRI-NIC에 접근하여 hosts.txt 파일을 다운로드.
[초기의 문제점]
hosts.txt 의 내용이 많을 수록 용량이 커져 업데이트가 늦고 네트워크 트래픽이 증가.
이름 중복으로 인한 호스트 이름 생성이 어려움.
=> 호스트 이름에 계층구조를 사용하여 분산된 데이터베이스 이용 : Domain Name System
[도메인 네임 스페이스]
Road Balancing을 위하여 분산화 된 데이터베이스를 만들었다.
[DNS 레코드의 종류]
SOA (Start of Authority) : DNS zone의 기본 이름 식별 ex) naver.com - ip 정보 x
A (Host Record) : 호스트 이름이 정의된 주 영역
ex) www - 10.10.10.10 => www.naver.com
itbank - 20.20.20.20 => itbank.naver.com
CNAME (Alias Record) : 별칭 ex) banana (= itbank) => itbank.naver.com - 20.20.20.20
헌데 모두 A record로 등록하면 될 것을 CNAME을 구지 사용할까?
=> Server의 IP가 바뀔 때의 사용(수정)의 편의성
MX (Mail Exchange Record) : E-mail 서버에서 이용, E-mail 주소 송수신 시 사용되는 도메인에 대한 ip 정보
[Root HInts]
DNS 루트 서버의 IP 주소를 포함하고 있는 파일
Root Server는 전 세게적으로 13개가 있다. (10개 : 미국, 2개 : 유럽, 1개 : 아시아)
[전달자]
외부 DNS 이름에 대한 DNS 쿼리를 외부 DNS 서버에 전달.
즉, 내가 구축한 DNS 서버가 모를 때 질의하는 외부 DNS 서버
실무에서 많이 사용하진 않음
[조건부 전달자]
도메인 이름에 따라 쿼리를 전달
미리 지정한 특정 도메인에 대한 DNS 쿼리를 매핑시킨다.
내부망의 IP 주소를 보호하기 위해 구축하는 경우가 있음.
[실제 DNS 정보 질의]
ex) www.kanziw.com 질의
1) Client PC 의 hosts.txt 참조. 없으면
2) DNS 서버에 질의 -> DNS 서버의 hosts.txt 참조. 없으면
3) Root Server에 .com Server IP 질의
4) .com Server에 kanziw.com Server IP 질의
5) kanziw.com Server에 www.kanziw.com IP 질의
6) DNS Server가 알아낸 최종 IP를 Client PC에 전달
[DNS 질의 순서]
1) 기본 DNS
2) 전달자, 없으면 Root Hint 를 거쳐 질의
3) 보조 DNS
4) 보조 DNS 의 전달자
2. Active Directory
사내에서 보안정책, 사용자, 그룹을 관리하기 편하다.
1번의 계정 추가, 수정, 삭제 작업이 적용된다.
[Active Directory 설치]
▷ Server1 PC
서버 관리자 - 역할 추가 - Active Directory 도메인 서비스 - 필요 역할 추가 - 설치
시작 - dcpromo 검색(Active Directory 도메인 서비스 설치 마법사) - 고급 모드 사용 - 새 포리스트에 새 도메인 만들기
- 포리스트 루트 도메인의 FQDN 입력 (ex. samadal.com) - 다음 - 포리스트 기능 수준 (2008 R2) - DNS 서버 체크
- Directory 서비스 복원 모드 암호 설정 - 요약 정보 확인 해보고 다음 - 완료시 다시 시작 체크
서버관리자 - 역할 - DNS 서버에 보면 내가 만든 samadal.com 에 대한 DNS를 만들어져 있는 것을 확인할 수 있다.
이 때 ipv6 에 대한 DNS 정보는 삭제해도 된다.
[Active Directory Join]
▷ Client1 PC
Client1 PC 의 DNS를 AD 서버의 ip로 입력한다.
cmd 에서 nslookup 으로 samadal.com을 입력하면 AD 서버를 보여준다.
시작 - 컴퓨터 우클릭 - 속성 - 우측 하단의 설정변경 - 변경 - 도메인을 samadal.com 으로 변경 ( => Join 작업)
- server1의 관리자 정보 입력 - 재시작
▷ Server1 PC
도메인에서 사용할 계정 생성
서버관리자 - 역할 - Active Directory 도메인 서비스 - Active Directory 사용자 및 컴퓨터 - samadal.com - Users
- 우클릭 - 새로 만들기 - 사용자 - 성, 이름, 이니셜, 로그온 이름(ID) 입력 - 다음 - 암호 설정 - 비밀번호 변경 체크 해제
▷ Client1 PC
사용자 전환 - ID@samadal.com 및 비밀번호 입력하여 로그인 (samadalID 로도 로그인 가능)
▷ Server2 PC
Client1 PC 와 마찬가지로 Join 후 로그인
[Local 계정으로의 전환]
ex) server2 의 계정
로그인 시 계정 명에 server2administrator 으로 진행
[Tip]
1) AD 에서 각 계정의 홈 디렉터리는 각각 PC에 저장된다.
2) AD 관리 메뉴(서버관리자 - Active Directory 도메인)에 들어가면 Computers 안에 Join 된 PC를 확인할 수 있다.
만약 컴퓨터를 삭제 하면 쫒아낼 수 있지만 재 가입이 안되며, 계정 사용 안 함을 이용하여 일시 정지 할 수 있다.
[ 액티브 디렉토리 도메인 서비스 문제]
1. Server1에 AD 도메인 서비스 역할 추가
- dcpromo 실행하여 설치 진행
- 도메인은 itbank.com
- DNS 서버 같이 설치
2. Server1에 itbank라는 그룹 생성(구성원 : test1)
3. Server1에 test1 이라는 사용자 추가
4. Client1과 Server2 itbnak.com 이라는 도메인 합류 후
5. 로컬 로그인과 도메인 로그인 두가지 방법으로 로그인 시도
6. Server1에서 서버관리자에서 Server2 도메인 합류 제거
7. Server2에서 도메인 로그인 다시 시도
'Study > WinServer' 카테고리의 다른 글
[14] DHCP server, DHCP dual server (0) | 2015.04.09 |
---|---|
[13] Active Directory - 계정 관리, 그룹 정책 관리 (0) | 2015.04.09 |
[11] 중간 복습 - 디스크 관리, 배치파일 (0) | 2015.04.09 |
[10] 감사 정책 (로그온, 개체 액세스 감사), 권한 상속 (0) | 2015.04.09 |
[09] 보안 정책, 계정 정책 - 암호정책, 보안 정책 Migration, 환경 변수 (0) | 2015.04.09 |
이번엔 Ubuntu 홈페이지에서 제공하는 Openstack 설치 방법에 따라 설치를 해보고자 한다.
사용하는 Ubuntu 는 14.04 LTS server 이다.
0. Before 설치
나는 Windonws server 2012 R2 의 Hyper-V 에 Ubuntu 를 VM으로 올려 사용중이다.
Ubuntu 공식 문서에 따르면 Ubuntu Server에는 2개의 interfaces 가 필요하다고 하기에 Hyper-V Network 설정을 통해
랜카드를 2개 장착하였다.
Installing Ubuntu OpenStack requires at least seven machines with two disks, two of which have two network interfaces (NICs). Install Ubuntu Server on one of the machines with two interfaces.
출처 : http://www.ubuntu.com/download/cloud/install-ubuntu-openstack
1개는 Bridge Network, 1개는 Internal Network 이다.
1. 설치
출처 : https://maas.ubuntu.com/docs1.5/install.html
사용 중인 Ubuntu에 MAAS 관련 PKG 설치해도 되나 나는 설치 CD 로 MAAS 설치를 진행했다.
(자질구래한 언어, disk, host 및 계정 설정 등은 설명에서 제외했다.)
* Multiple server install with MAAS
맨 처음 화면의 언어 선택 후 2번째 메뉴인 MAAS를 이용한 Multiple serrver install 을 선택
* Hostname : 개인이 정하기
* Create a new MAAS on this server
* update 사항은 나는 3번째 것인 manage ~~ landscape 를 설정했다.
2. Ubuntu 실행 및 설정
먼저 Ubuntu server eth0 의 고정 ip 설정, eth1 을 살린다. 추 후 서버 자신이 eth1에 대한 dhcp 서버로 설정 예정
$ sudo vi /etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.1.1
netmask 255.255.255.0
gateway 192.168.1.254
dns-nameservers 168.126.63.1 168.126.63.2 8.8.8.8
auto eth1
iface eth1 inet dhcp
Ubuntu 재부팅 후 dhcp, dns 관련 PKG 설치 되었나 확인
$ dpkg -l maas-dhcp maas-dns
설치 안되어 있다면
$ sudo apt-get install maas-dhcp maas-dns
MAAS 관리자 계정 생성
$ sudo maas-region-admin createadmin --username=ROOT --email=MYEMAIL@EXAMPLE.COM
3. MAAS 설정
MAAS 접속하여 로그인
http://MAAS_IP/MAAS
cluster 설정 위해선 boot images를 import 해야 한다. cluster page에서 import 눌러 놓고 아래의 설정 진행
SSH 설정 (출처 : https://help.github.com/articles/generating-ssh-keys/)
$ ls -al ~/.ssh 했는데 .ssh 디렉터리가 없다면 ssh key를 만들어아 햔다.
(만약 있다면 아래의 만드는 과정은 생략)
$ ssh-keygen -t rsa -C "YOURMAIN@DOMAIN.COM"
Generating public/private rsa key pair.
Enter file in which to save the key (/home/kanziw/.ssh/id_rsa): [Press Enter]
Created directory '/home/kanziw/.ssh'.
Enter passphrase (empty for no passphrase): [Type a passphrase - 비밀번호]
Enter same passphrase again: [Type a passphrase again]
만든 ssh 정보 등록
$ ssh-agent -s
$ ssh-add ~/.ssh/id_rsa
$ cat ~/.ssh/id_rsa.pub
나오는 결과물을 MAAS - User preferences - SSH 에 입력
내부 망의 ip 를 MAAS에서 자동 할당해주기 위해 DHCP & DNS 설정해야한다.
Cluster를 수정하여 dns 및 dhcp 주소를 입력한다.
(https://maas.ubuntu.com/docs1.5/cluster-configuration.html)
그리고 한참이 지나면 이전에 실행시켜놨던 import가 완료 된다.
헌데 아직 Openstack 을 어떻게 구성해야 하는지, Nodes는 어떻게 추가해야 하는지 등 모르는 것이 너무 많다.
Openstack에 대한 공부가 더 필요한 때이다.
'Linux > Openstack' 카테고리의 다른 글
Openstack - icehouse (All-in-one) Install in Cent OS 6.6 minimal (0) | 2015.04.09 |
---|---|
Devstack Install in CentOS 7 minimal (0) | 2015.04.09 |
Openstack 관련 Site memo (0) | 2015.04.09 |
- 2015.01.19
중간 복습
1. 디스크 관리 복습
[디스크 관리 도구 실행]
시작 - 실행 - diskmgmt.msc
시작 - 실행 - compmgmt.msc(컴퓨터 관리) - 저장소 - 디스크 관리
시작 - 실행 - cmd - diskpart
서버 관리자
디스크 유형 : 기본 디스크 vs 동적 디스크
[기본디스크]
파티션 : 물리적 디스크를 분리해 놓은 것 (기본디스크에만 존재하는 개념)
주 파티션 : 부팅 가능
확장 파티션 : 논리 드라이브로 나누기 위해 존재, 최대 1개 존재
논리 파티션 : 확장 파티션 안에서 무제한으로 생성 가능
MBR vs GPT
주 파티션 개수 : 4개 / 무제한(windows 128개)
최대 크기 (총) : 2 TB / 9.4 ZB
MBR ->GPT 변경 방법
select disk
convert gpt
실제로 가상머신에 8000 GB HDD 추가 뒤 MBR로 잡아보면 2048 GB 까지밖에 사용 못한다.
해당 파티션 비활성화 후 시작 - 실행 - cmd - diskpart - list disk 로 8000 GB Hdd 번호 확인
select disk ? - convert gpt 하면 GPT로 타입을 바꿀 수 있다.
& GPT는 확장파티션 및 논리파티션이 존재하지 않는다.
[Tip]
1) diskpart - select disk ? - clean 하면 해당 disk가 초기화된다.
[디스크 관리 문제 1]
(DiskPart 명령어 사용 금지)
1. Server1에 1G 하드디스크 4개 추가
2. Disk 1번에 주파티션 4개 생성
=> GUI 환경으로는 1개의 disk에 주파티션 4개를 생성하지 못한다.
[디스크 관리 문제 2]
(diskpart 사용)
기본 디스크 - MBR 형식으로 초기화
1. 주 파티션 1개
- 문자 경로 : X
- 레이블 : itbank
- 용량 : 100M
2. 확장 파티션 생성
3. 논리 드라이브 4개 생성
- 각 100M
- 문자 경로 : 원하시는 것
- 레이블 : 원하시는 것 사용하시고 마지막 논리 드라이브
에는 한글로 여러분의 이름 생성
create partition primary size=100
format fs=ntfs label="itbank"
create partition extended
create partition logical size=100
create partition logical size=100
create partition logical size=100
create partition logical size=100
select partition 2
format fs=ntfs label="1"
assign letter=I
select partition 3
format fs=ntfs label="2"
assign letter=J
select partition 4
format fs=ntfs label="3"
assign letter=K
select partition 5
format fs=ntfs label="한글" quick compress
assign letter=L
[동적 디스크]
파티션 대신 볼륨으로 구분
여러 개의 물리적 디스크를 하나의 논리 디스크로 구성 가능
볼륨 수에 제한이 없다.
디스크에 오류 발생 시 복구를 지원하는 디스크 구조를 만들 수 있다. (Raid-1, Raid-5 등)
단순 볼륨 : 기본디스크의 주 파티션과 같은 역할. (= 주 파티션)
[스팬볼륨]
디스크는 2개 이상 필요하며, 최대 32개까지 생성 가능
디스크가 2개(disk 0, disk1) 있을 때, 0번 디스크가 꽉 차면 1의 디스크를 사용.
이 때, disk 0 과 disk 1 의 속도가 각각 100이면 스팬볼륨의 속도는 100 이다.
만약 disk 0 의 속도가 100, disk 1 의 속도가 150 이면 스팬볼륨이 속도는 100~150 이다.
스팬볼륨의 용량은 각 디스크의 용량의 합이다.
내결함성을 갖지 않는다. (데이터 손상 시 복구 불가)
[스트라이프 볼륨(Raid-0)]
디스크는 2개 이상 필요하며, 최대 32개까지 생성 가능
디스크가 2개(disk 0, disk1) 있을 때, 0번 디스크와 1번 디스크를 동시에 사용한다.
즉, disk 0 과 disk 1 의 속도가 각각 100일때, 스트라이프 볼륨의 속도는 200이며
스트라이프 볼륨의 용량은 각 디스크 용량의 합이다.
내결함성을 갖지 않는다. - 1개의 디스크만 문제가 생겨도 다른 디스크를 사용하지 못한다.
안정성은 떨어지지만 성능은 가장 좋다.
[디스크 관리 문제 3]
1. 1번 디스크에 단순 볼륨 7개 생성되는지 확인
(단순 볼륨은 무제한 적으로 생성 가능)
disk list
select disk 1
convert dynamic
create volume simple size=100
create volume simple size=100
create volume simple size=100
create volume simple size=100
create volume simple size=100
create volume simple size=100
create volume simple size=100
[디스크 관리 문제 4]
(스팬 볼륨)
1. 스팬 볼륨으로 1번 디스크와 3번 디스크 묶기
- 1번 디스크에서 300M 사용 2번 디스크에서 100M 사용
- 디스크 문자 할당 : Y
- 레이블 : itbank
select disk 1
convert dynamic
create volume simple size=300
select disk 3
convert dynamic
list volume
select volume 2
extend size=100 disk=3
format fs=ntfs label="itbank"
assign letter=Y
[미러볼륨 (Raid-1)]
동적 디스크 2개로 구성
기존의 단순 볼륨을 미러링
동일한 복사본 2개를 만들어 중복성 제공 (내결함성, , 복구율은: 99%)
확장 및 축소 불가능
속도는 느린 디스크의 속도를 따라감
용량은 1개 디스크의 용량 만큼만 사용 가능 (고비용)
디스크 손상 발생 시 디스크 관리메뉴에서 우클릭 하면 복구 버튼이 활성화된다.
[Raid-5]
디스크는 3개 이상 필요하며, 최대 32개까지 생성 가능
추가 디스크 하나의 비용만으로 내결함성을 제공
오류 검사를 위하여 parity bit를 사용, 복구율은 2/3 정도 된다.
확장 및 축소 불가능
용량은 전체 용량의 2/3 정도 사용 가능
=> 하지만 내가 확인한 결과로는 n-1/n 만큼의 용량 사용 가능하다. 복구율은 잘 모르겠다.
[디스크 관리 문제 5]
(스트라이프 볼륨)
1. 디스크 1~4 초기화(clean)
2. 디스크 1, 3 스트라이프 볼륨으로 각 300M 씩 묶기
- 문자 할당 : F
- 레이블 : samadal
생성 된 드라이브가 용량을 얼마나 사용 가능한지 확인
select disk 1
convert dynamic
select disk 3
convert dynamic
select disk 1
create volume stripe size=300 disk=1,3
format fs=ntfs label="samadal"
assign letter=F
[디스크 관리 문제 6]
(미러 볼륨)
1. 디스크 1~4 초기화(clean)
2. 디스크 1, 3 미러 볼륨으로 묶기
- 각 용량 100M
- 볼륨 레이블 : raid1
- 문자 할당 : X
3. 디스크 1, 3 스트라이프 볼륨으로 묶기
- 각 용량 100M
- 볼륨 레이블 : Radi0
- 문자 할당 : Y
select disk 1
convert dynamic
select disk 3
convert dynamic
select disk 1
create volume mirror size=100 disk=1,3
format fs=ntfs label="raid1"
assign letter=X
select disk 1
create volume stripe size=100 disk=1,3
format fs=ntfs label="raid0"
assign letter=Y
2. 배치파일 복습
* echo : 뒤에 오는 문자열을 출력
* 환경변수 : 시작 - 환경변수 검색
- 계정의 환경 변수 편집 : 계정마다 환경 변수 설정
- 시스템 환경 변수 편집 : 시스템 전체에서 사용하는 환경 변수 설정
[환경 변수 만들기]
시작 - 환경 변수 검색 - 시스템 환경 변수 편집 - 환경 변수 - 새로 만들기
[환경 변수의 활용]
만든 환경 변수는 %이름% 으로 사용 가능.
[Tip]
1) 적용된 환경 변수를 사용하려면 cmd 창을 재시작 해야한다.
2) 시작 - 실행 에서도 환경 변수 사용 가능.
[실습]
@echo off // 명령어 숨기기
echo [ %date% / %time% ]
pause // pause 뒤에 추가 명령어 진행 가능
@echo on // 명령어 다시 나타내기
echo 안녕하세요
pause
echo [ %date% / %time% ] > kanziw.txt // kanziw.txt 로 덮어쓰기, 상대경로로 저장
echo [ %date% / %time% ] >> kanziw.txt // kanziw.txt 에 덧붙이기
[환경변수 및 배치파일 문제]
1. 배치파일을 이용해 바탕화면에 여러분성함.log파일을
생성하는데 경로를 지정할 때 3글자까지만 사용하여 저장
2. 실행창에서 환경변수를 사용하여 C 드라이브에 있는
itbank.bat을 실행
3. itbank.bat을 만들어 봤는데 실행에 itbank라고 치고
실행 눌렀을 경우 itbank.bat가 실행 될 수 있게 만들기
[Tip]
1) 환경변수에 jjw를 바탕화면 경로로 연결한 뒤
echo [ %date% / %time% ] > %jjw%정지웅.log
2) 환경변수 jjw2 를 C:\itbank.bat 로 한 뒤 %jjw2% 실행
3) C:\system32 폴더 안에 itbank.bat 파일 복사
4) 실행 창에 itbank만 쳐도 실행이 되는 이유는 시스템 변수 중 PATHEXT 안에 .bat 가 포함되어 있기 때문이다.
'Study > WinServer' 카테고리의 다른 글
[13] Active Directory - 계정 관리, 그룹 정책 관리 (0) | 2015.04.09 |
---|---|
[12] DNS 복습, Active Directory 설치 및 사용자, 그룹 추가 (0) | 2015.04.09 |
[10] 감사 정책 (로그온, 개체 액세스 감사), 권한 상속 (0) | 2015.04.09 |
[09] 보안 정책, 계정 정책 - 암호정책, 보안 정책 Migration, 환경 변수 (0) | 2015.04.09 |
[08] 알ftp로 ftp 서버 구축, 파일 차단 관리 (0) | 2015.04.09 |