네이버클라우드플랫폼을 이전에 무료 기간때 사용하고

유료전환 후 무료크래딧으로 사용중.. 아니 방치 중이었습니다.

구글 클라우드 플랫폼을 사용중이라 무료 크래딧을 썩히고 있던차

TensorFlow 가 설치된  CentOS 설치가 가능하다고 하여 설치해 보았습니다.

 

https://console.ncloud.com/dashboard 

위 링크로 로 접근하면 아래와 같은 화면이 나옵니다. (가입 및 로그인은 필수)

여기서 우측의 Server 를 클릭하면 아래와 같이 서버 관리 화면이 나타납니다.

(현재 전 이미 Tensorflow-centos  서버가 추가된 상태입니다.)

위 그림에서 + 서버 생성 을 클릭하면 아래와 같이 생성가능한 서버 목록 들이 나열되고

여기서 tensorflow-centos-7.3-64 를 선택합니다.

선택하면 아래와 같은 팝업이 나타납니다.

Jupyter notebook 을 바로 쓸수있는게 최대 장점 같습니다.

또한 여러 라이브러리들도 자동으로 설치가 됩니다.

(일단 저희가 할건 비번을 바꾸는게 제일 중요한 일인것 같네요)

위 내용 전문입니다.

서버에 TensorFlow 등 머신 러닝 관련 패키지가 설치되어 제공됩니다.

TensorFlow 서버 설치 가이드에 따라 아래 2~4번을 반드시 수행해 주십시오(가이드 바로가기)

선택하신 상품은 tensorflow, jupyter, python 등의 머신 러닝 패키지 설치만 지원되며,
그 이외에 별도의 기능 제공 및 분석 관련 기술 지원은 하지 않습니다.

jupyter notebook 사용을 위해서는 서버 생성 후에 추가로 공인IP를 신청하고 서버에 할당해야 하며,
서버 생성시 선택한 ACG에 8888 포트를 추가해야 합니다.

초기 설정된 PASSWORD는 다음에 입력할 서버 이름과 동일하며, 보안 침해 방지를 위해 반드시 변경해 주시기 바랍니다.

모든 작업이 완료되면 웹 브라우저로 공인IP:8888로 jupyter notebook 접속이 가능합니다.

주요 설치 라이브러리 목록:
tensorflow
jupyter
Keras
python
Gensim
numpy
Pytorch
scikit-learn
Theano
scipy
seaborn
sympy

혹시 몰라 가이드 가기 를 클릭하니 상세히 설명이 나와있습니다.

http://docs.ncloud.com/ko/tensorflow/tensorflow-1-1.html

이제 본론으로 와서 목록 선택을 완료하고 다음을 클릭합니다.

아래그림과 같이 서버타입등을 설정할 수 있습니다.

그 이후론 인증키 설정과 방화벽 설정이 있는데 전 이미 있던걸 사용해서 따로 캡쳐하지 않았습니다.

인증키 설정과 방화벽 설정은 어렵지 않습니다.^^;

(참고로 ACG 관련해서는 http://kjcoder.tistory.com/263 포스팅을 참고해 주세요.)

모든 설정이 끝나면 아래 처럼 서버 추가가 완료되고 조금 기다려야합니다.

전 한 10분 정도 기다리니 서버추가가 완료되어 동작중으로 바뀌더군요..

앞서 방화벽 설정에서 이미 하신분들도 있겠지만 Juyter Notebook 를 사용하려면 8888 port 를 열어줘야합니다.

전 기존에 사용하던걸 그대로 사용해서 따로 8888 포트를 추가해 주었습니다.

아래 그림과 같이 ACG 메뉴로 접근하여 규칙을 선택하고 ACG 설정 버튼을 누릅니다.

(목록이 없는 분들은 ACG  생성해 주세요 => http://kjcoder.tistory.com/263 참고 )

아래 그림과 같이 나오고 프로토콜 TCP , 접근소스 0.0.0.0/0 , 허용포트 8888 을 넣고 추가 버튼을 클릭 한 후 하단의 적용버튼을 클릭합니다.

(아래그림을 보시면 아시겠지만 이미 8888 포트를 추가한 후 캡쳐한 내용입니다.)

이제 접속해 봅니다.

공인 IP 를 신청을 하고 공인 IP 에 8888 로 연결해 봅니다.

123.123.123.123:8888 이런식이 되겠죠

접속하게되면 비번을 물어보는데 비번은 앞서 만든 서버명 입니다.

비번이 맞으면 아래그림과 같이 jupyter notebook 가 실행되어 나타납니다.

친절하게도 대표적으로 사용되는 몇가지 샘플파일들이 있습니다.

(한글이 왜 저렇게 나오는지는 모르겠네요;;)

1. Numpy 를 사용한 벡터와 행렬연산

2. Pandas 를 활용한 데이터 탐색

3. Matplotlib, Seaborn 을 사용한 시각화

4. NLTK 자연어처리패키지 소개

5. Scikit-Learn 을 사용한 ML

6. Keras 를 사용한 딥러닝

7. TensorFlow MNIST

아래는 샘플파일을 열어본건데 단순히 코드만 있는게 아니라 상세한 설명까지 있습니다. Wow!

기초 다지기엔 좋은 예제들인것 같습니다.

shutdown [옵션] [시간] [메시지]
 옵션
  -t n : 경고 메시지를 보낸 후 n초 후에 kill 시그널 보낸다
  -h : shutdown시 halt를 실행하게 한다
  -n : 디스크 동기화 동작의 수행을 금지한다
  -r : 시스템 재 부팅한다
  -f : 다음 부팅시 파일시스템 검사를 하지 않는다.
  -c : 이미 예약되어 있는 shutdown를 취소한다. 이 옵션을 준다면 시간인수는 줄 수 없다. 하지만 메시지는 사용자들에게 줄 수 있다.
  -k : 모든 동작을 제대로 수행하지만, 실제로 시스템을 종료하지는 않는다

shutdown -h 10
10분 후에 시스템을 종료한다.

shutdown -r now
시스템 재부팅 한다.

shutdown -c
예약된 시스템 종료 명령을 취소 한다.


reboot [옵션]
 옵션
  -n : sync를 하지 않고 종료한다. -d 옵션도 포함한다
  -w : 실제로 재부팅은 하지 않지만, /var/log/wtmp파일에 기록을 남긴다
  -d : wtmp파일에 기록을 남기지 않는다
  -f : 강제로 재부팅한다

reboot
로그를 남기고 재부팅 한다

reboot -n
sync를 하지 않고 재부팅한다

글이 도움이 되었다면 광고 클릭 부탁드립니다.^^

 

 

참고 링크 : https://wiki.debian.org/WordPress

중간 중간 난관이 있었지만 일단 위 방식대로 한 내용을 적어봅니다.

우선 이전 포스팅의 apache2 가 설치된 상태에서 진행했습니다.

2017/09/04 - [Server] - (구글 클라우드 플랫폼) CentOS 에 Apache 웹서버 설치하기

 

1. 먼저 아래 명령어로 wordpress 를 설치합니다.

sudo apt-get install wordpress curl apache2 mysql-server

위처럼 설치 도중 mysql  의 root 계정의 암호를 설정하는 화면이 나타납니다.

비번을 알아서 잘 설정하고 기억합니다. 꼭 기억합니다.

 

2. wordpress 사이트를 활성화 시키기 위해 wp.conf 내용을 수정 및 추가합니다.

(참고로 아래 명령어는 파일이 없으면 만들고 편집모드로 들어가게됩니다.)

sudo nano /etc/apache2/sites-available/wp.conf

위 명령어로 편집모드로 들어가서 아래와 같이 입력합니다.

Alias /wp/wp-content /var/lib/wordpress/wp-content
Alias /wp /usr/share/wordpress
<Directory /usr/share/wordpress>
    Options FollowSymLinks
    AllowOverride Limit Options FileInfo
    DirectoryIndex index.php
    Require all granted
</Directory>
<Directory /var/lib/wordpress/wp-content>
    Options FollowSymLinks
    Require all granted
</Directory>

* 참고로 nano 는 내용을 입력한후 Ctrl + X 를 누르고 Y 를 누른후 Enter 하면 저장이 완료됩니다.
   Ctrl + Z 는 모든 내용을 무시하고 편집모드를 빠져나갑니다.

 

3. 사이트를 활성화합니다.

sudo a2ensite wp

 

4. 웹서버를 재시작 합니다.

sudo service apache2 reload

 

5. 도메인 관련 파일을 하나 만듭니다. (중요)

자신의 IP 로 도메인을 연결해 놓았다면 그 도메인 이름이 들어가게 파일을 만들어야합니다.

즉, www.naver.com 이라면 config-www.naver.com.php 파일을 만들어야합니다.

전 구글클라우드에 도메인을 연결하지는 않았기 때문에 IP 주소로 만들었습니다.

그렇기 때문에 config-104.199.xxx.xxx.php 로 만들었습니다. (xxx 는 보안상 가림)

이제 위 파일을 만들고 내용을 입력하도록 합니다.

sudo nano /etc/wordpress/config-104.199.xxx.xxx.php

위 명령어를 통해 편집모드로 들어가서 아래 내용을 입력하고 password 부분은 앞서 mysql 의 root 계정의 암호로 변경합니다.

(암호는 새로 지정해도 상관없습니다. 머리가 좋으시면;;; 전 기억못할 것 같아서 그냥 똑같이 했습니다.)

<?php
define('DB_NAME', 'wordpress');
define('DB_USER', 'wordpress');
define('DB_PASSWORD', 'password');
define('DB_HOST', 'localhost');
define('WP_CONTENT_DIR', '/var/lib/wordpress/wp-content');
?>

 

6. 쿼리문을 작성합니다. (중요)

이부분이 제가 좀 시간이 걸린 부분입니다.

일단 링크대로 wp.sql 파일을 만들어 그안에 실행할 쿼리를 넣고 실행하도록 하면됩니다.

sudo nano ~/wp.sql

위처럼 파일을 만들고 내용은 아래 내용을 입력합니다.

'password' 는 위에서(5번) 에서 지정한 암호로 변경해야합니다.

CREATE DATABASE wordpress;
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER
ON wordpress.*
TO wordpress@localhost
IDENTIFIED BY 'password';
FLUSH PRIVILEGES;

이제 아래 명령어로 실행하면 쿼리가 실행되게 됩니다.

sudo cat ~/wp.sql | mysql --defaults-extra-file=/etc/mysql/debian.cnf

그런데 아래 처럼 에러?가 발생됩니다. (에러가 발생안된다면 패스해 주시면됩니다.)

Could not open required defaults file: /etc/mysql/debian.cnf
Fatal error in defaults handling. Program aborted

그런데 위 에러를 검색해도 해결방안이 잘 안나오더군요

그래서 그냥 mysql 로 들어가서 쿼리문을 수동으로 실행했습니다.

아래 명령어를 실행하여 mysql 로 진입합니다.

sudo mysql --defaults-extra-file=/etc/mysql/debian.cnf

아래가 진입했을때 내용이며 굵게 표시된 부분이 직접입력한 부분입니다.

진입시 비번을 물어봅니다. 앞서 지정한 암호를 넣고 진입합니다.

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 50
Server version: 5.5.57-0+deb8u1 (Debian)

Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> CREATE DATABASE wordpress;
Query OK, 1 row affected (0.00 sec)

mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER
    -> ON wordpress.*
    -> TO wordpress@localhost
    -> IDENTIFIED BY 'xxxxxxxx';
Query OK, 0 rows affected (0.00 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

xxxxxxxx 부분은 앞서 지정한 password 를 넣으면 됩니다.

이제 사이트에 접속합니다.

http://사이트주소/wp 로 들어가거나 http://사이트주소/wp/wp-admin/install.php 로 들어가서

아래와 같은 화면이 보이면 설치가 정상적으로 된것입니다.

대충기본적인 정보를 넣고

관리자 계정과 암호를 넣고

계정이 만들어졌으니 로그인 해서

로그인이 성공하면 아래 처럼 관리자 화면이 나타납니다.

상단의 집모양 버튼을 누르면 아래처럼 사이트가 만들어진걸 확인 할수 있습니다.

 

참고로 웹루트는 /var/www/html/ 입니다.

여기에 php 파일을 옮겨놓고 테스트 가능합니다.

(he default document root for Apache is /var/www/ (before Ubuntu 14.04) or /var/www/html/ (Ubuntu 14.04 and later).

See the file /usr/share/doc/apache2/README.Debian.gz for some explanation on how the Apache configuration on Ubuntu is done.)

CentOS 에 SSH 연결하기 위해서는 앞서 포스팅에서 소개해드린데로

구글 클라우드 플랫폼에서 제공되는 브라우저 상의 SSH 도구로도 충분합니다.

하지만 매번 브라우져를 켜서 접속하는건 일입니다.

그래서 Putty 를 설치해서 접속완료까지의 과정을 소개합니다.

 

우선 Putty 를 설치합니다.

https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

다운된 파일을 실행하여 설치합니다. 설치는 다음다음...

이제 SSH 키 페어를 생성해야합니다.

puttygen 을 실행합니다.

실행해서 Generate 버튼을 클릭합니다.

(이때 반드시 마우스가 다른곳에 가 있으면 안됩니다. 반드시 putty gen 실행 프로그램에 마우스를 두세요.)

완료가 되면 아래처럼 key 란에 솰라솰라 키가 나옵니다.

여기에 key comment 에 구글계정 을 넣고 암호를 설정합니다.

(암호는 설정하지 않아도 됩니다.)

이제 Save public key 와 Save private key 를 클릭해 공개키와 개인키를 로컬에 저장합니다.

이제 구글 클라우드 클랫폼에서 메타데이터로 이동하여 SSH 키 탭을 선택합니다.

SSH 키 추가를 클릭하고

아까 puttygen 에서 나온 키를 복사하여

아래 처럼 붙여넣고 저장 합니다.

그럼 아래처럼 키가 적용된걸 확인할 수 있습니다.

이제 putty 로 접속하기 위해 외부 IP 를 알아 둡니다.

putty 를 실행합니다.

host name 란에 id@외부IP 를 넣고

Connection - SSH - Auth  로 이동하여 제일 하단의 Private key file authenrication 에서 Brewse.. 를 클릭하여

아까 저장한 개인키를 선택하고 열기 합니다.

이제 Open 버튼을 클릭하면 아래처럼 접속이 되는걸 알수 있습니다.

앞서 암호를 지정했다면 암호를 넣어야 진입됩니다.

연결까지 완료 되었습니다.

 

글이 도움이 되었다면 광고 한번 클릭 부탁드립니다.^^

글이 도움이 되었다면 광고 클릭 부탁드립니다.^^

 

 

이전에 구글클라우드를 설정하고 Centos 를 설치하고나서 먼가를 해볼작정이었지만

질질 끌다가 오늘 시간이 나서 apach 웹서버를 설치해 보았습니다.

아래는 이전 포스팅입니다.

2017/06/09 - [Server] - 구글 클라우드 시작하기 (Google Cloud Platform)

 

이전 글에서 브라우저 상에서 ssh 가 동작하지 않았는데 이유는 간단했습니다.

이전 포스팅에서도 설명했지만 아래그림과 같이 자바스크립트를 항상 허용을 선택해야 합니다.

위와같이 하고 완료 하니 ssh 가 잘 동작하였습니다.

이제 apache 를 설치해 봅니다.

우선 아래 명령어로 최신버전을 가져옵니다.

sudo apt-get update

업데이트가 완료되면 아래 명령어를 실행하여 apache 를 설치합니다.

sudo apt-get install apache2

Y 넣고 Enter 하면 설치가 쭉 진행되고 웹서버 까지 동작하게 됩니다.

구글클라우드의 웹주소를 넣어보니 apache 웹서버가 제대로 동작하는 걸 확인 할수 있습니다.

+ Recent posts

티스토리 툴바