Package Deployment on Private Network(Server)
Saltstack rpm, Cloudhub dependent packages(TI[C]K Stack), 기타 rpm
RPM 파일이 들어 있는 USB 또는 CD를 준비합니다.
RPM 파일을 구성할 서버의 임의 디렉토리에 복사합니다.
아래 예제에서는
/root/repos/
에 복사한 경우로 설명합니다.
Yum Local Repository
설치 및 구성
createrepo rpm 설치를 위해 먼저 아래와 같은 순서로 dependencies RPM을 설치합니다.
$ rpm -ivh /root/repos/deltarpm-3.6-3.el7.x86_64.rpm $ rpm -ivh /root/repos/python-deltarpm-3.6-3.el7.x86_64.rpm $ rpm -ivh /root/repos/libxml2-python-2.9.1-6.el7.5.x86_64.rpm $ rpm -ivh /root/repos/createrepo-0.9.9-28.el7.noarch.rpm 경고: createrepo-0.9.9-28.el7.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY 준비 중... ################################# [100%] Updating / installing... 1:createrepo-0.9.9-28.el7 ################################# [100%]
cloudhub.repo 파일을 신규 작성합니다.
기존 repository와 별개로 cloudhubrepo 이름으로 cloudhub용으로 local repository를 생성합니다.
앞으로
yum install, yum update
할 때 cloudhub repository를 지정하여 실행합니다.baseurl
path는 RPM 파일을 복사한 경로와 같아야 합니다.(e.g. /root/repos/
)# baseurl은 rpm이 있는 local 디렉토리 경로 # $ cd /etc/yum.repos.d $ vi cloudhub.repo [cloudhubrepo] name=cloudhubrepo baseurl=file:///root/repos enabled=1 gpgcheck=0
cloudhub.repo
에 지정한baseurl
에 있는 RPM 파일을 yum repository에 등록합니다.# yum repository에 RPM 디렉토리 등록 # $ createrepo /root/repos/ Spawning worker 0 with 31 pkgs Workers Finished Saving Primary metadata Saving file lists metadata Saving other metadata Generating sqlite DBs Sqlite DBs complete
신규 또는 업데이트된 rpm 패키지 추가시 주의사항
yum에 추후 새로운 패키지(rpm)를 추가할 경우, yum clean all
를 실행하여 repository를 초기화 해줘야 합니다. yum은 추가된 RPM 파일을 자동으로 인식하지 못합니다. 초기화를 안하면 추가된 패키지를 인식하지 못합니다.
#등록된 repository 목록과 RPM 등록 수
$ yum repolist all
repo id repo name status
cloudhubrepo cloudhubrepo enabled: 31
repolist: 31$ yum clean all
Cleaning repos: cloudhubrepo
Other repos take up 60 M of disk space (use --verbose for details)
# 새로운 패키지를 /root/repos/
에 복사
$ createrepo /root/repos/
$ yum repolist all
repo id repo name status
cloudhubrepo cloudhubrepo enabled: 119
repolist: 119
yum update
Local Repository를 구성하고
yum update --disablerepo=* --enablerepo=cloudhubrepo
를 실행하여 Linux 서버에 기 설치된 package를 업데이트 합니다.
Install dependent package
Install package
외부 인터넷을 사용할 수 없으므로 docker container 방식이 아닌 패키지 설치로 진행합니다.
Influxdb
install
config 수정 : docker에서 사용한 influxdb conf와 동일하게 사용합니다.
service start
kapacitor
install
config 수정 : docker에서 사용한 kapacitor conf와 동일하게 사용합니다.
service start
SaltStack 설치
공인망 환경에서의 과정과 동일합니다.
Installing Server Node | Setting SaltStack for master \
epel-release
저장소 등록 과정은 Pass합니다.
Download telegraf
공인망 환경에서의 과정과 동일합니다.
Installing Server Node | Download telegraf into salt file_roots path on salt master
CloudHub Portal 설치
공인망 환경에서의 과정과 동일합니다.