728x90
반응형

개요

Confluence의 취약이 있어 버전 업을 실시합니다.

취약성:https://jvndb.jvn.jp/ja/contents/2020/JVNDB-2020-007394.html

영향 받은 버전:Confluence 7.5.1미만

현재 사용하는 버전:7.3.5(취약성의 대상)

 

준비 작업

소프트웨어 다운로드:

https://www.atlassian.com/ja/software/confluence/download에서 아래의 Confluence버전을 다운로드한다
atlassian-confluence-7.4.5.tar.gz

 

Confluence버전 업

  • 서비스 정지
    systemctl stop nginx
    systemctl stop tomcat
    systemctl stop mysqld
  • 백업으로 AMI작성
  • Confluence버전 업
    cd /home/infra
  • tar zxvf atlassian-confluence-7.4.5.tar.gz
    chmod 775 atlassian-confluence-7.4.5/confluence
    chown tomcat: -R atlassian-confluence-7.4.5/confluence
    mv /opt/apache-tomcat-9.0.33/webapps/confluence /tmp/
    mv atlassian-confluence-7.4.5/confluence /opt/apache-tomcat-9.0.33/webapps/
  • 설정 파일 변경
    vi /opt/apache-tomcat-9.0.33/webapps/confluence/WEB-INF/classes/confluence-init.properties
- # confluence.home=/var/data/confluence/
+ confluence.home=/var/data/confluence/
  • MySQL Connector파일 사본
  • cp -pr /tmp/confluence/WEB-INF/lib/mysql-connector-java-5.1.48-bin.jar /opt/apache-tomcat-9.0.33/webapps/confluence/WEB-INF/lib/
  • 서비스 기동
    systemctl start mysqld
    systemctl start tomcat
    systemctl start nginx
  • 관리 화면에서의 설정

포털 접속
-"앱을 관리"중 앱의 버전을 업데이트

-인덱스 다시 구축:"관리"→"콘텐츠의 인덱스 작성"

-캐시 클리어:"캐시 관리"→"모두 클리어"

728x90
300x250

'IT > Confluence' 카테고리의 다른 글

Confluence 업그레이드 절차  (0) 2021.08.17
Confluence mysql percona backup 설정  (0) 2021.08.12
Confluence Upgrade  (0) 2021.08.09
Confluence 서버 이관 및 재설정  (0) 2021.08.09
Confluence 설정  (0) 2021.08.09
728x90
반응형

개요

Confluence버전이 오래 된 버전을 업그레이드합니다.

Confluence 5.10.8 → Confluence 7.3.5

또한, 4byte아이콘을 대응하기 때문에 MySQL버전을 5.6에서 5.7으로 업그레이드합니다(utf8->utf8mb4).

 

준비 작업

소프트웨어 다운로드:

https://www.atlassian.com/ja/software/confluence/download에서 아래의 Confluence버전을 다운로드한다
atlassian-confluence-7.3.5.tar.gz

https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.33/bin/apache-tomcat-9.0.33.tar.gz에서 Tomcat을 다운로드한다
새 버전의 설치 파일을 컨플루언스 서버 (/home/infra/)에 업로드 또는 wget 등

https://dev.mysql.com/downloads/connector/j/5.1.html에서 아래의 mysql드라이버를 다운로드한다
mysql-connector-java-5.1.48.tar.gz

다운로드 파일을 해제하고, mysql-connector-java-5.1.48/mysql-connector-java-5.1.48-bin.jar를

 컨플루언스 서버

(/home/infra/)에 전송

 

Confluence버전 업

  • 서비스 정지
    systemctl stop nginx
    systemctl stop tomcat
    systemctl stop mysqld
  • 백업으로 AMI작성
  • Confluence버전 업
    cd /home/infra
  • tar zxvf atlassian-confluence-7.3.5.tar.gz
    chmod 775 atlassian-confluence-7.3.5/confluence
    chown tomcat: -R atlassian-confluence-7.3.5/confluence
    mv /opt/apache-tomcat-8.0.47/webapps/confluence /tmp/
    mv atlassian-confluence-7.3.5/confluence /opt/apache-tomcat-8.0.47/webapps/
  • 설정 파일 변경
    vi /opt/apache-tomcat-8.0.47/webapps/confluence/WEB-INF/classes/confluence-init.properties
- # confluence.home=/var/data/confluence/
+ confluence.home=/var/data/confluence/
  • MySQL Connector파일 갱신
  • chown tomcat: mysql-connector-java-5.1.48-bin.jar
    mv mysql-connector-java-5.1.48-bin.jar /opt/apache-tomcat-8.0.47/webapps/confluence/WEB-INF/lib/
  • /etc/my.cnf설정 변경
    transaction-isolation=READ-COMMITTED를 추가하는

  • Tomcat버전 업
    tar zxvf apache-tomcat-9.0.33.tar.gz
    mv /opt/apache-tomcat-8.0.47/bin /tmp
    mv /opt/apache-tomcat-8.0.47/lib /tmp
    mv apache-tomcat-9.0.33/bin /opt/apache-tomcat-8.0.47/
    mv apache-tomcat-9.0.33/lib /opt/apache-tomcat-8.0.47/
    chown -R tomcat: /opt/apache-tomcat-8.0.47/bin /opt/apache-tomcat-8.0.47/lib
    mv /opt/apache-tomcat-8.0.47 /opt/apache-tomcat-9.0.33
    vi /etc/systemd/system/tomcat.service
Apache Tomcat 8
↓
Apache Tomcat 9
  
apache-tomcat-8.0.47
↓
apache-tomcat-9.0.33
  • 서비스 기동
    systemctl start mysqld
    systemctl start tomcat
    systemctl start nginx
  • 관리 화면에서의 설정
  • 포털  페이지 접속
    -"공동 편집"을 비활성
    -"앱을 관리"중의 활성화된 앱의 버전을 업데이트

MySQL버전 업(5.6→ 5.7)

  • 서비스 정지
    systemctl stop nginx
    systemctl stop tomcat
    systemctl stop mysqld

  • mysql5.6의 삭제
    rpm -qa | grep mysql
    rpm -e mysql57-community-release-el6-7.noarch
    rpm -e mysql-community-client-5.6.38-2.el6.x86_64 mysql-community-libs-5.6.38-2.el6.x86_64 mysql-community-common-5.6.38-2.el6.x86_64 mysql-community-server-5.6.38-2.el6.x86_64 --nodeps

  • mysql5.7설치
    yum localinstallhttps://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
    yum install mysql-community-server
    yum install mysql-community-libs-compat
    mv /etc/my.cnf.rpmsave /etc/my.cnf

  • percona-x
    rpm -e percona-xtrabackup-22-2.2.13-1.el7.x86_64
    yum installhttps://repo.percona.com/yum/percona-release-latest.noarch.rpm
    yum install percona-xtrabackup-24

  • my.cnf의 설정 변경
    아래의 옵션을 삭제
    innodb_support_xa
    innodb_use_sys_malloc
    아래의 옵션을 추가
    secure-file-priv = ""

  • mysql실행
    systemctl start mysqld

  • mysql테이블의 체크와 업그레이드
    mysql_upgrade -uroot -p

  • DB의 문자 코드를 utf8에서 utf8mb4로 변경
vi /etc/my.cnf
  character-set-server = utf8mb4
  collation-server = utf8mb4_bin
  
systemctl stop mysqld
systemctl start mysqld
 
ALTER DATABASE confluence CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;

 

기존 테이블 컬럼의 문자 코드를 utf8에서 utf8mb4로 변경

SET global FOREIGN_KEY_CHECKS=0;
 
SELECT CONCAT('ALTER TABLE ', table_name, ' CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;')
FROM information_schema.TABLES AS T, information_schema.`COLLATION_CHARACTER_SET_APPLICABILITY` AS C
WHERE C.collation_name = T.table_collation
AND T.table_schema = 'confluence'
AND
(
    C.CHARACTER_SET_NAME != 'utf8mb4'
    OR
    C.COLLATION_NAME != 'utf8mb4_bin'
) INTO OUTFILE '/tmp/alter-tables.sql';
 
SELECT CONCAT('ALTER TABLE `', table_name, '` MODIFY `', column_name, '` ', DATA_TYPE, '(', CHARACTER_MAXIMUM_LENGTH, ') CHARACTER SET utf8mb4 COLLATE utf8mb4_bin', (CASE WHEN IS_NULLABLE = 'NO' THEN ' NOT NULL' ELSE '' END), ';')
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = 'confluence'
AND DATA_TYPE = 'varchar'
AND
(
    CHARACTER_SET_NAME != 'utf8mb4'
    OR
    COLLATION_NAME != 'utf8mb4_bin'
) INTO OUTFILE '/tmp/alter-columns-1.sql';
 
SELECT CONCAT('ALTER TABLE `', table_name, '` MODIFY `', column_name, '` ', DATA_TYPE, ' CHARACTER SET utf8mb4 COLLATE utf8mb4_bin', (CASE WHEN IS_NULLABLE = 'NO' THEN ' NOT NULL' ELSE '' END), ';')
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = 'confluence'
AND DATA_TYPE != 'varchar'
AND
(
    CHARACTER_SET_NAME != 'utf8mb4'
    OR
    COLLATION_NAME != 'utf8mb4_bin'
) INTO OUTFILE '/tmp/alter-columns-2.sql';
 
mysql -uroot -p confluence < /tmp/alter-tables.sql
mysql -uroot -p confluence < /tmp/alter-columns-1.sql
mysql -uroot -p confluence < /tmp/alter-columns-2.sql
 
SET global FOREIGN_KEY_CHECKS=1;

 

Confluence DB설정 파일의 변경
vi /var/data/confluence/confluence.cfg.xml

- <property name="hibernate.connection.url">jdbc:mysql://localhost/confluence?useUnicode=true&amp;characterEncoding=utf8</property>
+ <property name="hibernate.connection.url">jdbc:mysql://localhost/confluence?useUnicode=true&amp;connectionCollation=utf8mb4_bin</property>

 

  • 서비스 기동
    systemctl restart mysqld
    systemctl start tomcat
    systemctl start nginx
  • 화면 확인
    컨플루언스 포털 접속하여 캐시 클리어:"캐시 관리"→"모두 클리어"
  • 인덱스 다시 구축:"관리"→"콘텐츠의 인덱스 작성"
728x90
300x250

'IT > Confluence' 카테고리의 다른 글

Confluence 7.4.5로 업그레이드  (0) 2021.08.17
Confluence mysql percona backup 설정  (0) 2021.08.12
Confluence Upgrade  (0) 2021.08.09
Confluence 서버 이관 및 재설정  (0) 2021.08.09
Confluence 설정  (0) 2021.08.09
728x90
반응형

percona repository 인스톨

yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpm

yum install http://repo.percona.com/centos/7/RPMS/x86_64/Percona-Server-selinux-56-5.6.42-rel84.2.el7.noarch.rpm

xtrabackup 인스톨

yum install percona-xtrabackup-22
cd /usr/local/mysql

mkdir backup_logs backup_tmp bak support-files

 

innobackupex.sh

#!/bin/bash
 
source ~/.bash_profile
 
## -----------------------------------------------------------------------------
## Set variables
## -----------------------------------------------------------------------------
STIME=`date "+%Y-%m-%d %T"`
SSEC=`date +%s`
 
SERVICE_NAME=infraDB
HOST_NAME=`hostname | awk '{ split($1,array,"."); print array[1]}'`
USER_NAME=backupuser
USER_PWD=qordjqdhkd!
MYSQL_CNF=/etc/my.cnf
OPT_CNF=--defaults-file=${MYSQL_CNF}
OPT_SLAVE=--slave-info
OPT_SAFE_SLAVE=--safe-slave-backup
#LOCK_WAIT_TIMEOUT="--lock-wait-timeout=2400"
#LOCK_WAIT_THRESHOLD="--lock-wait-threshold=30"
#KILL_LONG_QUERIES_TIMEOUT="--kill-long-queries-timeout=20"
#KILL_LONG_QUERIES_TYPE="--kill-long-query-type=select"
OPT_STREAM=--stream=xbstream
OPT_COMPRESS=--compress
OPT_PV=
TEMP_DIR=/usr/local/mysql/backup_tmp/
BACKUP_DIR=/usr/local/mysql/bak/
BACKUP_TIME=`date +%Y%m%d_%H%M%S`
BACKUP_FILE_SURFFIX=
BACKUP_RTN_DAYS=2
 
if [ "${OPT_STREAM}" == "--stream=xbstream" ]; then
    BACKUP_FILE_SURFFIX=${BACKUP_FILE_SURFFIX}".xbstream"
 
    if [ "${OPT_COMPRESS}" == "--compress" ]; then
        BACKUP_FILE_SURFFIX=${BACKUP_FILE_SURFFIX}".cp"
    fi
fi
 
BACKUP_FILE=${SERVICE_NAME}_${HOST_NAME}_${BACKUP_TIME}${BACKUP_FILE_SURFFIX}
 
echo
echo "*****************************************************************"
echo "* Service Name        :" ${SERVICE_NAME}
echo "* Host Name           :" ${HOST_NAME}
echo "* Backup User         :" ${USER_NAME}
echo "* Backup Option       :" ${OPT_SLAVE} ${OPT_STREAM} ${OPT_COMPRESS} ${OPT_PV}
echo "* Temporary Directory :" ${TEMP_DIR}
echo "* SSH Remote Access   :" ${REMOTE_USER}@${REMOTE_HOST}
echo "* Backup file Name    :" ${REMOTE_PASS}${BACKUP_FILE}
echo "*****************************************************************"
echo
 
## -----------------------------------------------------------------------------
## Backup
## -----------------------------------------------------------------------------
 
echo "Starting Copy my.cnf..."
echo "cp -f ${MYSQL_CNF} ${BACKUP_DIR}${SERVICE_NAME}_${HOST_NAME}_${BACKUP_TIME}_my.cnf"
cp -f ${MYSQL_CNF} ${BACKUP_DIR}${SERVICE_NAME}_${HOST_NAME}_${BACKUP_TIME}_my.cnf
 
echo "Starting Backup Using ExtraBackup..."
echo "innobackupex ${OPT_CNF} --user=${USER_NAME} --password=${USER_PWD} ${LOCK_WAIT_TIMEOUT} ${LOCK_WAIT_THRESHOLD} ${KILL_LONG_QUERIES_TIMEOUT} ${KILL_LONG_QUERIES_TYPE} ${OPT_SLAVE} ${OPT_SAFE_SLAVE} ${OPT_STREAM} ${OPT_COMPRESS} ${BACKUP_DIR} ${OPT_PV} > ${BACKUP_DIR}${BACKUP_FILE}"
 
innobackupex ${OPT_CNF} --user=${USER_NAME} --password=${USER_PWD} ${LOCK_WAIT_TIMEOUT} ${LOCK_WAIT_THRESHOLD} ${KILL_LONG_QUERIES_TIMEOUT} ${KILL_LONG_QUERIES_TYPE} ${OPT_SLAVE} ${OPT_SAFE_SLAVE} ${OPT_STREAM} ${OPT_COMPRESS} ${BACKUP_DIR} ${OPT_PV} > ${BACKUP_DIR}${BACKUP_FILE}
 
 
##echo "Create TAR file from backup..."
##TAR_FILE_NAME="${BACKUP_DIR}backup_"`date "+%Y%m%d_%H%M%S"`.tar
##echo "cd ${TEMP_DIR}"
##cd ${TEMP_DIR}
##echo "tar -cvf ${TAR_FILE_NAME} ./*"
##tar -cvf ${TAR_FILE_NAME} ./*
##echo "rm -rf ${TEMP_DIR}*"
##rm -rf ${TEMP_DIR}*
 
echo "Copy a bakcup file into a remote storage..."
export AWS_CONFIG_FILE=/etc/awscli.conf
echo "aws s3 cp ${BACKUP_DIR}${BACKUP_FILE} s3://cocone-backup/portaldb/mysql/"
aws s3 cp ${BACKUP_DIR}${BACKUP_FILE} s3://cocone-backup/portaldb/mysql/
 
echo "Delete Old backup files and directories ${BACKUP_DIR}"
echo "find /usr/local/mysql/bak/ -ctime +${BACKUP_RTN_DAYS} -delete"
find /usr/local/mysql/bak/ -ctime +${BACKUP_RTN_DAYS} -delete
#find /usr/local/mysql/bak/ -delete
 
ETIME=`date "+%Y-%m-%d %T"`
ESEC=`date +%s`
RSEC=`echo "$ESEC - $SSEC" | bc`
 
echo
echo "*** Start Time  : " $STIME
echo "*** End Time    : " $ETIME
echo "*** Run Time    : " $RSEC "sec"

 

crontab 설정

0 4 * * * /usr/local/mysql/support-files/innobackupex.sh > /usr/local/mysql/backup_logs/innobackupex_`date +\%Y\%m\%d_\%H\%M\%S`.log 2>&1
728x90
300x250

'IT > Confluence' 카테고리의 다른 글

Confluence 7.4.5로 업그레이드  (0) 2021.08.17
Confluence 업그레이드 절차  (0) 2021.08.17
Confluence Upgrade  (0) 2021.08.09
Confluence 서버 이관 및 재설정  (0) 2021.08.09
Confluence 설정  (0) 2021.08.09
728x90
반응형

개요

Confluence버전, 미들웨어, 응답이 느리가 가상 Type이 안좋을 때

안정적 운용을 실시할 수 있도록, 우선은 보안 업데이트 및 현 단계의 미들웨어까지

Confluence의 최신 버전까지 올리는 일을 계획한다.

 

 

대응 절차

 

OS 업데이트

service tomcat6 stop
service mysql stop
  
yum update
yum update --enablerepo=epel
>tomcat6 정상 종료할 수 있게 됩니다.
 
reboot

 

애플리케이션(JAVA)의 변경, Add-on 갱신, DB 튜닝

 

  1. Add-on UPDATE 할 수 있도록 DB의 파라미터를 수정한다.
service tomcat6 stop
service mysql stop


infra-misc-test-3 # diff my.cnf my.cnf-`date +%F`
< max_allowed_packet=128M
  
service mysql start
  1. Oracle JAVA1.7설치
    Oracle사이트의 회원 등록을 실시하지 않으면 설치 패키지가 입수할 수 없다.(1.7이 낡은 때문)
java -version
 :현재 버전을 확인합니다.


rpm -ivh jdk-7u80-linux-x64.rpm


alternatives --config java
 :리스트 확인입니다.


alternatives --install /usr/bin/java java /usr/java/jdk1.7.0_80/bin/java 3


java -version
java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)
 
  1. JAVA_HOME환경 변수의 변경
infra-misc-test-3 # grep JAVA_HOME /etc/tomcat6/tomcat6.conf
#JAVA_HOME="/usr/lib/jvm/jre-1.7.0-openjdk.x86_64"
JAVA_HOME="/usr/java/jdk1.7.0_80"
  1. 서비스 구동
service tomcat6 start
  1. admin사용자로 포털에 로그인한 뒤"Manage add-ons"로 이동한다.
일반설정 -> Manage add-ons
 
  1. UPM업데이트
    화면 상단의 유니버설 플러그인 매니저를 UPDATE 한다. 페이지를 갱신하다.
  2. addon에서 무료 틀로 UPDATE 가능한 것은 모두 UPDATE를 실시한다.

 

포털 버전 업 (5.6.4>5.6.6)

지정 버전의 tar파일을 미리 다운로드한다.

https://ja.atlassian.com/software/confluence/download-archives

 

  1. 서비스 정지
service tomcat6 stop
service mysql stop

 

Confluence의 교환

tar zxvf confluence-VERSION.tar.gz
mv /var/lib/tomcat6/webapps/confluence /tmp/
chmod 775 confluence-VERSION/confluence
mv confluence-VERSION/confluence /var/lib/tomcat6/webapps/

데이터 지정

vi /var/lib/tomcat6/webapps/confluence/WEB-INF/classes/confluence-init.properties
- # confluence.home=/var/data/confluence/
+ confluence.home=/var/data/confluence/
  1. MySQL드라이버의 카피
cp -pR /tmp/confluence/WEB-INF/lib/mysql-connector-java-5.1.29-bin.jar /var/lib/tomcat6/webapps/confluence/WEB-INF/lib/

 

로그 리네임(기동시의 모니터링을 실시했기 때문)

cd /var/data/confluence/logs
mv atlassian-confluence.log atlassian-confluence.log.old
 

서비스의 기동과 모니터링

/etc/init.d/mysql start
/etc/init.d/tomcat6 start


tail -f /var/data/confluence/logs/atlassian-confluence.log

 

포털 버전 업(5.6.6>5.7.5)

지정 버전의 tar파일을 미리 다운로드한다.

https://ja.atlassian.com/software/confluence/download-archives

 

  1. 서비스 정지
service tomcat6 stop
service mysql stop

 

Confluence의 교환

tar zxvf confluence-VERSION.tar.gz
mv /var/lib/tomcat6/webapps/confluence /tmp/
chmod 775 confluence-VERSION/confluence
mv confluence-VERSION/confluence /var/lib/tomcat6/webapps/

데이터 지정

vi /var/lib/tomcat6/webapps/confluence/WEB-INF/classes/confluence-init.properties
- # confluence.home=/var/data/confluence/
+ confluence.home=/var/data/confluence/

 

MySQL드라이버의 카피

cp -pR /tmp/confluence/WEB-INF/lib/mysql-connector-java-5.1.29-bin.jar /var/lib/tomcat6/webapps/confluence/WEB-INF/lib/

로그 리네임(기동시의 모니터링을 실시했기 때문)

cd /var/data/confluence/logs
mv atlassian-confluence.log atlassian-confluence.log.old

캐쉬 파일 삭제

cd /var/data/confluence/
rm -rf index/* journal/*
rm -rf bundled-plugins plugins-cache plugins-osgi-cache plugins-temp


mysql -u root -p
mysql> use confluence
mysql> SELECT COUNT(entry_id) FROM journalentry;
mysql> DELETE FROM journalentry;
mysql> quit

서비스의 기동과 모니터링

/etc/init.d/mysql start
/etc/init.d/tomcat6 start


tail -f /var/data/confluence/logs/atlassian-confluence.log
 
  1. 문제가 없으면 admin 사용자로 포털에 로그인하여 검색 인덱스를 재구축한다.
    1. 일반 설정> 콘텐츠
  2. 인덱스 작성 캐시 클리어 한다.
    1. 일반 설정 > 캐시 관리 > 상세 뷰를 표시 > 맨 오른쪽 하단의 "모두 지우기"를 실시한다.
  3. 플러그인 업데이트
    1. 일반설정 > Manage add-ons > 무료범위 UPDATE를 모두 실행한다.
728x90
300x250
728x90
반응형
  • 개요
    • 서버 구축 순서를 아래에 기재한다.
    •  순서 / 이관
      1. 이관 서버에 신규 볼륨을 어태치한다.
      2. 서버에서 볼륨의 마운트를 실시한다.
         
      3. infra-misc-3 # mkdir /backup
        infra-misc-3 # mkfs -t ext4 /dev/xvdj
        infra-misc-3 # mount /dev/xvdj /backup/​
        confluence데이터 백업
         
      4. /etc/init.d/tomcat6 stop
        
        
        cd /var/data/
        tar -zcf /backup/confluence.tar.gz confluence​
        mysql데이터의 fulldump
      5. mysqldump -u root -p -x --all-databases > /backup/dump.sql​
        볼륨의 분리
      6. umount /backup
        AWS 콘솔에서 볼륨 디태치를 실시한다.

      1. EC2를 작성한다.
        CentOS7, HVM가상을 선택한다.
      2. ansible 로 초기 세팅 진행
      3. AWS 콘솔에서 볼륨 어태치 한다.
      4. 볼륨의 마운트를 실시한다.
         
      5. [root@infra-misc-6 ~]# mount /dev/xvdf /backup/
        
        
        ls -lh /backup/
        total 74G
        -rw-r--r-- 1  500  500  70G Nov  3 00:29 confluence.tar.gz
        -rw-r--r-- 1  500  500 3.7G Nov  8 22:52 dump.sql
        -rw-r--r-- 1  500  500 163M Nov  2 17:11 jdk-8u144-linux-x64.rpm
        -rw-r--r-- 1 root root 977K Nov  8 19:21 mysql-connector-java-5.1.44-bin.jar​
      6. JAVA1.8설치
         
      7. rpm -ivh jdk-8u144-linux-x64.rpm
        alternatives --config java​
      8. tomcat8설치
         
      9. useradd -s /sbin/nologin tomcat
        
        
        curl -O http://ftp.yz.yamagata-u.ac.jp/pub/network/apache/tomcat/tomcat-8/v8.0.47/bin/apache-tomcat-8.0.47.tar.gz
        
        
        tar zxvf apache-tomcat-8.0.47.tar.gz
        mv apache-tomcat-8.0.47 /opt/
        chown -R tomcat:tomcat /opt/apache-tomcat-8.0.47​
      10. tomcat8기동 서비스의 설정
         
      11. vi /etc/systemd/system/tomcat.service
        ------------------------------------------
        [Unit]
        Description=Apache Tomcat 8
        After=network.target
        
        
        [Service]
        User=tomcat
        Group=tomcat
        Type=oneshot
        PIDFile=/opt/apache-tomcat-8.0.47/tomcat.pid
        RemainAfterExit=yes
        
        
        ExecStart=/opt/apache-tomcat-8.0.47/bin/startup.sh
        ExecStop=/opt/apache-tomcat-8.0.47/bin/shutdown.sh
        ExecReStart=/opt/apache-tomcat-8.0.47/bin/shutdown.sh;/opt/apache-tomcat-8.0.47/bin/startup.sh
        
        
        [Install]
        WantedBy=multi-user.target
        ------------------------------------------
        
        
        chmod 755 /etc/systemd/system/tomcat.service
        
        
        systemctl enable tomcat​
      12. mysql5.6설치
      13. yum remove mariadb-libs
        rm -rf /var/lib/mysql/
        
        
        yum localinstall http://dev.mysql.com/get/mysql57-community-release-el6-7.noarch.rpm -y
        yum repolist all | grep mysql
        
        
        yum install yum-utils
        yum-config-manager --disable mysql57-community
        yum-config-manager --enable mysql56-community
        yum info mysql-community-server
        
        
        yum -y install mysql-community-server
        mysqld --version
        systemctl enable mysqld​
      14. my.cnf의 수정
      15.  
      16. cat /etc/my.cnf
        -----------------------------------------------
        [mysqld]
        datadir=/var/lib/mysql
        socket=/var/lib/mysql/mysql.sock
        # Disabling symbolic-links is recommended to prevent assorted security risks
        symbolic-links=0
        # Settings user and group are ignored when systemd is used.
        # If you need to run mysqld under a different user or group,
        # customize your systemd unit file for mysqld according to the
        # instructions in http://fedoraproject.org/wiki/Systemd
        
        
        ## Character and Collation Options -------------------------------------------------------------
        character-set-server          = utf8
        #collation-server              = utf8_general_ci
        collation-server              = utf8_bin
        default-storage-engine        = InnoDB
        explicit_defaults_for_timestamp = TRUE
        
        
        ## Event Scheduler Options ---------------------------------------------------------------------
        event-scheduler = OFF
        # or
        # skip-event-scheduler
        
        
        ## Connection Options --------------------------------------------------------------------------
        back_log                        = 100
        max_connections                 = 200
        thread_cache_size               = 50
        table_open_cache                = 512
        max_allowed_packet              = 256M
        # thread_concurrency              = 16
        max_connect_errors              = 999999
        wait_timeout                    = 28800
        skip-name-resolve
        
        
        ## Memory Options ------------------------------------------------------------------------------
        query_cache_size                = 64M
        max_heap_table_size             = 32M
        tmp_table_size                  = 4M
        query_cache_limit               = 2M
        group_concat_max_len            = 1024
        
        
        # Session Scope Buffers
        # - IF YOU WANT TO USE THESE BUFFERS,
        #    ACTIVATE IT IN SESSION SCOPE USING SET <parameter_name>=<values>
        sort_buffer_size                = 512K
        join_buffer_size                = 512K
        read_buffer_size                = 128K
        read_rnd_buffer_size            = 128K
        
        
        ## Log Options ---------------------------------------------------------------------------------
        log-warnings                    = 1
        
        
        # Slow Query Log
        log_slow_admin_statements
        slow_query_log                  = 1
        long_query_time                 = 0.5
        
        
        ## InnoDB Options ------------------------------------------------------------------------------
        innodb_buffer_pool_size         = 4G
        innodb_file_per_table           = 1
        innodb_autoextend_increment     = 100
        innodb_log_files_in_group       = 2
        innodb_log_buffer_size          = 16M
        innodb_log_file_size            = 1024M
        innodb_lock_wait_timeout        = 50
        innodb_flush_method             = O_DIRECT
        innodb_flush_log_at_trx_commit  = 1
        innodb_support_xa               = OFF
        innodb_use_sys_malloc           = 1
        
        
        
        
        [mysqld_safe]
        log-error=/var/log/mysqld.log
        pid-file=/var/run/mysqld/mysqld.pid​
      17. mysql데이터 임포트
         
      18. systemctl start mysqld
        mysql -u root < /backup/dump.sql
        systemctl stop mysqld
        systemctl start mysqld​

Confluence설치

728x90
  1.  
  2. wget https://www.atlassian.com/software/confluence/downloads/binary/atlassian-confluence-5.10.8.tar.gz tar zxvf atlassian-confluence-5.10.8.tar.gz cd atlassian-confluence-5.10.8/ chown -R tomcat:tomcat confluence mv confluence /opt/apache-tomcat-8.0.47/webapps/ vi /opt/apache-tomcat-8.0.47/webapps/confluence/WEB-INF/classes/confluence-init.properties - # confluence.home=/var/data/confluence/ + confluence.home=/var/data/confluence/ cp -p /backup/mysql-connector-java-5.1.44-bin.jar /opt/apache-tomcat-8.0.47/webapps/confluence/WEB-INF/lib/​
  3. Confluence데이터 복구
  4. mkdir /var/data
    cd /var/data
    tar zxvf /backup/confluence.tar.gz
    
    
    chown -R tomcat:tomcat confluence
  5. nginx인스톨
     
  6. yum install nginx --enablerepo=epel
    systemctl enable nginx​
  7. 기존 설정 파일 사본
     
  8. cd /etc/nginx
    mv nginx.conf nginx.conf-`date +%F`
    scp infra@infra-misc-3:/etc/nginx/nginx.conf .
    scp infra@infra-misc-3:/etc/nginx/cocone-kr-ssl-sha2.pem .
    scp infra@infra-misc-3:/etc/nginx/cocone-ssl-sha2.pem .
      
    cd conf.d/
    scp infra@infra-misc-3:/etc/nginx/conf.d/v_portal.naver.com.conf .
    scp infra@infra-misc-3:/etc/nginx/conf.d/v_portal.naver.com.conf .
      
    mkdir /var/log/nginx/portal
    mkdir /var/log/nginx/portal-kr
    chown -R nginx:nginx /var/log/nginx​
  9. 폰트의 수정
     
  10. yum install ipa-gothic-fonts.noarch ipa-pgothic-fonts.noarch ipa-mincho-fonts.noarch ipa-pmincho-fonts.noarch
    
    
    mkdir /usr/java/jdk1.8.0_144/jre/lib/fonts/fallback
    cd /usr/java/jdk1.8.0_144/jre/lib/fonts/fallback
    cp /usr/share/fonts/*/* .​
    로그 출력 설정https://portal.cocone.jp/confluence/pages/viewpage.action?pageId=36078372
  11. 업데이트 처리 개시
     
  12. systemctl start nginx
    systemctl start tomcat​
  13. 인덱스, 저널 파일 삭제
     
  14. systemctl stop tomcat
    
    
    cd /var/data/confluence/
    rm -rf index/* journal/*
    rm -rf bundled-plugins plugins-cache plugins-osgi-cache plugins-temp
    
    
    mysql -u root -p
    mysql> use confluence
    mysql> SELECT COUNT(entry_id) FROM journalentry;
    mysql> DELETE FROM journalentry;
    mysql> quit
    
    
    systemctl stop mysqld
    systemctl start mysqld
    
    
    systemctl start tomcat​
  15. 인덱스의 재구축
    admin사용자로 로그온하고, 일반 설정의 콘텐츠 관리보다 인덱스의 재구축을 실시한다.

  16. Add-on의 UPDATE
    admin 사용자로 로그인하며 일반 설정의 "Management Add-on", 무료 범위 모두 UPDATE. 또한 이용 불가 플러그인은 Disable로 한다.

  17. 캐시 클리어
    admin 사용자로 로그인하고, 일반 설정의 캐시 관리에서, 「모두 삭제」를 실시한다.
728x90
300x250

'IT > Confluence' 카테고리의 다른 글

Confluence 업그레이드 절차  (0) 2021.08.17
Confluence mysql percona backup 설정  (0) 2021.08.12
Confluence Upgrade  (0) 2021.08.09
Confluence 설정  (0) 2021.08.09
Confluence Maintenance (index 재구축, 캐쉬 클리어)  (0) 2021.08.09
728x90
반응형

Confluence

Atlassian의 협업 도구.wiki와 기능을 가진다.JIRA와 HipChat와의 제휴 등도 가능.플러그 인을 사용하기로 Stack Overflow적인 기능도 가질 수 있다.

링크

설치

사전에 Tomcat과MySQL의 설정한다. 평가 환경에서 운용 환경으로의 이행은이쪽참조.

  1. 다운로드하고 해동(EAR-WAR Edition)
  2. 해동한 안의 confluence/WEB-INF/classes/confluence-init.properties를 편집해서 데이터 디렉토리를 지정한다.26행째 근처.이 디렉토리는 설정과 데이터가 저장되는 디렉토리가 된다.tomcat의 실행 사용자가 올릴 수 있는 설정이 필요.
  3. confluence.home=/var/data/confluence/
  4. 디렉토리의 작성
  5. # install -o tomcat -g tomcat -m 775 -d /var/data/confluence
  6. 애플리케이션의 Deploy
  7. # chgrp -R tomcat /var/lib/tomcat6/webapps/confluence/
    # mv confluence-5.4.3 /var/lib/tomcat6/webapps/
  8. 한국/일본 등 글꼴 설치(Office문서 등이 Flash에서 내부 생성되지만 글꼴이 없다고 표시가 된다면)
  9. # yum install ipa-gothic-fonts.noarch ipa-pgothic-fonts.noarch ipa-mincho-fonts.noarch ipa-pmincho-fonts.noarch
  10. Nginx를 리버스 프록시로 사용하고https를 이용할 경우 tomcat의 server.xml의 편집이 필요.기술을 사용하는 포토의 커넥터(3080등)에 추가한다.이를 하지 않으면the base URL configuration of your instance is inconsistent with the URL in your browser라는 경고가 관리 화면에서 표시된다(리퀘스트의 URL과 내부적으로 신청곡을 받는 URL이 일치하지 않기 때문).
  11. scheme="https" proxyName="portal.cocone.jp" proxyPort="443"
  12. 또 Question Add-on을 사용하는 경우는 일본어 문자화가 있으므로 이하의 설정이 필요.
  13. useBodyEncodingForURI="false"
    URIEncoding="UTF-8"
    useURIValidationHack="false"
  14. tomcat를 기동하고 접근하고 초기 설정.라이센스를 붙이고 Production Instration을 실행.데이터베이스는 External에서 MySQL을 선택.접속은 Direct JDBC Connection을 선택.
  15. MySQL의 경우는 JDBC의 URL의 갱신이 필요.표시되는 문구를 참조.

초기 설정

설정

  • 일반 설정
    • 날짜 표시:"yyyy/MMM/dd HH:mm"
    • 날짜 표시:"yyyy/MMM/dd"
  • 언어 설정으로 규정을 일본어
  • 플러그 인의 업데이트
  • 메일 서버의 설정
  • LDAP와의 접속 설정(OpenLDAP(Read-Only Posix Schema)( 읽기 전용)
  • 보안 설정으로 관리 세션 타임 아웃의 설정
  • 글로벌 권한의 그룹 설정(디폴트 confluence-users와 같은 설정을 LDAP의 기본 그룹에 추가)
  • 공간 권한 설정(디폴트 confluence-users와 같은 설정을 LDAP의 기본 그룹에 추가)
  • 사이트의 로고 설정
  • PDF변환에서 사용하는 폰트를 업로드 한다.일본어 TTF의 폰트가 없다고 일본어가 표시되지 않는다.

플러그 인

Tips

  • LDAP측에서 그룹 이름을 변경할 경우 LDAP와 동기를 실행하면 Confluence측의 그룹 이름으로 반영하는데 권한으로 할당한 그룹 이름은 링크하지 않으므로 수동으로 재설정이 필요하게 된다.
  • Confluence내부 사용자의 경우 사용자 삭제 시에 개인 공간을 삭제되지만 LDAP사용자의 경우 LDAP위에서 삭제해도 콘텐츠는 남는다(Unknown user(xxx) 같은 소유자가 된다).
  • 내부 이용자를 작성하고 같은 ID로 LDAP에 가입하고 동기화한다, 사용자 디렉토리의 우선 순위가 외부 LDAP서버가 상위에서 만난 경우 LDAP사용자 정보가 우선되어 전환된다.이 경우 LDAP측 사용자를 삭제하면 내부 사용자가 다시 유효하다.
  • 콘텐츠를 작성한 이용자는 삭제할 수 없으므로 삭제의 대신 무효화한다.DB를 직접 조작하고 삭제하는 방법도 있다.
  • 동일 서버에서 백업에서 복구를 실행한 경우 익명(Unknown)사용자가 나오고 Question Add-on이 Oops이 되는 경우가 있다.원인은 불명.평가 환경에서 운용 환경DB환경을 바꿀 때에 출현했다.서버를 바꿔서 실행하면 나았다.
  • Confluence(콘플루언스)을 사용한다면 최소한 추억으로 간직하고 싶은 Wiki기법| iwb.jp

업그레이드

EC2에서 스냅 샷에서 볼륨 작성을 다른 인스턴스에서 테스트 업데이트를 하고 빠져들죠.머신이 바뀌면 serverid이 변한 것으로 라이센스 데이터가 테스트 서버 측 자동으로 업데이트되고 이상하게 됩니다.나중에 실제 환경에서 업데이트를 실행하면 서버 ID의 실책으로 성단의 플래그가 MySQL에 서서 기동할 수 없게 됩니다.업데이트의 테스트를 할 때는 실전 서버를 정지하고 스냅 샷 백업을 들어 실전 서버에서 하도록 하세요.

  1. zabbix의 감시 정지
  2. tomcat을 정지
  3. # service tomcat stop
  4. mysql정지
  5. # service mysql stop
  6. EC2에서 볼륨 스냅 샷 작성. 완료될 때까지 대기.
  7. 업그레이드 버전을 다운로드와 해동
  8. # chmod 775 confluence-VERSION/confluence/
    # mv  confluence-VERSION/confluence/ /var/lib/tomcat6/webapps/confluence
    # mv /var/lib/tomcat6/webapps/confluence/ /tmp/
  9. confluence/WEB-INF/classes/confluence-init.properties의 home directory의 설정
  10. - # confluence.home=/var/data/confluence/
    + confluence.home=/var/data/confluence/
  11. MySQL드라이버의 카피
  12. cp -pR /tmp/confluence/WEB-INF/lib/mysql-connector-java-5.1.29-bin.jar /var/lib/tomcat6/webapps/confluence/WEB-INF/lib/
  13. MySQL과 tomcat의 기동
  14. # service tomcat6 start
    # service mysql start
  15. 로그와 브라우저 접속으로 동작 확인
728x90
300x250
728x90
반응형

개요

포털 사이트의 퍼포먼스 향상을 목적으로 한 유지보수 내용

 

또한, 아래 작업은 포털을 정지하고 실시해야 함

admin비밀 번호, root패스워드를 잊은 것 같아.

 

인덱스 다시 구축

systemctl stop tomcat



cd /var/data/confluence/

rm -rf index/* journal/*

rm -rf bundled-plugins plugins-cache plugins-osgi-cache plugins-temp



mysql -u root -p

mysql> use confluence

mysql> SELECT COUNT(entry_id) FROM journalentry;

mysql> DELETE FROM journalentry;

mysql> quit



systemctl stop mysqld

systemctl start mysqld



systemctl start tomcat

관리 페이지보다 인덱스의 재구축을 실시한다.

 

 

 

캐쉬 클리어

관리 페이지, 캐시 정보>고급>모든 Cache를 클리어 한다.

 

 

 

728x90
300x250

'IT > Confluence' 카테고리의 다른 글

Confluence 업그레이드 절차  (0) 2021.08.17
Confluence mysql percona backup 설정  (0) 2021.08.12
Confluence Upgrade  (0) 2021.08.09
Confluence 서버 이관 및 재설정  (0) 2021.08.09
Confluence 설정  (0) 2021.08.09

+ Recent posts