본문 바로가기

IT To do and To was

22년 3월 4일_부글부글.. 저 무능한 강사는 목을 매우 처라

728x90
반응형

금요일[하둡맨 오늘은 하둡을 시작할 수 있을 것인가..!]

1. 알고리즘_못함

2. 하둡 오늘 진도

3. 웹디자인 확인

 

1. 알고리즘

https://www.acmicpc.net/problem/1003

 

1003번: 피보나치 함수

각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다.

www.acmicpc.net

 

2. 하둡

Data노드
네임노드에서ssh키 확인
cp id_rsa.pub 

slave1에 로그인
cd .ssh 키가 있는지 확인
ls -al

master에서
cd .ssh
ls

scp ~/.ssh/id_rsa.pub slave1:~/.ssh/authorized_keys
하면 에러나옴(왜시킨 거야)

vi known_hosts 열어서 확인
dd로 내용 삭제
로그 삭제한듯?
 
그리도 다시 시도(scp ~/..ssh/id...[중략])
그런 후 접속할 slave1의 패스워드를 입력

[종문오빠피셜로 reboot와 keygen을 잘 조합함...]
ssh-keygen -R slave2

ssh slave1
netstat -ano | more
하면 22번  포트가 listen이면 실행되고있다는 걸 말함(ㅇㅉㄹㄱ..;)

막혀서 뭐 안된다고 말함
그냥 설명만하기로 함

jdk동기화
rsync -av ~/jdk1.8.0_321 slave1:~/jdk1.8.0_321
.bashrc 파일 동기화
rsyn -av ~/.bashrc slave1:~/.bashrc
hadoop동기화
rsync -av ~/hadoop-3.2.2/ slave1:~/hadoop-3.2.2/

-name노드 : $HADOOP_HOME/etc/hadoop/hdfs-site.xml파일수정
-name노드 mapred-site.xml
-name노드 :데이터 노드 호스트명설정
ex)slave1

------------
data노드
hdfs-site.xml
vi $HADOOP_HOME/etc/hadoop/hdfs-site.xml
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///dfs/data</value>
</property>

slave1,2,3 root로 로그인
cd /dfs
mkdir data
chown -R phr:phr /dfs/data (소유자를 개인유저로 변경)
ll

data노드를 yarn-site.xml
vi $HADOOP_HOME/etc/hadoop/yarn-site.xml
참고 1
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>

(원래는 데이터 노드에 기재하는 것인데, copy에 안됨에따라 name노드(master)에 <!-- -->로 기재)

slave3
vi $HADOOP_HOME/etc/hadoop/hdfs-site.xml
<property>
<name>dfs.namenode.chechpoint.dir</name>
<value>file:///dfs/namesecondary</value>  #fsimage, edits 사본이 저장될 디렉토리
</property>

master에도 dfs가 있는지 확인 없으면 만들고 chown하기
root@slave3에서
cd /dfs
mkdir namesecondary
chown -R phr:phr /dfs/namesecondary/
ll

-data(slave) 노드들에게 동기화
phr@slave1 rsync -a ~/hadoop-3.2.2/etc/hadoop/  slave2:~/hadoop-3.2.2
phr@slave2 rsync -a ~/hadoop-3.2.2/etc/hadoop/ slave3:~/hadoop-3.2.2/etc/hadoop/
(했다치고 넘어감)

-----------------
name노드에 ssh키 생성
--ssh 키 생성
ssh-keygen -t ras
cd ~/.ssh
ls
cp id_rsa.pub autorized_keys
ls
키를 복사
scp ~/.ssh/id_rsa.pub slave1:~/.ssh/authorized_keys
2,3도 같이 함 (=안돼서 넘어감)

ssh연결 확인
ssh slave1 date (=안돼서 넘어감)

네임노드 포멧
hdfs namenode -format

포맷 확인
cd /tmp/hadoop-phr/dfs/name/current/
ls

cd /dfs
cd name
cd current
pwd
ll(파일시스템 이미지 파일)


cd edits
cd current/
ls (데이터들의 변경사항을 저장하는 로그)

하둡 클러스터 실행
$HADOOP_HOME/sbin/start-all.sh

하나씩 실행시키려면
hadoop-daemon.sh start
hdfs --daemon start
yarn-daemon.sh start
yarn --daemon start

브라우저에서 node상태 확인
https://127.0.0.1:9870

Name node에서 
jps 
ssh slave1 jps 

firefox브라우저에서 
http://namenode-ip:9870
live nodes 3인거 확인(data node가 3이기때문)

파일 다운 된 거 확인 (https://bit.ly/3pAI4Pe_강사님 개인 드라이브)
2008.csv.bz2
압축 풀기
bunzip2 2008.csv.bz2
하둡 클러스터 실행 중
hdfs dfs -mkdir /airlin/ #디렉토리생성
hdfs dfs - put 2008.csv /airline/
hdfs dfs -ls /airline
업로드한 파일위치
http://namenode-ip:9870  #Utlities -> Brower to file system에서 파일의 블록이 몇개인지 각 데이터 블록은 어떤 데이터 노드에 있는지 확인 가능

데이터 노드의 블록 확인
ssh slave1
cd /dfs/data/current/BP-xxx/current/finalized/subdir0/subdir0
ls -al







systemctl start 
rsync -av ~/jdk1.8.0

 

3. 웹디

<!DOCTYPE html>
<html lang="ko">
    <head>
    <meta charset="UTF-8">
    <title>박하률</title>
        <link rel="stylesheet" href="css/common.css">
        <script src="js/jquery-3.3.1.min.js"></script>
        <script src="js/common.js"></script>
    </head>
    <body>
    <div class="header">
       <div class="wrap">
        <h1><a href="#"><img src="imges/New%20Piskel%20(3).png" alt="임시로고"></a></h1>
        <ul class="mainnav">
            <li><a href="#">탑</a>
            <ul class="subnav">
                <li>블라우스</li>
                <li>티</li>
                <li>셔츠</li>
                <li>니트</li>
            </ul>
            </li>
            <li><a href="#">아우터</a>
            <ul class="subnav">
                <li>자켓</li>
                <li>코트</li>
                <li>가디건</li>
                <li>머플러</li>
            </ul>
            </li>
            <li><a href="#">팬츠</a>
            <ul class="subnav">
                <li>청바지</li>
                <li>짧은바지</li>
                <li>긴바지</li>
                <li>레깅스</li>
            </ul>
            </li>
            <li><a href="#">악세사리</a>
            <ul class="subnav">
                <li>귀고리</li>
                <li>목걸이</li>
                <li>반지</li>
                <li>팔찌</li>
            </ul>
            </li>
        </ul>
        </div>
    </div>
        <div class="main">
            <h1>이미지 슬라이드 넣는 곳</h1>
        </div>
    <div class="contents">
      <div class="board">
        <ul class="btn">
            <li class="first"><a href="#tab01" class="active">공지사항</a></li>
            <li><a href="#tab02">갤러리</a></li>
            </ul>
            <div class="bwrap">
                <div class="notice">
                <ul>
                    <li><a href="#">◎ 하률이의 3월 계획</a><span class="date">
                        2022.03.03
                    </span></li>
                       <li><a href="#"> 밥 잘먹기</a><span class="date">  2022.03.04 </span></li>
                       <li><a href="#"> 근육량 늘리기</a><span class="date">  2022.03.05 </span></li>
                       <li><a href="#"> 웹디자인기능사 합격하기</a><span class="date">  2022.03.30 </span></li>
                       <li><a href="#"> 마음에 여유갖기</a><span class="date">  2022.03.30 </span></li>
                       <li><a href="#"> 공부 나태해지지 않기</a><span class="date">  2022.03.30 </span></li>
                </ul>
                </div>
                <div class="gallery">
                <ul>
                    <li><a href="#"><img src="imges/" alt="갤러리2"></a></li>
                    <li><a href="#"><img src="imges/%EB%8B%A4%EC%9A%B4%EB%A1%9C%EB%93%9C.jfif" alt="갤러리3"></a></li>
                </ul>
                </div>
            </div>
        
        </div>
        <div>banner</div>
        <div>바로가기</div>
    </div>
    <div class="footer">
       <div class="wrap">
            <h1>로고</h1>
            <div>Copyright</div>
            <p>SNS</p>
        </div>
    </div>
</body>
</html>

$(document).ready(function(){

    $('.btn a').click(function(){
        $('.btn a').removeClass('active');
        $(this).addClass('active'); 
        var i = $(this).parent().index();
        $('.bwrap > div').fadeOut(0);
        $('.bwrap > div').eq(i).fadeIn(0);
    });
});
*{padding: 0; margin: 0 auto;/*여백 없앰*/
    font-family: "맑은 고딕", sans-serif;}
li{list-style: none;}
a{text-decoration: none;} /*리스트 기호 없앰*/
img{border: none;} /*이미지 링크시 생기는 선 없앰*/

.mainnav{
    top: 0px;
    float: right;
}
.header{
    width: 100%; height: 100px;
    background-color: #22239182;
    border-bottom: 3px solid navy;
    box-sizing: border-box; /*영역안으로 테두리 인사이드*/
}
.main{
    width: 1200px; height: 300px;
    background-color: antiquewhite;
    margin: 0 auto;
}
.contents{
    width: 1200px; height: 300px;
    float: left;
    background-color: bisque;
}
.footer{
    width: 1200px; height: 100px;
    float: left;
    background-color: azure;
    margin: 0 auto;
}
.wrap{
    width: 1200px; height: 100%;
    margin: 0 auto;
    background-color: khaki;
}
.subnav{
    display: none;
}
.board{
    width: 400px; height: 200px;
    padding: 0 20px;
/*    background-color: aqua;*/
    box-sizing: border-box;
    margin: 20px;
}
.btn{
    width: 100%; height: 50px;
    border-bottom:  1px solid #999999;
}
.btn .first{
    margin-left: 0;
}
.btn li{
    float: left;
    margin: 0 10px;
    height: 100%; line-height: 49px;
}
.btn .first{
    margin-left: 0;
}
.btn a{
    display: block;
    width: 100%; height: 100%;
    box-sizing: border-box;
    font-size: 18px; font-weight: bold; color: #999999;
}
.btn a.active{
    color: #222328; border-bottom: 3px solid #222328;
}
.bwrap{
    width: 100%; height: 150px;
}
.notice{
    width: 100%; height: 150px;
}
.gallery{
    width: 100%; height: 150px;
    display: none;
}

.notice li{
    width: 100%; height: 30px;
    line-height: 30px;
}
.notice a{
    float: left;
    display: block;
    width: 230px; height: 10px;/*길이가 길경우 width를 크게 설정*/
    padding-left: 10px; box-sizing: border-box;
    font-size: 17px; color: dimgray
}
.notice .date{
    float: right;
    display: block;
    padding-right: 13px; box-sizing: border-box;
    font-size: 16px; color: darkturquoise;
}
.gallery ul{
    padding: 25px 0;
}
.gallery li{
    float: left;
    width: 100px; height: 100px;
    margin: 0 10px;
}

//yesterday wished to today list

. 활발하기 

. 생각하고 한번더 걸러서 얘기하기👎

. 성숙해지기 

. 수업 다 잘 듣기👎

 

tomorrow wish list

. 웹디자인기능사 기능구현 웹페이지 만들기

. 학교수업 다 듣기

. 보드타기

. 피부과가기

728x90
반응형