AWS EC2(CentOS7)로 RocketChat을 구축한다. ~RocketChat 설치~
9451 단어 초보자centos7Roc 집 t. 차 t
기사 내용
제2부 AWS EC2(CentOS7)로 RocketChat을 구축한다. ~서버 조작&사전 준비~의 계속이 됩니다.
제1부
제2부
제3부(이번)
본편
설치
기본적으로는 공식 매뉴얼 에 기재되어 있습니다.
그 때문에, 매뉴얼을 자신 나름대로 읽은 형식으로 소개하면서, 망설인 점을 기재합니다.
※일본어 번역이라고 해도 나름대로 해석이므로, 잘못이 있으면 지적해 주세요.
매뉴얼
# 1
#RPMパッケージのアップデートを実行する。
sudo yum -y check-update
# 2
#MongoDBをインストールする際に参照される「mongodb-org-4.0.repo」を作成する。
cat << EOF | sudo tee -a /etc/yum.repos.d/mongodb-org-4.0.repo
[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc
EOF
# 3
#「curl」パッケージのインストール
#「curl」を使って、NodeSourceのリポジトリをyumリポジトリに追加し、
#セットアップファイルを実行する。
sudo yum install -y curl && curl -sL https://rpm.nodesource.com/setup_8.x | sudo bash -
# 4
# 「gcc-c++」・「mongodb-org」・「nodejs」をインストールする。
# ※補足1
sudo yum install -y gcc-c++ make mongodb-org nodejs
# 5
# 「GraphicsMagick」をインストールする。
sudo yum install -y epel-release && sudo yum install -y GraphicsMagick
# 6
# nパッケージのインストール
# ver8.11.4への切り替え
sudo npm install -g inherits n && sudo n 8.11.4
# 7
# RocketChatのインストール
# 「rocket.chat.tgz」としてRocketChatソースを入手する。
curl -L https://releases.rocket.chat/latest/download -o /tmp/rocket.chat.tgz
# 7
# tgzファイルの解凍
tar -xzf /tmp/rocket.chat.tgz -C /tmp
# 8
# ディレクトリ移動
# npmリポジトリからライブラリを入手する。
cd /tmp/bundle/programs/server && npm install
# パッケージ群を移動する。(任意のディレクトリに移動も可)
sudo mv /tmp/bundle /opt/Rocket.Chat
# 9
# ディレクトリ作成
# ユーザロック
sudo useradd -M rocketchat && sudo usermod -L rocketchat
# 10
# ディレクトリ・ファイルの所有権を再帰的に変更する?
sudo chown -R rocketchat:rocketchat /opt/Rocket.Chat
# 11
# rocketchat.serviceの編集
cat << EOF |sudo tee -a /lib/systemd/system/rocketchat.service
[Unit]
Description=The Rocket.Chat server
After=network.target remote-fs.target nss-lookup.target nginx.target mongod.target
[Service]
ExecStart=/usr/local/bin/node /opt/Rocket.Chat/main.js
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=rocketchat
User=rocketchat
Environment=MONGO_URL=mongodb://localhost:27017/rocketchat?replicaSet=rs01 MONGO_OPLOG_URL=mongodb://localhost:27017/local?replicaSet=rs01 ROOT_URL=http://localhost:3000/ PORT=3000
[Install]
WantedBy=multi-user.target
EOF
# この部分は、各自の環境によってカスタム可能
MONGO_URL=mongodb://localhost:27017/rocketchat?replicaSet=rs01
MONGO_OPLOG_URL=mongodb://localhost:27017/local?replicaSet=rs01
ROOT_URL=http://your-host-name.com-as-accessed-from-internet:3000
PORT=3000
# 12
# mongoDBの設定ファイルに対して、文字列置換
sudo sed -i "s/^# engine:/ engine: mmapv1/" /etc/mongod.conf
# 13
# mongoDBの設定ファイルに対して、文字列置換
sudo sed -i "s/^#replication:/replication:\n replSetName: rs01/" /etc/mongod.conf
# 14
# mongoDBサービスのサービス自動起動有効化
# mongoDBサービスの開始
sudo systemctl enable mongod && sudo systemctl start mongod
# 15
# 直接mongoDBにコマンド実行
mongo --eval "printjson(rs.initiate())"
# 16
# rocketchatサービスのサービス自動起動有効化
# rocketchatサービスの開始
sudo systemctl enable rocketchat && sudo systemctl start rocketchat
그리고,
『http://(IP주소):3000』에 액세스하면 겨우 RocketChat 화면에 액세스할 수 있습니다.
보충
1. MongoDB를 설치할 수 없음
매뉴얼의 #4에서 명령을 실행해도,
"mongodb-org"가 설치되지 않았고 이끼였습니다.
따라서 mongoDB 설치에 대해서는 공식 사이트에 나열된 명령을 실행했습니다.
sudo yum install -y mongodb-org
2. 부팅할 수 없음
MongoDB·RocketChat의 서비스가 일어나도,
왠지 부팅할 수 없어,,,,,,
[(ユーザー名)@ip-(IPアドレス) centos]$ systemctl status
● ip-(IPアドレス).us-east-2.compute.internal
State: degraded
# 以下略~~~
엣데그레?
조사해 보면,,, 「kdump.service」가 안 되는 것이었습니다.
[(ユーザー名)@ip-(IPアドレス) centos]$ systemctl --failed
UNIT LOAD ACTIVE SUB DESCRIPTION
● kdump.service loaded failed failed Crash recovery kernel arming
다만, 이것은 백업 파일을 생성하는 「kdump.service」가 사용하는 메모리 용량이,
부족한 것에 의해 발생하는 것 같아서 이번에는 회피하기 위해,
참고 사이트의 리눅스 관련 고마운 사이트 2 에 기재되어 있는 방법을 이용했습니다.
그 결과, 데그레 해소가 가능했습니다.
명령 비망록
#catコマンド
#この場合はヒアドキュメントとの合わせ技で単なるテキストファイルの書き込みではなく、
#コマンド呼び出しも実行しています。
cat << EDF | コマンド
~~~~
EOF
#teeコマンド
#「ファイル名」に書き込みを行う。
#また、ファイルが存在しなければ新規作成したうえで、書き込みを行う。
tee -a ファイル名
참고
리눅스 관련 고마운 사이트 1
리눅스 관련 고마운 사이트 2
mongoDB 공식 사이트
Reference
이 문제에 관하여(AWS EC2(CentOS7)로 RocketChat을 구축한다. ~RocketChat 설치~), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/TomTam/items/ec4ca24d61db470c849b
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
# 1
#RPMパッケージのアップデートを実行する。
sudo yum -y check-update
# 2
#MongoDBをインストールする際に参照される「mongodb-org-4.0.repo」を作成する。
cat << EOF | sudo tee -a /etc/yum.repos.d/mongodb-org-4.0.repo
[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc
EOF
# 3
#「curl」パッケージのインストール
#「curl」を使って、NodeSourceのリポジトリをyumリポジトリに追加し、
#セットアップファイルを実行する。
sudo yum install -y curl && curl -sL https://rpm.nodesource.com/setup_8.x | sudo bash -
# 4
# 「gcc-c++」・「mongodb-org」・「nodejs」をインストールする。
# ※補足1
sudo yum install -y gcc-c++ make mongodb-org nodejs
# 5
# 「GraphicsMagick」をインストールする。
sudo yum install -y epel-release && sudo yum install -y GraphicsMagick
# 6
# nパッケージのインストール
# ver8.11.4への切り替え
sudo npm install -g inherits n && sudo n 8.11.4
# 7
# RocketChatのインストール
# 「rocket.chat.tgz」としてRocketChatソースを入手する。
curl -L https://releases.rocket.chat/latest/download -o /tmp/rocket.chat.tgz
# 7
# tgzファイルの解凍
tar -xzf /tmp/rocket.chat.tgz -C /tmp
# 8
# ディレクトリ移動
# npmリポジトリからライブラリを入手する。
cd /tmp/bundle/programs/server && npm install
# パッケージ群を移動する。(任意のディレクトリに移動も可)
sudo mv /tmp/bundle /opt/Rocket.Chat
# 9
# ディレクトリ作成
# ユーザロック
sudo useradd -M rocketchat && sudo usermod -L rocketchat
# 10
# ディレクトリ・ファイルの所有権を再帰的に変更する?
sudo chown -R rocketchat:rocketchat /opt/Rocket.Chat
# 11
# rocketchat.serviceの編集
cat << EOF |sudo tee -a /lib/systemd/system/rocketchat.service
[Unit]
Description=The Rocket.Chat server
After=network.target remote-fs.target nss-lookup.target nginx.target mongod.target
[Service]
ExecStart=/usr/local/bin/node /opt/Rocket.Chat/main.js
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=rocketchat
User=rocketchat
Environment=MONGO_URL=mongodb://localhost:27017/rocketchat?replicaSet=rs01 MONGO_OPLOG_URL=mongodb://localhost:27017/local?replicaSet=rs01 ROOT_URL=http://localhost:3000/ PORT=3000
[Install]
WantedBy=multi-user.target
EOF
# この部分は、各自の環境によってカスタム可能
MONGO_URL=mongodb://localhost:27017/rocketchat?replicaSet=rs01
MONGO_OPLOG_URL=mongodb://localhost:27017/local?replicaSet=rs01
ROOT_URL=http://your-host-name.com-as-accessed-from-internet:3000
PORT=3000
# 12
# mongoDBの設定ファイルに対して、文字列置換
sudo sed -i "s/^# engine:/ engine: mmapv1/" /etc/mongod.conf
# 13
# mongoDBの設定ファイルに対して、文字列置換
sudo sed -i "s/^#replication:/replication:\n replSetName: rs01/" /etc/mongod.conf
# 14
# mongoDBサービスのサービス自動起動有効化
# mongoDBサービスの開始
sudo systemctl enable mongod && sudo systemctl start mongod
# 15
# 直接mongoDBにコマンド実行
mongo --eval "printjson(rs.initiate())"
# 16
# rocketchatサービスのサービス自動起動有効化
# rocketchatサービスの開始
sudo systemctl enable rocketchat && sudo systemctl start rocketchat
sudo yum install -y mongodb-org
[(ユーザー名)@ip-(IPアドレス) centos]$ systemctl status
● ip-(IPアドレス).us-east-2.compute.internal
State: degraded
# 以下略~~~
[(ユーザー名)@ip-(IPアドレス) centos]$ systemctl --failed
UNIT LOAD ACTIVE SUB DESCRIPTION
● kdump.service loaded failed failed Crash recovery kernel arming
#catコマンド
#この場合はヒアドキュメントとの合わせ技で単なるテキストファイルの書き込みではなく、
#コマンド呼び出しも実行しています。
cat << EDF | コマンド
~~~~
EOF
#teeコマンド
#「ファイル名」に書き込みを行う。
#また、ファイルが存在しなければ新規作成したうえで、書き込みを行う。
tee -a ファイル名
리눅스 관련 고마운 사이트 1
리눅스 관련 고마운 사이트 2
mongoDB 공식 사이트
Reference
이 문제에 관하여(AWS EC2(CentOS7)로 RocketChat을 구축한다. ~RocketChat 설치~), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/TomTam/items/ec4ca24d61db470c849b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)