-
이번에는 vmware를 이용해서 centos7, superset을 설치할 것이다.
준비물
버전은 원하는대로 설치하면 된다. 😏
vmware workstation, centoOS7 iso, oracle client RPM(basic, sqlplus 2개) (각자 공식 홈피에서 받을 수 있다).
vmware:https://www.vmware.com/kr/products/workstation-player/workstation-player-evaluation.html centOS7:http://mirror.navercorp.com/centos/7.9.2009/isos/x86_64/
설치
1.공식 Document에 있는대로 필요한 파일 설치하기
sudo yum install gcc gcc-c++ libffi-devel python-devel python-pip python-wheel openssl-devel cyrus-sasl-devel openldap-devel
2. CentOs7 Python 3.8 버전 설치하기
supeset 2.0 버전의 최소 Python 필요사양은 3.8이다. 이 이상 설치해도 된다. 아래 블로그 글을 따라 설치한다.
- 아래와 같은 에러가 발생한 경우가 있어 미리 방지를 위해 python make 하기 전에 미리 다운로드 받아놓을 것
에러내용: ModuleNotFoundError: No module named '_sqlite3' 에러내용: Could not import the lzma module.
해결방안: yum install sqlite-devel -y 추가: yum install -y zx-devel
3. virtualenv 설치 및 가상환경 생성 그리고 활성화
pip install virtualenv virtualenv superset --python=3.8 . superset/bin/activate
그러면, 커맨드라인 맨 앞에 (superset) 이 붙는다 아래부터는 가상환경에서 진행
1. 공식 Repo에서 Requirements 가져오기
아래 경로로 가면 requirements가 있다. 해당 requirements로 설치할 것이기 때문에 아래 내용을 복사해서 설치 위치에 requirements.txt로 저장(이름은 크게 상관 없음.)
문서 생성 후 호출 할 명령어: pip install -r requirements.txt
2. superset 설치(2.0.1 설치가 됨)
pip install apache-superset
3. Oracle client, oracle-cx 설치(database 연결시 필요)
DB마다 설치해야하는 것이 다르다. https://superset.apache.org/docs/databases/installing-database-drivers/ 를 참조하여 설치한다.
3-1. cx-oracle 설치
pip install cx-oracle
3-2. 아래 블로그 글을 따라서 Oracle Client를 설치
4. 오류 해결을 위한 다운그레이드
pip install cryptography==38.0.2
5. 방화벽 오픈(vmware인경우)
vmware 설치 후에 아래 명령어로 방화벽 오픈해주시고, host 열어주시면 밖에서 UI 접속 가능합니다.(ip addr로 ip주소 확인 후, ens33 ip로 접속) $ firewall-cmd --permanent --zone=public --add-port=8088/tcp $ firewall-cmd --reload ==> 방화벽 적용 $ superset run -h 0.0.0.0 -p 8088 => vmware의
6. superset 설정 및 실행
# Create an admin user in your metadata database (use `admin` as username to be able to load the examples) export FLASK_APP=superset superset db upgrade superset fab create-admin # Load some data to play with superset load_examples # Create default roles and permissions superset init # To start a development web server on port 8088, use -p to bind to another port superset run -p 8088 -h 0.0.0.0
7.Database 연결
superset 내에 data connect 누른 뒤 SQLALCHEMY URI에 아래 정보 입력
아래 입력 정보도 DB마다 다르다. 공식 사이트를 참조하자
https://superset.apache.org/docs/databases/{DB종류}
oracle://ID:PW@HOST:PORT/ORCLCDB
'2023년' 카테고리의 다른 글
devfest 2023 in songdo (0) 2023.12.10 Python OCR (3) 2023.03.02 Superset 설치 메모 (0) 2023.02.07 Data Mart, Data Warehouse, Data Lake (6) 2023.01.13 Oracle Study (4) 2023.01.11