728x90

리눅스에서 실시간 로그를 확인 할때 

tail -f log.txt

 

윈도우에서 실시간 로그를 확일 할때

Get-Content log.txt -Tail 100 -Wait -Encoding UTF8

 

728x90

'Server > Windows' 카테고리의 다른 글

bitvise - windows 터널링  (0) 2023.03.29
bitvise - windows 터널링  (0) 2023.03.29
728x90

토렌트를 vpn을 결합해서 구동할수 있다.

 

도커 이미지는 haugene/transmission-openvpn

vpn은 이전 구매한 VPNunlimited

 

내가 구매한 VPNunlimited (lift time)

https://www.keepsolid.com/

 

KEEPSOLID Company - Productivity & Security Solutions

KeepSolid provides top-notch ✔️productivity and ✔️privacy solutions used by millions globally 🌍Ensure online security and simplify business and everyday routines with us!

www.keepsolid.com

여기서 VPN 정보 셋팅

셋팅 후 ovpn 설정파일이 다운로드 된다.

dfjkdfjklfdijfff_ca-tr_openvpn.ovpn

 

docker-compose.yml로 transmission-openvpn 구동

version: '2'
services:
 transmission:
  image: haugene/transmission-openvpn
  cap_add:
    - NET_ADMIN
  devices:
    - /dev/net/tun
  restart: always
  ports:
    - "9091:9091"
  volumes:
    - ./data/:/data # where transmission will store the data
    - ./config/:/config # where transmission-home is stored
    - ./openvpn/:/etc/openvpn/custom #다운로드받은 인증서파일 위치
  environment:
    - TZ=Asia/Seoul
    - OPENVPN_PROVIDER=CUSTOM
    - OPENVPN_CONFIG=D8D8B16A-F982-4ED4-A7CD-5A71723A2086_ca-tr_openvpn #다운로드받은 인증서 파일명 확장자(.ovpn)제외
    - OPENVPN_USERNAME=VPN인증서USERNAME
    - OPENVPN_PASSWORD=VPN인증서PASSWORD
    - OPENVPN_OPTS=--inactive 3600 --ping 10 --ping-exit 60
    - LOCAL_NETWORK=192.168.0.0/24
    - TRANSMISSION_RPC_USERNAME=TRANSMISSION유저아이디지정
    - TRANSMISSION_RPC_PASSWORD=TRANSMISSION유저암호지정
    - TRANSMISSION_RPC_AUTHENTICATION_REQUIRED=true

 

실제 vpn으로 transmission이 구동되는지 확인

https://ipleak.net

 

IP/DNS Detect

What is your IP, what is your DNS, check your torrent IP, what informations you send to websites.

ipleak.net

해당 사이트에서 Activate > this Magnet Link 복사

 

https://nordvpn.com/ko/ip-lookup/  에서 해당 아이피 확인

 

728x90

'Server > Application' 카테고리의 다른 글

docker-compose guacamole + tailscale  (0) 2023.12.21
APM scouter-server 및 scouter-paper 설치  (0) 2023.04.06
Zabbix - 오픈 소스 모니터링 (Tomcat)  (0) 2023.04.05
FeatherWiki  (0) 2023.04.03
tiddlyhost - tiddlywiki - FeatherWiki  (0) 2023.04.03
728x90

guacamole로 원격을 접속시에 tailscale로 묶어있는 VPN으로 원격을 설정하고 싶을때 같이 설치 후 

네트워크를 묶어주면된다.

 

docker-compose.yml

version: "3"
services:
  guacamole:
    image: flcontainers/guacamole
    container_name: guacamole
    environment:
      TZ: 'Asia/Seoul'
      EXTENSIONS: 'auth-totp,auth-ldap'
    volumes:
      - postgres:/config
      - /etc/localtime:/etc/localtime:ro
      ports:
      - 8787:8080
    tailscale:
      image: tailscale/tailscale
      network_mode: host
      privileged: true
      cap_add:
        - NET_ADMIN
    devices:
      - /dev/net/tun
    environment:
      - TAILSCALE_AUTH_KEY=key
    restart: always
volumes:
    postgres:

 

TAILSCALE_AUTH_KEY=key 발급은 

해당 guacamole는  tailscale로 묶어있는 네트워크에 접속할 수 있다.

 

728x90
728x90

APM scouter-server 및 scouter-paper 설치

APM (Application Performance Management)

 

jennifer(제니퍼), SysMaster(시스마스터), InterMax(인터맥스), Elastic APM 등 유명한 상용 APM도 존재하고

Scouter(스카우터), Pinpoint 등 무료 APM이 존재한다.

 

오픈소스 APM 소프트웨어인 scouter의 scouter-server 및 scouter-paper 설치하여 톰캣을 모니터링 해보기로 하였다.

요청한 아이피, 요처시간, DB 쿼리등 was의 전반적인 로그 등을 확인 할 수있고 부하가 있을때 서버 튜닝을 위해 확인하는

용도로도 적합하다. 

 

https://github.com/scouter-project/scouter
https://scouter-contrib.github.io/scouter-paper/manual.html

 

GitHub - scouter-project/scouter: Scouter is an open source APM (Application Performance Management) tool.

Scouter is an open source APM (Application Performance Management) tool. - GitHub - scouter-project/scouter: Scouter is an open source APM (Application Performance Management) tool.

github.com

 

Paper

레이아웃 관리 PAPER와 METRIC이 결합된 정보와 PAPER의 크기와 위치 정보 전체 레이아웃이라고 정의합니다. 이러한 레이아웃 정보를 우측 상단의 LAYOUT 버튼을 클릭하여, 관리할 수 있습니다. 기본적

scouter-contrib.github.io

[아키텍처]

Modules  명
Server(Collector) Agent가 전송한 데이터 수집/처리
Host Agent OS의 CPU, Memory, Disk등의 성능 정보 전송
Java Agent 실시간 서비스 성능 정보, Heap Memory, Thread 등 Java 성능 정보
Client(Viewer) 수집된 성능 정보를 확인하기 위한 Client 프로그램

 

[docker-compose.yml]

version: '3.2'
services:
  scouter-paper:
    image : scouterapm/scouter-paper:2.6.4
    restart : always
    ports:
      - 8282:80
  scouter:
    image : scouterapm/scouter-server:2.10.2
    restart : always
    environment:
      - SC_SERVER_ID=SCCOUTER-COLLECTOR 
      - NET_HTTP_SERVER_ENABLED=true
      - NET_HTTP_API_SWAGGER_ENABLED=true
      - NET_HTTP_API_ENABLED=true
      - MGR_PURGE_PROFILE_KEEP_DAYS=2
      - MGR_PURGE_XLOG_KEEP_DAYS=5
      - MGR_PURGE_COUNTER_KEEP_DAYS=15
      - JAVA_OPT=-Xms1024m -Xmx1024m
    volumes:
      - ./logs:/home/scouter-server/logs
      - ./sc-data:/home/scouter-server/database
    ports:
      - 6188:6180
      - 6100:6100
      - 6100:6100/udp

[실행]

$ sudo docker-compose up -d
Creating network "scouter_default" with the default driver
Pulling scouter-paper (scouterapm/scouter-paper:2.6.4)...
2.6.4: Pulling from scouterapm/scouter-paper
e7c96db7181b: Already exists
f0e40e45c95e: Pull complete
cb818971fab6: Pull complete
5ac43978c756: Pull complete
3ef094174723: Pull complete
b200969d75cd: Pull complete
Digest: sha256:13edd16e7c17c1eaf67d084af35aa9e6cc7b0ba2e70b43190ec555c941ac24e4
Status: Downloaded newer image for scouterapm/scouter-paper:2.6.4
Pulling scouter (scouterapm/scouter-server:2.10.2)...
2.10.2: Pulling from scouterapm/scouter-server
e7c96db7181b: Already exists
f910a506b6cb: Already exists
c2274a1a0e27: Already exists
d64ce61351d7: Pull complete
9a0ef7fa06c0: Pull complete
beb9f499ce80: Pull complete
70dbd8c941fd: Pull complete
Digest: sha256:a2b3df0ae04929d7d08748b05a8f562854b350be8cda2e72d681287478232316
Status: Downloaded newer image for scouterapm/scouter-server:2.10.2
Creating scouter_scouter-paper_1 ... done

[scouter-paper]

http://localhost:8282

[scouter-server]

http://localhost:6188/scouter/v1/info/server

{"status":"200","requestId":"#mbu9","resultCode":"0","message":"success","result":[{"id":"-1082951330","name":"SCCOUTER-COLLECTOR","connected":true,"serverTime":"1680740477280","version":"2.10.2 2020-12-19 01:45 GMT"}]}

[agent 설치]

모니터링할 톰캣이 있는 was 서버에 agent 파일 설치

https://github.com/scouter-project/scouter/releases/tag/v2.17.1

 

Release v2.17.1 · scouter-project/scouter

Important execute the command to run scouter client for Mac(OSX) xattr -cr scouter.client.app scouter client for Mac needs Java11+ On issue to display xlog list table, remove the directory ~/.scou...

github.com

암축을 풀면 6개을 폴더가 있다.

서버는 이미 docker로 설치를 하였기 때문에 was에 agent.java의 설정을 수정해서 was서버에 복사해준다.

agent.batch
agent.host
agent.java
agent.java_6_7
server
webapp

[./agent.host/conf/scouter.conf]

### scouter host configruation sample
#net_collector_ip=127.0.0.1  scouter-server ip
#net_collector_udp_port=6100 scouter-server collector port
#net_collector_tcp_port=6100
#cpu_warning_pct=80
#cpu_fatal_pct=85
#cpu_check_period_ms=60000
#cpu_fatal_history=3
#cpu_alert_interval_ms=300000
#disk_warning_pct=88
#disk_fatal_pct=92

### scouter host configruation sample
net_collector_ip=192.168.0.10
net_collector_udp_port=6100
#net_collector_tcp_port=6100
#cpu_warning_pct=80
#cpu_fatal_pct=85
#cpu_check_period_ms=60000
#cpu_fatal_history=3
#cpu_alert_interval_ms=300000
#disk_warning_pct=88
#disk_fatal_pct=92

### Scouter Paper
counter_interaction_enabled=true

[agent 실행]

 .\host.bat

C:\dev\docker\scouter\scouter-all-2.17.1\scouter\agent.host>java -classpath ./scouter.host.jar   scouter.boot.Boot ./lib
  ____
 / ___|  ___ ___  _   _| |_ ___ _ __
 \___ \ / __/   \| | | | __/ _ \ '__|
  ___) | (_| (+) | |_| | ||  __/ |
 |____/ \___\___/ \__,_|\__\___|_|
 Open Source S/W Performance Monitoring
 Scouter version 2.17.1

Configure -Dscouter.config=.\conf\scouter.conf
Scouter Host Agent Version 2.17.1 2022-03-27 04:35 GMT
System JRE version : 1.8.0_332

 

[Java Agent]

JAVA_OPTS=" ${JAVA_OPTS} -javaagent:${SCOUTER_AGENT_DIR}/scouter.agent.jar"
JAVA_OPTS=" ${JAVA_OPTS} -Dscouter.config=${SCOUTER_AGENT_DIR}/scouter.conf

 

서버에서 구동시

Tomcat 설정파일 (setenv.sh)

JAVA_OPTS=" ${JAVA_OPTS} -javaagent:/home/user/../scouter.agent.jar"
JAVA_OPTS=" ${JAVA_OPTS} -Dscouter.config=/home/user/../scouter.conf

 

이클립스에서 구동시

-javaagent:C:/dev/docker/scouter/scouter-all-2.17.1/scouter/agent.java/scouter.agent.jar 
-Dscouter.config=C:/dev/docker/scouter/scouter-all-2.17.1/scouter/agent.java/conf/scouter.conf
-Dobj_name=was01

[scouter-paper 확인]

agent.host(시스템)와 agent.java(tomcat)가 연동된 것을 확인 할 수 있다

 

 

[가이드]

https://scouter-contrib.github.io/scouter-paper/manual.html

 

Paper

레이아웃 관리 PAPER와 METRIC이 결합된 정보와 PAPER의 크기와 위치 정보 전체 레이아웃이라고 정의합니다. 이러한 레이아웃 정보를 우측 상단의 LAYOUT 버튼을 클릭하여, 관리할 수 있습니다. 기본적

scouter-contrib.github.io

[실행형 클라이언트]

윈도우, 리눅스, 맥에서 실행하는 클라이언트도 제공한다.

scouter-pape 보다 더욱 상세한 정보를 확인 할 수 있다.

728x90

'Server > Application' 카테고리의 다른 글

transmission-openvpn에 VPNunlimited 설정  (1) 2024.02.18
docker-compose guacamole + tailscale  (0) 2023.12.21
Zabbix - 오픈 소스 모니터링 (Tomcat)  (0) 2023.04.05
FeatherWiki  (0) 2023.04.03
tiddlyhost - tiddlywiki - FeatherWiki  (0) 2023.04.03
728x90

Zabbix - 오픈 소스 모니터링 (Tomcat)

현재 진행 중인 프로젝트의 WAS가 Tomcat로 구성되어 있는데 한번씩 느려 지는 현상이 있어서 Tocat 모니터링을 할 수 있는 오픈소스 Zabbix를 설치해서 모니터링 해보려고 한다.

 

Zabbix는 톰캣 외에 다양한 플래폼을 지원하니 홈페이지에서 확인해보기 바랍니다.

https://www.zabbix.com/

 

Zabbix :: The Enterprise-Class Open Source Network Monitoring Solution

Zabbix is a mature and effortless enterprise-class open source monitoring solution for network monitoring and application monitoring of millions of metrics.

www.zabbix.com

[Zabbix agent 설치]

서버에 맞는 agent 다운로드

윈도우 서버여서 윈도우 버전으로 저는 진행 했습니다.

[zabbix_agentd.conf]

# This is a configuration file for Zabbix agent service (Windows)
# To get more information about Zabbix, visit http://www.zabbix.com

############ GENERAL PARAMETERS #################

### Option: LogType
#	Specifies where log messages are written to:
#		system  - Windows event log
#		file    - file specified with LogFile parameter
#		console - standard output
#
# Mandatory: no
# Default:
# LogType=file

### Option: LogFile
#	Log file name for LogType 'file' parameter.
#
# Mandatory: no
# Default:
# LogFile=

LogFile=c:\temp\zabbix_agentd.log

### Option: LogFileSize
#	Maximum size of log file in MB.
#	0 - disable automatic log rotation.
#
# Mandatory: no
# Range: 0-1024
# Default:
# LogFileSize=1

### Option: DebugLevel
#	Specifies debug level:
#	0 - basic information about starting and stopping of Zabbix processes
#	1 - critical information
#	2 - error information
#	3 - warnings
#	4 - for debugging (produces lots of information)
#	5 - extended debugging (produces even more information)
#
# Mandatory: no
# Range: 0-5
# Default:
# DebugLevel=3

### Option: SourceIP
#	Source IP address for outgoing connections.
#
# Mandatory: no
# Default:
# SourceIP=

### Option: AllowKey
#	Allow execution of item keys matching pattern.
#	Multiple keys matching rules may be defined in combination with DenyKey.
#	Key pattern is wildcard expression, which support "*" character to match any number of any characters in certain position. It might be used in both key name and key arguments.
#	Parameters are processed one by one according their appearance order.
#	If no AllowKey or DenyKey rules defined, all keys are allowed.
#
# Mandatory: no

### Option: DenyKey
#	Deny execution of items keys matching pattern.
#	Multiple keys matching rules may be defined in combination with AllowKey.
#	Key pattern is wildcard expression, which support "*" character to match any number of any characters in certain position. It might be used in both key name and key arguments.
#	Parameters are processed one by one according their appearance order.
#	If no AllowKey or DenyKey rules defined, all keys are allowed.
#       Unless another system.run[*] rule is specified DenyKey=system.run[*] is added by default.
#
# Mandatory: no
# Default:
# DenyKey=system.run[*]

### Option: EnableRemoteCommands - Deprecated, use AllowKey=system.run[*] or DenyKey=system.run[*] instead
#	Internal alias for AllowKey/DenyKey parameters depending on value:
#	0 - DenyKey=system.run[*]
#	1 - AllowKey=system.run[*]
#
# Mandatory: no

### Option: LogRemoteCommands
#	Enable logging of executed shell commands as warnings.
#	0 - disabled
#	1 - enabled
#
# Mandatory: no
# Default:
# LogRemoteCommands=0

##### Passive checks related

### Option: Server
#	List of comma delimited IP addresses, optionally in CIDR notation, or DNS names of Zabbix servers and Zabbix proxies.
#	Incoming connections will be accepted only from the hosts listed here.
#	If IPv6 support is enabled then '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' are treated equally and '::/0' will allow any IPv4 or IPv6 address.
#	'0.0.0.0/0' can be used to allow any IPv4 address.
#	Example: Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.domain
#
# Mandatory: yes, if StartAgents is not explicitly set to 0
# Default:
# Server=

Server=127.0.0.1

### Option: ListenPort
#	Agent will listen on this port for connections from the server.
#
# Mandatory: no
# Range: 1024-32767
# Default:
# ListenPort=10050

ListenPort=10050

### Option: ListenIP
#		List of comma delimited IP addresses that the agent should listen on.
#		First IP address is sent to Zabbix server if connecting to it to retrieve list of active checks.
#
# Mandatory: no
# Default:
# ListenIP=0.0.0.0

### Option: StartAgents
#	Number of pre-forked instances of zabbix_agentd that process passive checks.
#	If set to 0, disables passive checks and the agent will not listen on any TCP port.
#
# Mandatory: no
# Range: 0-100
# Default:
# StartAgents=3

##### Active checks related

### Option: ServerActive
#	Zabbix server/proxy address or cluster configuration to get active checks from.
#	Server/proxy address is IP address or DNS name and optional port separated by colon.
#	Cluster configuration is one or more server addresses separated by semicolon.
#	Multiple Zabbix servers/clusters and Zabbix proxies can be specified, separated by comma.
#	More than one Zabbix proxy should not be specified from each Zabbix server/cluster.
#	If Zabbix proxy is specified then Zabbix server/cluster for that proxy should not be specified.
#	Multiple comma-delimited addresses can be provided to use several independent Zabbix servers in parallel. Spaces are allowed.
#	If port is not specified, default port is used.
#	IPv6 addresses must be enclosed in square brackets if port for that host is specified.
#	If port is not specified, square brackets for IPv6 addresses are optional.
#	If this parameter is not specified, active checks are disabled.
#	Example for Zabbix proxy:
#		ServerActive=127.0.0.1:10051
#	Example for multiple servers:
#		ServerActive=127.0.0.1:20051,zabbix.domain,[::1]:30051,::1,[12fc::1]
#	Example for high availability:
#		ServerActive=zabbix.cluster.node1;zabbix.cluster.node2:20051;zabbix.cluster.node3
#	Example for high availability with two clusters and one server:
#		ServerActive=zabbix.cluster.node1;zabbix.cluster.node2:20051,zabbix.cluster2.node1;zabbix.cluster2.node2,zabbix.domain
#
# Mandatory: no
# Default:
# ServerActive=

ServerActive=127.0.0.1:8282

### Option: Hostname
#	List of comma delimited unique, case sensitive hostnames.
#	Required for active checks and must match hostnames as configured on the server.
#	Value is acquired from HostnameItem if undefined.
#
# Mandatory: no
# Default:
# Hostname=

Hostname=Windows host

### Option: HostnameItem
#	Item used for generating Hostname if it is undefined. Ignored if Hostname is defined.
#	Does not support UserParameters or aliases.
#
# Mandatory: no
# Default:
# HostnameItem=system.hostname

### Option: HostMetadata
#	Optional parameter that defines host metadata.
#	Host metadata is used at host auto-registration process.
#	An agent will issue an error and not start if the value is over limit of 2034 bytes.
#	If not defined, value will be acquired from HostMetadataItem.
#
# Mandatory: no
# Range: 0-2034 bytes
# Default:
# HostMetadata=

### Option: HostMetadataItem
#	Optional parameter that defines an item used for getting host metadata.
#	Host metadata is used at host auto-registration process.
#	During an auto-registration request an agent will log a warning message if
#	the value returned by specified item is over limit of 65535 characters.
#	This option is only used when HostMetadata is not defined.
#
# Mandatory: no
# Default:
# HostMetadataItem=

### Option: HostInterface
#	Optional parameter that defines host interface.
#	Host interface is used at host auto-registration process.
#	An agent will issue an error and not start if the value is over limit of 255 characters.
#	If not defined, value will be acquired from HostInterfaceItem.
#
# Mandatory: no
# Range: 0-255 characters
# Default:
# HostInterface=

### Option: HostInterfaceItem
#	Optional parameter that defines an item used for getting host interface.
#	Host interface is used at host auto-registration process.
#	During an auto-registration request an agent will log a warning message if
#	the value returned by specified item is over limit of 255 characters.
#	This option is only used when HostInterface is not defined.
#
# Mandatory: no
# Default:
# HostInterfaceItem=

### Option: RefreshActiveChecks
#	How often list of active checks is refreshed, in seconds.
#
# Mandatory: no
# Range: 1-86400
# Default:
# RefreshActiveChecks=5

### Option: BufferSend
#	Do not keep data longer than N seconds in buffer.
#
# Mandatory: no
# Range: 1-3600
# Default:
# BufferSend=5

### Option: BufferSize
#	Maximum number of values in a memory buffer. The agent will send
#	all collected data to Zabbix server or Proxy if the buffer is full.
#
# Mandatory: no
# Range: 2-65535
# Default:
# BufferSize=100

### Option: MaxLinesPerSecond
#	Maximum number of new lines the agent will send per second to Zabbix Server
#	or Proxy processing 'log', 'logrt' and 'eventlog' active checks.
#	The provided value will be overridden by the parameter 'maxlines',
#	provided in 'log', 'logrt' or 'eventlog' item keys.
#
# Mandatory: no
# Range: 1-1000
# Default:
# MaxLinesPerSecond=20

### Option: HeartbeatFrequency
#	Frequency of heartbeat messages in seconds.
#	Used for monitoring availability of active checks.
#	0 - heartbeat messages disabled.
#
# Mandatory: no
# Range: 0-3600
# Default: 60
# HeartbeatFrequency=

############ ADVANCED PARAMETERS #################

### Option: Alias
#	Sets an alias for an item key. It can be used to substitute long and complex item key with a smaller and simpler one.
#	Multiple Alias parameters may be present. Multiple parameters with the same Alias key are not allowed.
#	Different Alias keys may reference the same item key.
#	For example, to retrieve paging file usage in percents from the server:
#	Alias=pg_usage:perf_counter[\Paging File(_Total)\% Usage]
#	Now shorthand key pg_usage may be used to retrieve data.
#	Aliases can be used in HostMetadataItem but not in HostnameItem or PerfCounter parameters.
#
# Mandatory: no
# Range:
# Default:

### Option: Timeout
#	Spend no more than Timeout seconds on processing.
#
# Mandatory: no
# Range: 1-30
# Default:
# Timeout=3

### Option: PerfCounter
#	Syntax: <parameter_name>,"<perf_counter_path>",<period>
#	Defines new parameter <parameter_name> which is an average value for system performance counter <perf_counter_path> for the specified time period <period> (in seconds).
#	For example, if you wish to receive average number of processor interrupts per second for last minute, you can define new parameter "interrupts" as following:
#	PerfCounter = interrupts,"\Processor(0)\Interrupts/sec",60
#	Please note double quotes around performance counter path.
#	Samples for calculating average value will be taken every second.
#	You may run "typeperf -qx" to get list of all performance counters available in Windows.
#
# Mandatory: no
# Range:
# Default:

### Option: Include
#	You may include individual files in the configuration file.
#
# Mandatory: no
# Default:
# Include=

# Include=c:\zabbix\zabbix_agentd.userparams.conf
# Include=c:\zabbix\zabbix_agentd.conf.d\
# Include=c:\zabbix\zabbix_agentd.conf.d\*.conf

####### USER-DEFINED MONITORED PARAMETERS #######

### Option: UnsafeUserParameters
#	Allow all characters to be passed in arguments to user-defined parameters.
#	The following characters are not allowed:
#	\ ' " ` * ? [ ] { } ~ $ ! & ; ( ) < > | # @
#	Additionally, newline characters are not allowed.
#	0 - do not allow
#	1 - allow
#
# Mandatory: no
# Range: 0-1
# Default:
# UnsafeUserParameters=0

### Option: UserParameter
#	User-defined parameter to monitor. There can be several user-defined parameters.
#	Format: UserParameter=<key>,<shell command>
#
# Mandatory: no
# Default:
# UserParameter=

### Option: UserParameterDir
#	Directory to execute UserParameter commands from. Only one entry is allowed.
#	When executing UserParameter commands the agent will change the working directory to the one
#	specified in the UserParameterDir option.
#	This way UserParameter commands can be specified using the relative ./ prefix.
#
# Mandatory: no
# Default:
# UserParameterDir=

####### TLS-RELATED PARAMETERS #######

### Option: TLSConnect
#	How the agent should connect to server or proxy. Used for active checks.
#	Only one value can be specified:
#		unencrypted - connect without encryption
#		psk         - connect using TLS and a pre-shared key
#		cert        - connect using TLS and a certificate
#
# Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted' connection)
# Default:
# TLSConnect=unencrypted

### Option: TLSAccept
#	What incoming connections to accept.
#	Multiple values can be specified, separated by comma:
#		unencrypted - accept connections without encryption
#		psk         - accept connections secured with TLS and a pre-shared key
#		cert        - accept connections secured with TLS and a certificate
#
# Mandatory: yes, if TLS certificate or PSK parameters are defined (even for 'unencrypted' connection)
# Default:
# TLSAccept=unencrypted

### Option: TLSCAFile
#	Full pathname of a file containing the top-level CA(s) certificates for
#	peer certificate verification.
#
# Mandatory: no
# Default:
# TLSCAFile=

### Option: TLSCRLFile
#	Full pathname of a file containing revoked certificates.
#
# Mandatory: no
# Default:
# TLSCRLFile=

### Option: TLSServerCertIssuer
#		Allowed server certificate issuer.
#
# Mandatory: no
# Default:
# TLSServerCertIssuer=

### Option: TLSServerCertSubject
#		Allowed server certificate subject.
#
# Mandatory: no
# Default:
# TLSServerCertSubject=

### Option: TLSCertFile
#	Full pathname of a file containing the agent certificate or certificate chain.
#
# Mandatory: no
# Default:
# TLSCertFile=

### Option: TLSKeyFile
#	Full pathname of a file containing the agent private key.
#
# Mandatory: no
# Default:
# TLSKeyFile=

### Option: TLSPSKIdentity
#	Unique, case sensitive string used to identify the pre-shared key.
#
# Mandatory: no
# Default:
# TLSPSKIdentity=

### Option: TLSPSKFile
#	Full pathname of a file containing the pre-shared key.
#
# Mandatory: no
# Default:
# TLSPSKFile=

####### For advanced users - TLS ciphersuite selection criteria #######

### Option: TLSCipherCert13
#	Cipher string for OpenSSL 1.1.1 or newer in TLS 1.3.
#	Override the default ciphersuite selection criteria for certificate-based encryption.
#
# Mandatory: no
# Default:
# TLSCipherCert13=

### Option: TLSCipherCert
#	GnuTLS priority string or OpenSSL (TLS 1.2) cipher string.
#	Override the default ciphersuite selection criteria for certificate-based encryption.
#	Example for GnuTLS:
#		NONE:+VERS-TLS1.2:+ECDHE-RSA:+RSA:+AES-128-GCM:+AES-128-CBC:+AEAD:+SHA256:+SHA1:+CURVE-ALL:+COMP-NULL:+SIGN-ALL:+CTYPE-X.509
#	Example for OpenSSL:
#		EECDH+aRSA+AES128:RSA+aRSA+AES128
#
# Mandatory: no
# Default:
# TLSCipherCert=

### Option: TLSCipherPSK13
#	Cipher string for OpenSSL 1.1.1 or newer in TLS 1.3.
#	Override the default ciphersuite selection criteria for PSK-based encryption.
#	Example:
#		TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256
#
# Mandatory: no
# Default:
# TLSCipherPSK13=

### Option: TLSCipherPSK
#	GnuTLS priority string or OpenSSL (TLS 1.2) cipher string.
#	Override the default ciphersuite selection criteria for PSK-based encryption.
#	Example for GnuTLS:
#		NONE:+VERS-TLS1.2:+ECDHE-PSK:+PSK:+AES-128-GCM:+AES-128-CBC:+AEAD:+SHA256:+SHA1:+CURVE-ALL:+COMP-NULL:+SIGN-ALL
#	Example for OpenSSL:
#		kECDHEPSK+AES128:kPSK+AES128
#
# Mandatory: no
# Default:
# TLSCipherPSK=

### Option: TLSCipherAll13
#	Cipher string for OpenSSL 1.1.1 or newer in TLS 1.3.
#	Override the default ciphersuite selection criteria for certificate- and PSK-based encryption.
#	Example:
#		TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256
#
# Mandatory: no
# Default:
# TLSCipherAll13=

### Option: TLSCipherAll
#	GnuTLS priority string or OpenSSL (TLS 1.2) cipher string.
#	Override the default ciphersuite selection criteria for certificate- and PSK-based encryption.
#	Example for GnuTLS:
#		NONE:+VERS-TLS1.2:+ECDHE-RSA:+RSA:+ECDHE-PSK:+PSK:+AES-128-GCM:+AES-128-CBC:+AEAD:+SHA256:+SHA1:+CURVE-ALL:+COMP-NULL:+SIGN-ALL:+CTYPE-X.509
#	Example for OpenSSL:
#		EECDH+aRSA+AES128:RSA+aRSA+AES128:kECDHEPSK+AES128:kPSK+AES128
#
# Mandatory: no
# Default:
# TLSCipherAll=

####### For advanced users - TCP-related fine-tuning parameters #######

## Option: ListenBacklog
#       The maximum number of pending connections in the queue. This parameter is passed to
#       listen() function as argument 'backlog' (see "man listen").
#
# Mandatory: no
# Range: 0 - INT_MAX (depends on system, too large values may be silently truncated to implementation-specified maximum)
# Default: SOMAXCONN (hard-coded constant, depends on system)
# ListenBacklog=

Server=192.168.0.100   zabbix 서버 아이피
LogFile=c:\temp\zabbix_agentd.log 로그파일 위치
ServerActive=192.168.0.100 zabbix 서버 아이피

[agent 실행]

C:\dev\zabbix\bin>zabbix_agentd.exe -c zabbix_agentd.conf -i
zabbix_agentd.exe [2148]: service [Zabbix Agent] installed successfully
zabbix_agentd.exe [2148]: event source [Zabbix Agent] installed successfully

[서비스에서 시작]

 

 

수집서버 설치

[docker-compose.yml] 서버설치 설치는 docker-compose로 설치

version: '3.3'

services:
  postgres-server:
    container_name: postgres-server
    image: postgres:13.0-alpine
    restart: always
    environment:  
      POSTGRES_USER: zabbix
      POSTGRES_PASSWORD: passwd!Q
      POSTGRES_DB: zabbix
      PG_DATA: /var/lib/postgresql/data/pgdata

  zabbix-server:
    container_name: zabbix-server
    image: zabbix/zabbix-server-pgsql:ubuntu-5.4.9
    restart: always
    environment:
      POSTGRES_USER: zabbix
      POSTGRES_PASSWORD: passwd!Q
      POSTGRES_DB: zabbix
      ZBX_HISTORYSTORAGETYPES: log,text
      ZBX_DEBUGLEVEL: 1
      ZBX_HOUSEKEEPINGFREQUENCY: 1
      ZBX_MAXHOUSEKEEPERDELETE: 5000
    depends_on:
      - postgres-server
    volumes:
      - ./volumes/zabbix/alertscripts:/usr/lib/zabbix/alertscripts

  zabbix-frontend:
    container_name: zabbix-frontend
    image: zabbix/zabbix-web-nginx-pgsql:ubuntu-5.4.9
    restart: always
    ports:
      - '8282:8080'
    environment:
      POSTGRES_USER: zabbix
      POSTGRES_PASSWORD: passwd!Q
      POSTGRES_DB: zabbix
      ZBX_SERVER_HOST: zabbix-server
      ZBX_POSTMAXSIZE: 64M
      PHP_TZ: "Asia/Seoul"  
      ZBX_MAXEXECUTIONTIME: 500
    depends_on:
      - postgres-server
      - zabbix-server

  zabbix-agent:
    container_name: zabbix-agent
    image: zabbix/zabbix-agent:latest
    privileged: true
    restart: unless-stopped
    environment:
      - ZBX_SERVER_HOST=zabbix-server

  grafana:
    container_name: grafana
    image: grafana/grafana
    restart: always
    ports:
      - '3000:3000'
    environment: 
      - GF_INSTALL_PLUGINS=alexanderzobnin-zabbix-app
    depends_on:
      - postgres-server
      - zabbix-server

[실행]

$ sudo docker-compose up -d
Creating network "zabbix_default" with the default driver
Pulling postgres-server (postgres:13.0-alpine)...
13.0-alpine: Pulling from library/postgres
188c0c94c7c5: Pull complete
56f1d1b70e7f: Pull complete
9b4f01476d2b: Pull complete
16419214bc02: Pull complete
4886fc567835: Pull complete
9026d4fbeafa: Pull complete
001c336294eb: Pull complete
8abc6d154e9f: Pull complete
Digest: sha256:d26ddee3648a324a9747b3257236322141920d5f9a82ca703def6bff1cca7067
Status: Downloaded newer image for postgres:13.0-alpine
Pulling zabbix-server (zabbix/zabbix-server-pgsql:ubuntu-5.4.9)...
ubuntu-5.4.9: Pulling from zabbix/zabbix-server-pgsql
7b1a6ab2e44d: Pull complete
0faa8a1ae817: Pull complete
3642f2e6bfc4: Pull complete
086bad9e9cd9: Pull complete
c1c20828c503: Pull complete
462c6b039bd7: Pull complete
cdd75e9be98e: Pull complete
f5e7e1ca81ac: Pull complete
212bb4660306: Pull complete
Digest: sha256:067ee3c27825615b157b43a42dfa4f893539fa65eeec27e50afb715923892856
Status: Downloaded newer image for zabbix/zabbix-server-pgsql:ubuntu-5.4.9
Pulling zabbix-frontend (zabbix/zabbix-web-nginx-pgsql:ubuntu-5.4.9)...
ubuntu-5.4.9: Pulling from zabbix/zabbix-web-nginx-pgsql
7b1a6ab2e44d: Already exists
9bcbd8c6e347: Pull complete
19fa03b3be40: Pull complete
e5f70d4240af: Pull complete
e9ebbfd24f86: Pull complete
Digest: sha256:8f19f28073c35ad2cac238c4b016e06bdf820ed878e1b85ea3368e56a8376297
Status: Downloaded newer image for zabbix/zabbix-web-nginx-pgsql:ubuntu-5.4.9
Pulling zabbix-agent (zabbix/zabbix-agent:latest)...
latest: Pulling from zabbix/zabbix-agent
f56be85fc22e: Pull complete
c6eaf2aff1f1: Pull complete
f37308748cfd: Pull complete
67cb94e91f1c: Pull complete
a4410c2cadff: Pull complete
82153db6935b: Pull complete
4f4fb700ef54: Pull complete
4e17647aec41: Pull complete
Digest: sha256:8fc537a4ced6f083a5ba898a012eba6a39fc568fd68369d28d0a6a01969428da
Status: Downloaded newer image for zabbix/zabbix-agent:latest
Pulling grafana (grafana/grafana:)...
latest: Pulling from grafana/grafana
63b65145d645: Pull complete
99683f9e378e: Pull complete
b132ad7413cf: Pull complete
b766a18a263f: Pull complete
8019055fcf77: Pull complete
9d7e75cbbe4e: Pull complete
2d09137c17e1: Pull complete
73f9505ae0ff: Pull complete
dd4009ff111a: Pull complete
Digest: sha256:1a359d92f40ef98049b1aac3e43cb4a569f5dc0e552caa883a6b6f4ae1eacded
Status: Downloaded newer image for grafana/grafana:latest
Creating zabbix-agent    ... done
Creating postgres-server ... done
Creating zabbix-server   ... done
Creating grafana         ... done
Creating zabbix-frontend ... done
$

[기본 로그인]

ID : Admin

PW : zabbix

[대시보드]

[Tomcat 모니터링 설정]

 

1. Hosts 클릭

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2. Templates : Configuration > Templates > Apache Tomcat JMX

3. Templates 수정 : 인증에 사용할 {$TOMCAT.USER} {$TOMCAT.PASSWORD}

4. Hosts : Configuration > Hosts > Create host

5. Hosts 추가

 

[Tomcat 설정]

catalina-jmx-remote.jar 다운로드

https://archive.apache.org/dist/tomcat/tomcat-8/v8.5.23/bin/extras/

 

Index of /dist/tomcat/tomcat-8/v8.5.23/bin/extras

 

archive.apache.org

tomcat/bin 폴더에 저장

 

[setenv.bat]

윈도우 : setenv.bat

리눅스 : setenv.sh

#인증없이

JMX_OPTS=" -Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false \ 
-Djava.rmi.server.hostname=192.168.80.130"

CATALINA_OPTS=" ${JMX_OPTS} ${CATALINA_OPTS}"
#인증포함

JMX_OPTS=" -Dcom.sun.management.jmxremote \
-Dcom.sun.management.jmxremote.authenticate=false \
-Dcom.sun.management.jmxremote.ssl=false \ 
-Dcom.sun.management.jmxremote.password.file=$CATALINA_BASE/conf/jmxremote.password \
-Dcom.sun.management.jmxremote.access.file=$CATALINA_BASE/conf/jmxremote.access \
-Djava.rmi.server.hostname=192.168.80.130"

CATALINA_OPTS=" ${JMX_OPTS} ${CATALINA_OPTS}"

[server.xml] 아래내용 추가

<Listener className="org.apache.catalina.mbeans.JmxRemoteLifecycleListener" rmiRegistryPortPlatform="12345" rmiServerPortPlatform="12346"/>

 

[톰캣 Start]

 

[zabbix 모니터링 확인]

여기  까지 진행했으나 agent로 들어오는 데이터는 모니터링이 되나

jmx로 설정한 부분은 연결이 되지않았다.

 

일단 급한대로 

jConsole로 연결해서 jmx가 되는지 확인만 해보았다.

[jConsole]

 

오픈소스 APM인 Scouter(스카우터)를 설치해서 다시 모니터링을 시도 해봐야겠다.

728x90

'Server > Application' 카테고리의 다른 글

docker-compose guacamole + tailscale  (0) 2023.12.21
APM scouter-server 및 scouter-paper 설치  (0) 2023.04.06
FeatherWiki  (0) 2023.04.03
tiddlyhost - tiddlywiki - FeatherWiki  (0) 2023.04.03
esp8266 duckdns 설정  (0) 2023.04.01
728x90

FeatherWiki

 

tiddlywiki 처럼 html 하나의 파일로 저장가능한 위키

https://feather.wiki/

 

Feather Wiki

 

feather.wiki

 

728x90
728x90

tiddlyhost - tiddlywiki - FeatherWiki

tiddlyhost는 tiddlywiki 및 FeatherWiki를 온라인 배포해주는 사이트 입니다.

https://tiddlyhost.com

 

Tiddlyhost

Log in Need an account? Go to sign up.

tiddlyhost.com

 

[내가 예제로 만는 위키]

https://roa.tiddlyhost.com

 

New Wiki

 

roa.tiddlyhost.com

 

 

728x90

'Server > Application' 카테고리의 다른 글

Zabbix - 오픈 소스 모니터링 (Tomcat)  (0) 2023.04.05
FeatherWiki  (0) 2023.04.03
esp8266 duckdns 설정  (0) 2023.04.01
SPROC - 서버 모니터링 구성 참고  (0) 2023.04.01
Thingsboard Docker 설치 - IOT 플래폼  (0) 2023.03.30
728x90

esp8266 duckdns 설정

간단히 칩셋인 esp8266으로 duckdns 클라이언트 만들기

밑의 참고사이트로 esp8266에 올려보니 정상작동함.

예전에 만들어서 참고용 사이트만 남겨 놓음

 

Duck DNS ESP8266 mini WiFi client

 

http://davidegironi.blogspot.com/2017/02/duck-dns-esp8266-mini-wifi-client.html#.ZCe5ynZBxD9

 

Duck DNS ESP8266 mini WiFi client

This is a Duck DNS ESP8266 mini WiFi client. Duck DNS  ( https://www.duckdns.org/ ) is a free  Dynamic DNS (DDNS)  service. It as a...

davidegironi.blogspot.com

https://github.com/davidegironi/espduckdns

 

GitHub - davidegironi/espduckdns: An ESP8266 Duck DNS client

An ESP8266 Duck DNS client. Contribute to davidegironi/espduckdns development by creating an account on GitHub.

github.com

 

728x90

'Server > Application' 카테고리의 다른 글

FeatherWiki  (0) 2023.04.03
tiddlyhost - tiddlywiki - FeatherWiki  (0) 2023.04.03
SPROC - 서버 모니터링 구성 참고  (0) 2023.04.01
Thingsboard Docker 설치 - IOT 플래폼  (0) 2023.03.30
Visual Studio Code Server  (0) 2023.03.29

+ Recent posts