본문 바로가기

mesos

linux 서버에 mesos HA설치하기 (w/ zookeeper)

728x90

1. mesos 설치하기 (모든 서버에)

#0. 기존 mesos가 있다면 stop
kill [mesos pid]

#1. 메소스 설치
cd /data01/sw # 메소스 설치할 위치
## 인터넷 안될 때
https://archive.apache.org/dist/mesos/1.11.0/ 에서 tar.gz 다운로드
filezilla 등으로 파일 업로드
## 인터넷 될 때
wget https://archive.apache.org/dist/mesos/1.11.0/mesos-1.11.0.tar.gz

tar -zxf mesos-1.11.0.tar.gz
ln -s /data01/sw/mesos-1.11.0 /data01/sw/mesos
cd mesos
 
#2. 패키지 설치
sudo yum install -y patch epel-release maven python-devel python-six python-virtualenv zlib-devel libcurl-devel openssl-devel cyrus-sasl-devel cyrus-sasl-md5 apr-devel subversion-devel apr-util-devel
 
#3. 빌드
./bootstrap # (Only required if building from git repository).
mkdir build
cd build
../configure 혹은 ../configure --disable-python
make
 
#4. log 디렉토리 생성
mkdir /data01/sw/mesos/data
mkdir /data01/sw/mesos/data/agent
mkdir /data01/sw/mesos/data/agent/work
mkdir /data01/sw/mesos/data/agent/log
 
## master 서버만 생성
mkdir /data01/sw/mesos/data/master
mkdir /data01/sw/mesos/data/master/work
mkdir /data01/sw/mesos/data/master/log

 

 

2. zookeeper 설치 (master 서버만)

#1. zookeeper 설치
cd /data01/sw
wget --no-check-certificate https://dlcdn.apache.org/zookeeper/zookeeper-3.8.3/apache-zookeeper-3.8.3-bin.tar.gz
tar -xzvf apache-zookeeper-3.8.3-bin.tar.gz
ln -s /data01/sw/apache-zookeeper-3.8.3-bin /data01/sw/zookeeper
mkdir /data01/sw/zookeeper/data
  
#2. 각 서버마다 파일 생성
echo '1' > /data01/sw/zookeeper/data/myid # 마스터 1번 서버
echo '2' > /data01/sw/zookeeper/data/myid # 마스터 2번 서버
echo '3' > /data01/sw/zookeeper/data/myid # 마스터 3번 서버
 
#3. 설정파일 수정
vi conf/zoo.cfg 수정
  dataDir=/data01/sw/zookeeper/data
  server.1=[마스터1 ip]:2888:3888
  server.2=[마스터2 ip]:2888:3888
  server.3=[마스터3 ip]:2888:3888
  
#4. 실행
bin/zkServer.sh start

 

 

3. mesos master 실행 (master 서버만)

# 명령어로 실행하는 방법
nohup /data01/sw/mesos/build/bin/mesos-master.sh --work_dir=/data01/sw/mesos/data/master/work --logging_level=ERROR --log_dir=/data01/sw/mesos/data/master/log --zk=zk://[마스터1 ip]:2181,[마스터2 ip]:2181,[마스터3 ip]:2181/mesos --quorum=2 --cluster=mesos-cluster > /dev/null 2>&1 &
 
# start shell을 생성해서 실행하는 방법
echo "/data01/sw/mesos/build/bin/mesos-master.sh --work_dir=/data01/sw/mesos/data/master/work --logging_level=ERROR --log_dir=/data01/sw/mesos/data/master/log --zk=zk://[마스터1 ip]:2181,[마스터2 ip]:2181,[마스터3 ip]:2181/mesos --quorum=2 --cluster=meso-cluster &" > /data01/sw/mesos/build/bin/start_mesos_master.sh
chmod +x /data01/sw/mesos/build/bin/start_mesos_master.sh
sh /data01/sw/mesos/build/bin/start_mesos_master.sh

 

 

4. mesos slave 실행

# 명령어로 실행하는 방법
nohup /data01/sw/mesos/build/bin/mesos-agent.sh --master=zk://[마스터1 ip]:2181,[마스터2 ip]:2181,[마스터3 ip]:2181/mesos --work_dir=/data01/sw/mesos/data/agent/work --logging_level=ERROR  --log_dir=/data01/sw/mesos/data/agent/log --quorum=2 --cluster=mesos-cluster > /dev/null 2>&1 &
 
# start shell을 생성해서 실행하는 방법
echo "/data01/sw/mesos/build/bin/mesos-agent.sh --master=zk://[마스터1 ip]:2181,[마스터2 ip]:2181,[마스터3 ip]:2181/mesos --work_dir=/data01/sw/mesos/data/agent/work --logging_level=ERROR  --log_dir=/data01/sw/mesos/data/agent/log --no-systemd_enable_support &" > /data01/sw/mesos/build/bin/start_mesos_slave.sh
chmod +x /data01/sw/mesos/build/bin/start_mesos_slave.sh
sh /data01/sw/mesos/build/bin/start_mesos_slave.sh

 

'mesos' 카테고리의 다른 글

mesos 설치 빌드시 에러 케이스  (1) 2024.10.04
role 사용하기  (0) 2024.10.02