배포 및 유지보수 / 관리자 도구
이 문서에서는 관리자 도구를 사용하여 DataFlux Func를 유지 관리하는 방법을 주로 설명합니다.
DataFlux Func는 긴급 유지 관리 작업을 쉽게 수행할 수 있도록 관리자 도구를 제공합니다.
관리자 도구는 컨테이너에 포함되어 있으며 Docker exec 방식으로 실행해야 합니다. --help를 사용하여 구체적인 사용 방법을 확인할 수 있습니다:
| Bash |
|---|
| docker exec -it {DataFlux Func 컨테이너 ID} sh -c 'exec python admin-tool.py --help'
|
| Text Only |
|---|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 | usage: admin-tool.py [-h] [-f] [--admin-username ADMIN_USERNAME] [--admin-password ADMIN_PASSWORD] <Command>
+--------------------------+
| DataFlux Func Admin Tool |
+--------------------------+
This tool should run in the Docker container:
$ docker exec {DataFlux Func Container ID} sh -c 'exec python admin-tool.py --help'
$ docker exec -it {DataFlux Func Container ID} sh -c 'exec python admin-tool.py reset_admin [-f] [--admin-username=<Admin Username>] [--admin-password=<Password>]'
$ docker exec -it {DataFlux Func Container ID} sh -c 'exec python admin-tool.py reset_upgrade_db_seq [-f]'
$ docker exec -it {DataFlux Func Container ID} sh -c 'exec python admin-tool.py disable_ip_address_filter [-f]'
$ docker exec -it {DataFlux Func Container ID} sh -c 'exec python admin-tool.py clear_redis [-f]'
positional arguments:
<Command> reset_admin, reset_upgrade_db_seq, disable_ip_address_filter, clear_redis, run_sql, call_api
options:
-h, --help show this help message and exit
-f, --force Force run, no confirm
--admin-username ADMIN_USERNAME
Admin Username
--admin-password ADMIN_PASSWORD
Admin Password
|
1.1 관리자 비밀번호 재설정
일반 사용자의 비밀번호는 시스템 관리자가 직접 다시 설정할 수 있지만,
시스템 관리자 본인의 비밀번호를 잊어버린 경우 DataFlux Func에 포함된 관리자 도구를 사용하여 재설정해야 합니다.
자세한 내용은 배포 및 유지보수 / 관리자 도구를 참조하십시오.
1.2 데이터베이스 업데이트 시퀀스 재설정
DataFlux Func는 설치/업그레이드 시 데이터베이스 구조를 자동으로 업데이트하고 현재 데이터베이스 구조 버전 시퀀스를 기록합니다.
어떤 경우에는 이 시퀀스가 올바르지 않으면 시스템이 정상적으로 시작되지 않을 수 있으며, 이 경우 관리자 도구를 사용하여 수정해야 합니다.
이것이 무엇인지 모르는 경우, 공식에 문의한 후 작업을 수행하십시오
구체적인 명령은 다음과 같습니다:
| Bash |
|---|
| docker exec -it {DataFlux Func 컨테이너 ID} sh -c 'exec python admin-tool.py reset_db_upgrade_seq'
|
| Bash |
|---|
| cd /usr/src/app; python admin-tool.py reset_db_upgrade_seq
|
1.3 IP 주소 필터 비활성화
시스템 설정 / IP 주소 필터에서 잘못 구성하여 DataFlux Func에 접근할 수 없는 경우.
다음 명령을 사용하여 IP 주소 필터 기능을 직접 비활성화할 수 있습니다.
구체적인 명령은 다음과 같습니다:
| Bash |
|---|
| docker exec -it {DataFlux Func 컨테이너 ID} sh -c 'exec python admin-tool.py disable_ip_address_filter'
|
| Bash |
|---|
| cd /usr/src/app; python admin-tool.py disable_ip_address_filter
|
1.4 Redis 비우기
큐가 막혀 즉시 복구해야 하거나, 스크립트의 비합리적인 로직으로 캐시가 과도하게 커지는 등의 상황으로 DataFlux Func를 조작할 수 없는 경우.
다음 명령을 사용하여 Redis 데이터베이스를 비울 수 있습니다.
Redis를 비워도 DataFlux Func 자체 실행에는 문제가 발생하지 않습니다. 그러나 실행 중인 비즈니스 코드가 Redis의 데이터에 의존할 수 있으므로 반드시 확인 후 작업을 수행하십시오
구체적인 명령은 다음과 같습니다:
| Bash |
|---|
| docker exec -it {DataFlux Func 컨테이너 ID} sh -c 'exec python admin-tool.py clear_redis'
|
| Bash |
|---|
| cd /usr/src/app; python admin-tool.py clear_redis
|
2. Redis 직접 조작
Redis를 직접 조작해야 하는 경우 Redis 터미널에 직접 들어가 작업을 수행할 수 있습니다.
구체적인 명령은 다음과 같습니다:
| Bash |
|---|
| docker exec -it {Redis 컨테이너 ID} sh -c 'exec redis-cli -n 5'
|
DataFlux Func는 기본적으로 Redis의 5번 데이터베이스를 사용합니다