ksh0165 / ReactStudy

업무에 필요한 내용 기록
http://github.com/ksh0165/works.git
0 stars 0 forks source link

webmin : debian webmin 실행 #12

Closed ksh0165 closed 4 years ago

ksh0165 commented 4 years ago

상황 설명:

webmin : debian webmin 실행

webmin 실행 상태

[root@lwa1 ~]# ps -ef | grep webmin root 1589 1 0 May24 ? 00:01:37 /usr/bin/perl /usr/local/webmin/miniserv.pl /etc/webmin/miniserv.conf

ksh0165 commented 4 years ago

debian webmin 방화벽 해제

apt-get install ufw ufw allow 21/tcp

참고 : https://kr.minibrary.com/7/

sudo sed -i 's/archive.ubuntu.com/ftp.daum.net/g' /etc/apt/sources.list rm -rfv /var/lib/apt/lists/ && sed -i 's/# (.multiverse$)/\1/g' /etc/apt/sources.list && apt-get update && apt-get -y upgrade sed -i 's/ftp.daum.net/ftp.neowiz.com/g' /etc/apt/sources.list deb http://archive.ubuntu.com/ubuntu bionic main deb http://archive.ubuntu.com/ubuntu bionic-security main deb http://archive.ubuntu.com/ubuntu bionic-updates main deb http://cz.archive.ubuntu.com/ubuntu bionic main universe

Temporary failure resolving 'ftp.daumkakao.com' 해결

우분투에서 apt-get update 명령어 실행 시 아래와 같이 오류가 발생하며 작동하지 않았다.

lucifer@ubuntu:~$ sudo vi /etc/resolv.conf

rm -rf /var/lib/apt/lists/* -vf

아래의 문자열을 추가한다.

nameserver 8.8.8.8 nameserver 8.8.4.4

네트워크 재시작

root@e21ec52b24c6:/# find / -name "network" /lib/systemd/network /etc/systemd/network /etc/network

webmin 재시작

root@e21ec52b24c6:/etc/systemd# service webmin restart Stopping Webmin server in /usr/share/webmin Starting Webmin server in /usr/share/webmin

DNS 수정

168.124.63.1 systemctl restart network

docker 재시작

docker stop [id]

실행중인 프로세스 보기

root@e21ec52b24c6:/etc/systemd# service --status-all

root@e21ec52b24c6:/# service webmin stop Stopping Webmin server in /usr/share/webmin root@e21ec52b24c6:/# service webmin start root@e21ec52b24c6:/#

ksh0165 commented 4 years ago

docker 안으로 복사 docker cp sources.list e21ec52b24c6:/root

ksh0165 commented 4 years ago

Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)]

rm /var/lib/apt/lists/lock apt-get update

ksh0165 commented 4 years ago

System has not been booted with systemd as init system (PID 1)

/sbin/reboot -f

deb http://mirror.kakao.com/ubuntu/ bionic main restricted

mariadb export select query

SELECT orderNumber, status, orderDate, requiredDate, comments FROM orders WHERE status = 'Cancelled' INTO OUTFILE 'C:/tmp/cancelled_orders.csv' FIELDS ENCLOSED BY '"' TERMINATED BY ';' ESCAPED BY '"' LINES TERMINATED BY '\n';

ksh0165 commented 4 years ago

sed -i -e 's/archive.ubuntu.com\ |security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list

grep -r "archive.ubuntu.com" /etc/apt/sources.list.d/

참고 : https://repogen.simplylinux.ch/generate.php

참고 : https://www.youtube.com/watch?v=ASjtqyyLH-U

Ubuntu Main Repos

deb http://82.archive.ubuntu.com/ubuntu/ bionic main deb-src http://82.archive.ubuntu.com/ubuntu/ bionic main

Ubuntu Update Repos

deb http://82.archive.ubuntu.com/ubuntu/ bionic-updates main deb-src http://82.archive.ubuntu.com/ubuntu/ bionic-updates main

grep -r "archive.ubuntu.com" /etc/apt/

apt-get update

ksh0165 commented 4 years ago

크롤링 참고 url : https://inasie.tistory.com/43

도커 링크 관련

apt-get install -y net-tools apt-get install -y iputils-ping apt-get update

docker ping 확인 ip이용

docker exec -t webmin ping 172.17.x.x (webmin-> ansible)

docker link 상태

[root@localhost ~]# docker exec -t webmin cat /etc/hosts 127.0.0.1 localhost ::1 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters 172.17.0.2 e21ec52b24c6 [root@localhost ~]# docker exec -t ansible cat /etc/hosts 127.0.0.1 localhost ::1 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters 172.17.0.3 7e78ccf80610

link 디스크

[root@localhost ~]# docker exec -t webmin df -h Filesystem Size Used Avail Use% Mounted on overlay 184G 26G 149G 15% / tmpfs 16G 0 16G 0% /dev tmpfs 16G 0 16G 0% /sys/fs/cgroup /dev/md126 184G 26G 149G 15% /etc/hosts shm 64M 0 64M 0% /dev/shm tmpfs 16G 0 16G 0% /proc/acpi tmpfs 16G 0 16G 0% /proc/scsi tmpfs 16G 0 16G 0% /sys/firmware [root@localhost ~]# docker exec -t ansible df -h Filesystem Size Used Avail Use% Mounted on overlay 184G 26G 149G 15% / tmpfs 16G 0 16G 0% /dev tmpfs 16G 0 16G 0% /sys/fs/cgroup /dev/md126 184G 26G 149G 15% /etc/hosts shm 64M 0 64M 0% /dev/shm tmpfs 16G 0 16G 0% /proc/acpi tmpfs 16G 0 16G 0% /proc/scsi tmpfs 16G 0 16G 0% /sys/firmware

docker uuid

[root@localhost ~]# docker inspect -f "{{ .HostsPath }}" webmin /var/lib/docker/containers/e21ec52b24c6703f07a5360d95c5382407b95225c76aa548dd22131b3e702e09/hosts [root@localhost ~]# docker inspect -f "{{ .HostsPath }}" ansible /var/lib/docker/containers/7e78ccf80610cd5efc80ac36af44cf1e6def063d38dc632d0673f4230d00ac7a/hosts

docker container ip 확인

docker exec e21ec52b24c6 ifconfig

ubuntu 22 port open

root@e21ec52b24c6:/# service --status-all [ - ] cron [ - ] dbus [ ? ] hwclock.sh [ - ] procps [ - ] ssh [ - ] ufw [ - ] unattended-upgrades [ + ] webmin root@e21ec52b24c6:/# service ssh start

ssh-keygen 복사

ssh-copy-id -i 172.17.0.3

docker swarm 같은 orchestration 툴을 도입하거나 dynamic DNS 를 구축해 사용해야 한다.

출처: https://bluese05.tistory.com/54 [ㅍㅍㅋㄷ]

ksh0165 commented 4 years ago

apt-get 실패 하면서 lock 관련 메시지 나올경우

rm -rf /var/lib/apt/lists/* -vf

참고 : https://ksy3241blog.wordpress.com/2016/06/17/sudo-apt-get-update-%EC%97%90%EB%9F%AC/

root@e21ec52b24c6:/etc/apt# lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 18.04.2 LTS Release: 18.04 Codename: bionic root@e21ec52b24c6:/etc/apt# ^C root@e21ec52b24c6:/etc/apt# vi sources.list root@e21ec52b24c6:/etc/apt# apt-get clean root@e21ec52b24c6:/etc/apt# apt-get autoclean

wget https://gist.githubusercontent.com/h0bbel/4b28ede18d65c3527b11b12fa36aa8d1/raw/a4ab1c13a92171822215143b1e3b3eb6add7a78d/sources.list

ksh0165 commented 4 years ago

도커 이름 변경

docker rename webmin webminold

필요없는 내용.. docker 인터넷연결이 안되서 밑의 내용을 적어 봄

echo "deb http://ftp.daumkakao.com/ubuntu/ bionic main restricted" >> sources.list

echo $(hostname -I | cut -d\ -f1) $(hostname) | tee -a /etc/hosts

sed -i -re 's/([a-z]{2}.)?archive.ubuntu.com|security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list

ksh0165 commented 4 years ago

docker run -it -p 55:55/tcp -p 10000:10000/tcp --name webmin --dns 8.8.8.8 --name webminold --cap-add=NET_ADMIN --link ansible:ansible docker.io/ubuntu:18.04

docker run -it -p 55:55/tcp -p 10000:10000/tcp --name webmin -v /etc/localtime:/etc/localtime:ro -e TZ=Asia/Seoul --dns 8.8.8.8 --name webminold --cap-add=NET_ADMIN --link ansible:ansible docker.io/ubuntu:18.04

sysctl.conf 파일이 수정하려는데 권한 없다고 함

sysctl -a | wc -l

도커 외부에서 docker 재시작 하기

systemctl restart docker

IPv4 forwarding is disabled. Networking will not work.

도커 외부에서 권한부여하고 설정 변경하면 됨

[root@localhost ~]# docker run --privileged --cap-add=NET_ADMIN docker.io/ubuntu sysctl -w net.ipv4.ip_forward=1 && echo ok net.ipv4.ip_forward = 1 ok

실행중인 프로세스 보기 root@e21ec52b24c6:/etc/systemd# service --status-all

root@e21ec52b24c6:/# service webmin stop Stopping Webmin server in /usr/share/webmin root@e21ec52b24c6:/# service webmin start root@e21ec52b24c6:/#

cat /etc/sysctl.conf

sysctl -a | grep ip_forward

root@a1c71cd39706:/# sysctl net.ipv4.ip_forward net.ipv4.ip_forward = 0

sysctl -p # 반영 echo "net.ipv4.ip_forward=1" >> sysctl.conf

docker 컨테이너 재시작

root@e21ec52b24c6:/# /sbin/sysctl -w net.ipv4.ip_forward=1 sysctl: setting key "net.ipv4.ip_forward": Read-only file system

sysctl -w net.ipv4.ip_forward=1

ksh0165 commented 4 years ago

http://expressjs.com/

도커 확인

cat docker inspect -f "{{ .HostsPath }}" webmin

ksh0165 commented 4 years ago

docker 서비스 재시작으로 문제 해결

ksh0165 commented 4 years ago

dpkg: error processing package ufw (--configure):

apt-get remove ufw

ansible 설치

apt-get -y install software-properties-common apt-get -y install ansible apt-get install -y ansible ansible

ANSIBLE_INVENTORY 환경 변수에 설정 echo "192.168.x.xx" > ~/.ansible/hosts export ANSIBLE_INVENTORY=~/.ansible/hosts ansible 실행시 -i 옵션과 파일 경로 지정 ansible all -m ping -k -i ~/.ansible/hosts

Config 파일 생성 http://docs.ansible.com/ansible/intro_configuration.html ansible 동작을 제어하는 설정 파일은 /etc/ansible/ansible.cfg 이며 ANSIBLE_CONFIG 환경 변수를 통해 설정할 수 있다. export ANSIBLE_CONFIG=~/.ansible/ansible.cfg 정상 설정 여부는 다음과 같이 --version 을 주고 실행하면 된다. 앤서블 정상 접속확인 > 명령어 > ansible all -m ping -k SSH password: 192.168.x.xx | SUCCESS => { "ansible_facts": { "discovered_interpreter_python": "/usr/bin/python" }, "changed": false, "ping": "pong" }

도커안 파일 복사

docker cp /root/HMS.tar e21ec52b24c6:/root

ansible 실행

ansible-playbook install_packages.yml

ksh0165 commented 4 years ago

ubuntu alias

vi .bashrc alias python='/root/HMS_FILE/bin/python3'

ubuntu 시간

date '+%y-%m-%d_%T'

참고 : https://www.cyberciti.biz/faq/linux-unix-formatting-dates-for-display/

개인 적인 명령어 기록

/root/HMS_FILE# source bin/activate ansible-playbook install_packages_root.yml bash HMS_Install.sh (ubuntu용 , yum -> apt-get)

관련파일 HMS_Install.sh activate hms_root.conf install_package_root.yml hosts start_parser.py Parser_root1.py ~/.ssh/authorized_keys hms.sql (HMS_FILE_DIR 밑에 두기 cp /root/hms.sql /root/HMS_FILE/.)

[.] root@e21ec52b24c6:~/.ssh# cat id_rsa.pub >> ~/.ssh/authorized_keys [.] root@e21ec52b24c6:~/.ssh# chmod 700 ~/.ssh/authorized_keys

python 관련 설치가 안될 것임

wget https://centos7.iuscommunity.org/ius-release.rpm apt-get -y install rpm

root@e21ec52b24c6:~/HMS_FILE# rpm -ivh ius-release*.rpm rpm: RPM should not be used directly install RPM packages, use Alien instead! rpm: However assuming you know what you are doing... warning: ius-release.rpm: Header V4 RSA/SHA256 Signature, key ID 4b274df2: NOKEY error: Failed dependencies: epel-release = 7 is needed by ius-release-2-1.el7.ius.noarch

ubuntu에서는 python 설치 생략 하자

apt-get install yum apt autoremove apt-get update apt-get install python3-dev apt-get install -qy python python-dev python-distribute python-pip ipython pip install --upgrade pip apt-get -y install python3-pip

virtualenv --python=python3.6 /root/HMS_FILE 2> /dev/null chown root.hms /root/HMS_FILE

apt-get -y install php apt-get install python-pika

dpkg: dependency problems prevent configuration of php: php depends on php7.2; however: Package php7.2 is not configured yet.

dpkg: error processing package php (--configure): dependency problems - leaving unconfigured Processing triggers for libc-bin (2.27-3ubuntu1) ... Processing triggers for systemd (237-3ubuntu10.24) ... Errors were encountered while processing: php7.2-common php7.2-readline php7.2 php7.2-cli php7.2-json libapache2-mod-php7.2 php7.2-opcache php

apt-get install -y mariadb-server -> docker mariadb 따로 설치하기

apt-get remove php7.2-mysql apt-get remove php7.2-opcache apt-get remove libapache2-mod-php7.2 apt-get remove php7.2-json apt-get remove php7.2-cli apt-get remove php7.2 apt-get remove php7.2-readline apt-get remove php7.2-common

apt-get install python3-venv

참고 : https://sillycat.iteye.com/blog/2418229

ubuntu repo 이용

apt-get install yum*

참고 : https://m.blog.naver.com/PostView.nhn?blogId=just4u78&logNo=220712277067&categoryNo=0&proxyReferer=https%3A%2F%2Fwww.google.com%2F

ksh0165 commented 4 years ago

docker network ls (하려는 목적: link+ network 연결 하려는 것)

docker run -it -p 3308:3306/tcp --name mysql --dns 8.8.8.8 --net kafka-docker_default --net-alias nipa -e MYSQL_ALLOW_EMPTY_PASSWORD=true --cap-add=NET_ADMIN --link webmin --link kafka docker.io/mariadb

docker exec -it mysql /bin/bash mysql -uroot -p -e 'CREATE DATABASE hms;' (패스워드 없음)

mysql 접속 후 파일 실행

source hms.sql;

OS콘솔에서 sql 파일 실행 방법

mysql -uroot -p hms < hms.sql

error: database is uninitialized and password option is not specified

You need to specify one of MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and MYSQL_RANDOM_ROOT_PASSWORD

-e 옵션 붙일것

참고 : https://hub.docker.com/_/mysql/

오류 : 데이터베이스가 초기화되지 않았고 비밀번호 옵션이 지정되지 않았습니다. MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD 및 MYSQL_RANDOM_ROOT_PASSWORD 중 하나를 지정해야합니다.

참고 : https://swiftymind.tistory.com/84

참고 : https://stackoverflow.com/questions/41768157/how-to-link-container-in-docker/41768466

apt-get install -y net-tools apt-get -y install vim apt-get install -y ssh apt-get install dialog apt-utils -y apt install unzip apt install git apt install apache2 apt-get install -y inetutils-ping apt-get install python3-dev libmysqlclient-dev gcc pip install mysqlclient (mysql 붙을 경우, pip 모듈 위치 찾기)

php 패키지 충돌로 설치 보류

(HMS) root@e21ec52b24c6:~# find / -name pika

/usr/lib/python2.7/dist-packages/pika /usr/lib/python3/dist-packages/pika /root/HMS/lib/python3.6/site-packages/pika /root/HMS_FILE/lib/python3.6/site-packages/pika

1번 설치 안)

(HMS) root@e21ec52b24c6:~/HMS_FILE# apt-get -y install httpd (apt-get -y install apache2 2.4.29-1ubuntu4.8) Reading package lists... Done Building dependency tree Reading state information... Done Package httpd is a virtual package provided by: nginx-light 1.14.0-0ubuntu1.3 nginx-full 1.14.0-0ubuntu1.3 nginx-extras 1.14.0-0ubuntu1.3 lighttpd 1.4.45-1ubuntu3.18.04 nginx-core 1.14.0-0ubuntu1.3 apache2 2.4.29-1ubuntu4.8 yaws 2.0.4+dfsg-2 webfs 1.21+ds1-12 tntnet 2.2.1-3build1 mini-httpd 1.23-1.2build1 micro-httpd 20051212-15.1 ebhttpd 1:1.0.dfsg.1-4.3build1 aolserver4-daemon 4.5.1-18.1 aolserver4-core 4.5.1-18.1

You should explicitly select one to install.

설치할 항목을 명시적으로 선택해야 한다.

밑 내용으로 설치 생략

The following packages were automatically installed and are no longer required:

다음 패키지가 자동으로 설치되었으며 더 이상 필요하지 않음: libsodium23 php-common tzdata

php 7.2 의존성 문제가 발생되어 설치해 봄 (버전은 상관 없음)

기존 php7.2관련 패키지 삭제

apt-get purge php7.2-common apt-get purge php7.2-gd apt autoremove apt-get remove "패키지명" apt-get update

docker cp php7.2-gd_7.2.19-0ubuntu0.18.04.1_amd64.deb 618ed967b636:/root apt-get install ./php7.2-gd_7.2.19-0ubuntu0.18.04.1_amd64.deb

apt-get install -y php7.2-common apt-get install -y php7.2 apt-get install -y php-mysql

dpkg: error processing package php7.2-common (--configure):

installed php7.2-common package post-installation script subprocess returned error exit status 10

apt-get purge php7.2-common apt-get purge php7.2-gd apt autoremove apt-get remove "패키지명" apt-get update

php7.2-gd depends on php7.2-common (= 7.2.19-0ubuntu0.18.04.1); however:

apt-get purge php7.2-common apt-get purge php7.2-curl apt-get purge php-curl

ubuntu package list확인

apt list --installed dpkg --get-selections | grep -v deinstall

apt-get install php-common

2번 설치 안)

docker cp php7.2-opcache_7.2.19-0ubuntu0.18.04.1_amd64.deb e21ec52b24c6:/root apt-get install ./php7.2-opcache_7.2.19-0ubuntu0.18.04.1_amd64.deb

Unable to correct problems, you have held broken packages.

apt-get dist-upgrade apt-get install -f

apt-get install ./php7.2-opcache_7.2.19-0ubuntu0.18.04.1_amd64.deb apt-get install -f apt-get install php7.2-common

현 상태 확인

dpkg --configure -a

apt remove --purge php7.2-common apt remove --purge php7.1-common apt remove --purge php7.0-common apt remove --purge php7.3-common apt remove --purge php5.6-common php7.2-common php7.3-common php5.6-common php7.0-common

upgrade 가능 패키지확인

apt list --upgradable

ksh0165 commented 4 years ago

webmin 복원

docker ps -a | grep webmin // 컨테이너가 존재하는지 확인 docker commit webmin webmin1  // webmin 컨테이너를  'webmin1' 이라는 이미지로 저장 docker save webmin1 > webmin.tar // ''  라는 이름으로 백업

docker images

docker load < webmin.tar  // oracle_xx.tar 로 부터 oracle_backup 이미지 복원 docker images | grep webmin // 이미지가 복원되었는지 확인

docker run -it -p 15000:10000/tcp --name web --dns 8.8.8.8 --net kafka-docker_default --net-alias nipa --cap-add=NET_ADMIN --link mysql --link kafka webmin

vi .bashrc alias python='/root/HMS_FILE/bin/python3' alias pip='python -m pip -v' pip install virtualenv virtualenvwrapper pip install --upgrade pip virtualenv --python=python3.6 /root/HMS_FILE 2> /dev/null groupadd hms chown root.hms /root/HMS_FILE pip install -y pika

ksh0165 commented 4 years ago

webmin 네트워크 확인

docker container inspect web

docker network 참고 : https://doitnow-man.tistory.com/183

ksh0165 commented 4 years ago

mariadb client

apt-get install libmariadbclient-dev apt-get install mariadb-client-10.1 apt-get install libssl-dev

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2 "No such file or directory")

root@c302a87a38f8:/usr/bin# mkdir /var/run/mysqld root@c302a87a38f8:/usr/bin# touch /var/run/mysqld/mysqld.sock

ksh0165 commented 4 years ago

목적 : 다른 컨테이너의 mariadb에 또 다른 컨테이너 안에서 접속 시도

ip보기

docker exec -t webmin cat /etc/hosts

포트 상태 확인

root@c7f6a093809a:/usr/bin# netstat -tnlp

원격 mariadb 컨테이너 접속 시도

mysql -h172.20.0.2 -P 3306 -uroot -p

ping

docker exec -t mysql ping 172.20.0.3

ERROR 2003 (HY000): Can't connect to MySQL server on '172.20.0.3' (111 "Connection refused")

클라이언트 mysql 접속 테스트

apt-get install nmap apt-get install netcat nmap 172.20.0.3 -p 3308 -Pn nc -z 172.20.0.3 3308

netcat -v 172.20.0.2 3306 nmap 172.20.0.2 -p 3306 -Pn

도커에서 mariadb에 접속할 경우 (호스트쪽은 3308이지만 , 컨테이너 직접 접속 시에는 3306)

mysql -h mysql -P 3306 -uroot -p

root@c302a87a38f8:/# netcat -v 172.20.0.3 3308 mysql.kafka-docker_default [172.20.0.3] 3308 (?) : Connection refused

포트를 확인해 봐라

참고 url : https://yehongj.tistory.com/37

telnet 접속

apt-get install telnet

telnet 접속 시도

root@c302a87a38f8:/# telnet 172.20.0.3 3308 Trying 172.20.0.3... telnet: Unable to connect to remote host: Connection refused

서버 쪽 확인

netstat -antp |grep mysql

서버 mysql.conf 확인 (bind-address 주석 해제 되어있는지 확인)

cat /etc/mysql/my.cnf | grep bind-address

ipv6

확인

sysctl -a | grep net.ipv6.conf.all.disable_ipv6 sysctl net.ipv6.conf.all.disable_ipv6 docker run --privileged --cap-add=NET_ADMIN docker.io/mariadb sysctl -w net.ipv6.conf.all.forwarding=1 && echo ok

docker restart c7f6a093809a

ksh0165 commented 4 years ago

mariadb 백업

[root@localhost ~]# docker commit mysql hms docker save hmssha256:2d526e74c802751f0f0dc009f8fa5624796a117b2e76ce6ca250e5e831b33a8b [root@localhost ~]# docker save hms > hmsdb.tar

가동 컨테이너 포트 확인

docker container port c302a87a38f8 10000/tcp -> 0.0.0.0:15000

참고 : https://iamreo.tistory.com/entry/Docker-%EB%AA%85%EB%A0%B9%EC%96%B4-%EC%A0%95%EB%A6%AC

ksh0165 commented 4 years ago

apt-get -y install software-properties-common apt-add-repository ppa:ansible/ansible apt-get update apt-get -y install ansible ansible

[WARNING]: Unable to parse /root/my_ansible_hosts as an inventory source

[WARNING]: No inventory was parsed, only implicit localhost is available

[WARNING]: provided hosts list is empty, only localhost is available. Note that the implicit localhost does not match 'all'

root@c302a87a38f8:~# service --status-all [ - ] ssh root@c302a87a38f8:~# service ssh start

/etc/ansible/hosts(기본 설정)

mkdir /etc/ansible/ ANSIBLE_INVENTORY 환경 변수에 설정 echo "192.168.x.xx" > /.ansible/hosts export ANSIBLE_INVENTORY=/.ansible/hosts ansible 실행시 -i 옵션과 파일 경로 지정 ansible all -m ping -k -i ~/.ansible/hosts

Config 파일 생성

http://docs.ansible.com/ansible/intro_configuration.html ansible 동작을 제어하는 설정 파일은 /etc/ansible/ansible.cfg 이며 ANSIBLE_CONFIG 환경 변수를 통해 설정할 수 있다. export ANSIBLE_CONFIG=~/.ansible/ansible.cfg 정상 설정 여부는 다음과 같이 --version 을 주고 실행하면 된다.

앤서블 정상 접속확인 >

명령어 > ansible all -m ping -k SSH password: 192.168.x.xx | SUCCESS => { "ansible_facts": { "discovered_interpreter_python": "/usr/bin/python" }, "changed": false, "ping": "pong" }

ansible 실행

ansible-playbook install_packages.yml

ksh0165 commented 4 years ago

HMS 설치 관련 정리

ansible 환경 구성

mysql 접속 확인 (hms db생성 후 권한 부여)

pip , mysql client 설치

HMS, HMS_FILE 디렉토리 업로드

HMS_FILE/HMS_Install.sh

HMS_FILE/WebUI/api/db.php 수정

HMS_FILE/bin/actviate 실행 (conf위치 변경)

source bin/activate(/root/HMS_FILE 위치에서 실행)

~/HMS_FILE/HMS_Engine/Bin/parser_root1.sh 경로 수정

:~/HMS_FILE/HMS_Engine/Parser/install_packages_root.yml 수정

ansible-playbook install_packages_root.yml

ksh0165 commented 4 years ago

ssh-keygen copy

(HMS) root@c302a87a38f8:~/.ssh# ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.0.00 /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub" /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys root@192.168.x.00's password:

Number of key(s) added: 1

Now try logging into the machine, with: "ssh '192.168.0.00'" and check to make sure that only the key(s) you wanted were added.

(HMS) root@c302a87a38f8:~/.ssh#

ksh0165 commented 4 years ago

python cgi

httpd.conf 수정

https://blog.ayukawa.kr/archives/1342

https://parksk.tistory.com/120

ksh0165 commented 4 years ago

나. tar 명령어 tar czvf hms.gz mymodule

다. xxx 웹페이지에서 모듈 업로드 xxx > xxx configration > xxx modules > From uploaded file 선택하고 클립모양을 눌러 파일 업로드 > install module