일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- docker-compose
- CentOS
- youtube-dl
- Tomcat
- firewall
- phpmyadmin
- SSL
- HLS
- Maria
- db
- Cent
- ubuntu
- 도커
- docker
- yum
- centos7
- nginx
- 방화벽
- MariaDB
- 인증서
- vsftpd
- letsencrypt
- haproxy.cfg
- YouTube
- https
- 8443
- haproxy
- mount
- iptables
- mysql
- Today
- Total
목록개발 (32)
개발자의뇌
# 간단하게 서버 자원을 측정하여 정의한 api 서버에 json 형태로 전달 # Centos7 버전에서 동작 확인 완료 https://github.com/mfsoftworks/Server-Monitoring-Script yum install -y epel-release yum install -y https://centos7.iuscommunity.org/ius-release.rpm yum install -y gcc python36u python36u-libs python36u-devel python36u-pip wget "https://raw.githubusercontent.com/mfsoftworks/Server-Monitoring-Script/master/monitor.py" pip3 install ..
# db의 일정 데이터만 덮어쓰고 싶을 때 # 데이터가 없으면 insert 하고 있으면 update 한다. # 데이터만 백업하여 덮어쓰는 경우 사용 # 대량의 DB 데이터를 원격으로 업데이트 해야 하는 경우 사용 ex) mysqldump -uroot -p --skip-add-drop-table --no-create-info --skip-add-locks --replace mydbname table1 table2 > mydb.sql
yum install -y java-1.8.0-openjdk-devel.x86_64 tomcat-native mkdir /svc cd /svc wget http://apache.tt.co.kr/tomcat/tomcat-8/v8.5.47/bin/apache-tomcat-8.5.47.tar.gz tar -xzf apache-tomcat-8.5.47.tar.gz mv apache-tomcat-8.5.47 tomcat8 vi /usr/lib/systemd/system/tomcat.service # Systemd unit file for tomcat [Unit] Description=Apache Tomcat Web Application Container After=syslog.target network.targe..
참조 : https://findstar.pe.kr/2018/08/14/fix-haproxy-reload-fail/ 시스템에 대한 이해도가 높고, rsyslog 사용 및 서비스 무중단 처리에 대한 방법 참조 : https://www.lesstif.com/pages/viewpage.action?pageId=24445064 systemctl 사용하는 여러가지 방법들 잘 정리됨 참조 : https://github.com/haproxy/haproxy/blob/master/contrib/systemd/haproxy.service.in haproxy systemctl 등록 스크립트 CentOS7 에서 yum 으로 haproxy 설치할 때 버전이 1.5x 버전이 설치된다. 그래서 다른 버전을 설치하려면 소스 컴파일을 ..
# lvm 볼륨을 일반 마운트 하면 오류 발생 mount /dev/sdb2 /mnt mount: unknown filesystem type 'LVM2_member' # lvm2 설치 yum install lvm2 # apt-get install lvm2 # dm-mod 활성화 modprobe dm-mod # lvm 볼륨 찾기 vgscan root@jin-desktop:~/sj_img# vgscan Reading volume groups from cache. Found volume group "vg_idnmhp01" using metadata type lvm2 # 볼륨 활성화 vgchange -ay vg_idnmhp01 # fdisk 로 디스크 확인 fdisk -l # 마운트하기 mount /dev/map..
# 타임존 확인하고 timedatectl list-timezones | grep Seoul # 타임존 변경하고 timedatectl set-timezone Asia/Seoul # 기존 타임존 심볼릭 링크 교체 ln -sfn /usr/share/zoneinfo/Asia/Seoul /etc/localtime # 최종 확인 date
개발시에 편리한 mariadb, tomcat, phpmyadmin 구성 아래 내용을 docker-compose.yml 파일로 생성한다. version: "2" services: mariadb: image: mariadb:10.3.15-bionic restart: always environment: MYSQL_ROOT_PASSWORD: newpassword volumes: - /root/docker/mariadb/db:/var/lib/mysql - /root/docker/mariadb/conf:/etc/mysql/conf.d ports: - 3306:3306 phpmyadmin: image: phpmyadmin/phpmyadmin restart: always links: - mariadb:db ports:..
톰캣에서 빈번한 로그성 db 처리에 쓰레드를 마구 남발하였더니 open files 에러가 발생하여 시스템이 정지됨. 리눅스 설치시 매번 늘려놓긴 하지만 가끔 잊는 경우가 있음. # open file 확인 ulimit -a # 시스템 전체의 limit 확인하기 # open files 같은 수치 변경시 시스템 limit 보다 작아야 한다. cat /proc/sys/fs/file-max # open files 수치 영구 적용 # 최대값은 131072 아래로 지정하자 # 너무 큰 값은 파일 닫을 때 데몬이 시간을 소비한다. # file-max 값을 확인하여 넘지 않도록 하자 # 이 값은 시스템을 재시작해야 반영된다. vi /etc/security/limits.conf root soft nofile 131072 ..
많은 관리자들이 iptables와 hosts.allow, hosts.deny를 이용하여 접근 제어를 한다. 그 중 hosts.allow, hosts.deny는 tcp wrapper 라는 필터링 유틸을 사용한다. tcp wrapper 는 inetd(xinetd) 데몬에서 관리하는데 외부에서 특정 서비스로 접속할 때 필터링 역할을 해준다. tcp wrapper 를 사용하려면 적용하려는 서비스에서도 tcp wrapper 라이브러리를 사용해야 한다. 예를 들면 host.allow/deny 에서 httpd 필터링이 동작한다면 httpd는 tcp wrapper 라이브러리를 사용하고 있는 것이다. 그럼 서비스가 tcp wrapper를 적용하는지 알아볼 수 있는 방법이 필요한데 그것은 ldd 명령어를 사용하면 확인 가..
CentOS 7 에서 vsftpd 사용시 docker-compose 실행이 지연되는 현상을 발견했다. 하여 docker-compose --verbose 명령으로 확인해 보았더니 아래와 같은 로그가 보인다. urllib3.connectionpool._make_request: http://localhost:None "POST /v1.22/networks/vsftpd_default/disconnect HTTP/1.1" 200 0 compose.cli.verbose_proxy.proxy_callable: docker disconnect_container_from_network -> None compose.cli.verbose_proxy.proxy_callable: docker connect_container_t..