spring cloud微服務pig的安裝部署


環境說明

中間件 版本 安裝方式
JDK 1.8 rpm安裝
Mysql 5.7 二進制安裝
redis 3.2+ yum安裝
nodejs 8.0+ yum安裝
maven 3.6.0 二進制安裝

注意內存給4G,因為java比較消耗內存,給小了可能pig啟動失敗沒有端口

 

下載pig項目

新版pig沒有/opt/pig/pig-config/src/main/resources/config/application-dev.yml 文件

#下載新版pig
[root@k8s-master ~]# cd /opt
[root@k8s-master opt]# wget https://gitee.com/log4j/pig/repository/archive/v2.4.4?format=tar.gz

 注: 下載的是pig穩定版,並且有config配置文件。 碼雲下載地址:https://gitee.com/log4j/pig/releases

配置本地hosts解析

[root@k8s-master opt]# vim /etc/hosts
127.0.0.1   pig-mysql
127.0.0.1   pig-redis
127.0.0.1   pig-gateway
127.0.0.1   pig-eureka

數據庫安裝與初始化

下載數據庫

[root@oldboy opt]# wget http://mirror.sohu.com/mysql/MySQL-5.7/mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz
--2020-01-21 10:24:58--  http://mirror.sohu.com/mysql/MySQL-5.7/mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz
Resolving mirror.sohu.com (mirror.sohu.com)... 123.125.123.141
Connecting to mirror.sohu.com (mirror.sohu.com)|123.125.123.141|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 644399365 (615M) [application/octet-stream]
Saving to: ‘mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz’

100%[===============================================================>] 644,399,365  515KB/s   in 20m 29s

2020-01-21 10:45:28 (512 KB/s) - ‘mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz’ saved [644399365/644399365]

安裝數據庫

#解壓並移動到/app/mysql目錄
[root@oldboy opt]# mkdir -p /app/
[root@oldboy opt]# tar xf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz 
[root@oldboy opt]# mv mysql-5.7.23-linux-glibc2.12-x86_64 /app/mysql
[root@oldboy opt]# ls -l /app/mysql/
total 36
drwxr-xr-x  2 root root   4096 Jul 12 07:19 bin
-rw-r--r--  1 7161 31415 17987 Jun  8  2018 COPYING
drwxr-xr-x  2 root root     55 Jul 12 07:19 docs
drwxr-xr-x  3 root root   4096 Jul 12 07:19 include
drwxr-xr-x  5 root root    230 Jul 12 07:19 lib
drwxr-xr-x  4 root root     30 Jul 12 07:19 man
-rw-r--r--  1 7161 31415  2478 Jun  8  2018 README
drwxr-xr-x 28 root root   4096 Jul 12 07:19 share
drwxr-xr-x  2 root root     90 Jul 12 07:19 support-files
#修改環境變量:
[root@oldboy opt]# vim /etc/profile
export PATH=/app/mysql/bin:$PATH
[root@oldboy opt]# source /etc/profile
#建立mysql用戶和組
[root@oldboy opt]# useradd mysql
#創建相關目錄並修改權限
[root@oldboy opt]# mkdir /data/mysql -p 
[root@oldboy opt]# chown -R mysql.mysql /app/*
[root@oldboy opt]# chown -R mysql.mysql /data/*
#安裝依賴包
[root@oldboy opt]# yum install -y libaio
#初始化數據
[root@oldboy opt]# mysqld --initialize  --user=mysql --basedir=/app/mysql --datadir=/data/mysql
#非常重要,注意查看臨時隨機密碼
2020-02-04T11:31:13.715638Z 1 [Note] A temporary password is generated for root@localhost: 2S8hslot=7b3

 

修改mysql配置文件

[root@k8s-master mysql]# vim /etc/my.cnf
[mysqld]
user=mysql
basedir=/app/mysql
datadir=/data/mysql
server_id=6
port=3306
socket=/tmp/mysql.sock
[mysql]
socket=/tmp/mysql.sock

啟動mysql

[root@k8s-master mysql]# cd /app/mysql/support-files/
[root@k8s-master support-files]# cp mysql.server /etc/init.d/mysqld
[root@k8s-master support-files]# /etc/init.d/mysqld start
Starting MySQL.Logging to '/data/mysql/k8s-master.err'.
 SUCCESS! 

創建pig數據庫

##用到上面創建的隨機密碼
[root@k8s-master opt]# mysqladmin -uroot -p'XMt9s>91gxaC' password root
[root@k8s-master opt]# mysql -uroot -proot
mysql> create database pig default character set utf8mb4;
mysql> exit
Bye

初始化pig數據庫

log4j-pig-2.3.0.tar.gz解壓到 /opt

 tar xf log4j-pig-2.3.0.tar.gz  -C /opt/  
[root@k8s-master opt]# cd /opt/pig/db
[root@k8s-master db]# mysql -uroot -proot pig < pig.sql 

安裝並啟動redis

[root@k8s-master db]# yum install epel-release.noarch -y
[root@k8s-master db]# yum install redis -y
[root@k8s-master db]# systemctl start redis
[root@k8s-master db]# systemctl enable redis

pig配置文件修改

redis 密碼配置

vi /opt/pig/pig-config/src/main/resources/config/application-dev.yml
# redis 相關,無密碼為空即可,不要修改成IP,修改hosts
spring:
  redis:
    password:
#可以不設密碼,簡單。

數據庫密碼配置

如果mysql的root用戶密碼已經是root,就不用修改剛才的文件

vi  /opt/pig/pig-config/src/main/resources/config/pig-auth-dev.yml
vi  /opt/pig/pig-config/src/main/resources/config/pig-upms-dev.yml
vi  /opt/pig/pig-config/src/main/resources/config/pig-codegen-dev.yml

# 數據源,只需要修改密碼即可,不要修改成IP,修改hosts
spring:
  datasource:
    username: root
    password: root

安裝maven編譯pig

apache-maven下載地址http://mirrors.hust.edu.cn/apache/maven/maven-3/3.6.3/binaries/

jdk下載地址https://mkyong.com/java/how-to-install-oracle-jdk-8-on-centos/

准備好jdk和maven的包

apache-maven網盤下載:鏈接:https://pan.baidu.com/s/1DACOWr8qcOffKtE5swyb7w   提取碼:f3xt

jdk-8u102網盤下載:鏈接:https://pan.baidu.com/s/136yWY4iWbucq6i6UeOFHiA      提取碼:njof

[root@k8s~]# ls
anaconda-ks.cfg  apache-maven-3.6.0-bin.tar.gz  jdk-8u102-linux-x64.rpm

安裝jdk

[root@oldboy ~]# rpm -ivh jdk-8u102-linux-x64.rpm 
Preparing...                          ################################# [100%]
Updating / installing...
   1:jdk1.8.0_102-2000:1.8.0_102-fcs  ################################# [100%]
Unpacking JAR files...
    tools.jar...
    plugin.jar...
    javaws.jar...
    deploy.jar...
    rt.jar...
    jsse.jar...
    charsets.jar...
    localedata.jar...

安裝maven

[root@oldboy ~]# tar xf apache-maven-3.6.0-bin.tar.gz -C /usr/local/
[root@oldboy ~]# ln -s /usr/local/apache-maven-3.6.0 /usr/local/maven
[root@oldboy ~]# vim /etc/profile
#文件結尾添加兩行
export M2_HOME=/usr/local/maven
export PATH=${M2_HOME}/bin:$PATH
​
[root@oldboy ~]# source /etc/profile
[root@oldboy ~]# mvn -v
Apache Maven 3.6.0 (97c98ec64a1fdfee7767ce5ffb20918da4f719f3; 2018-10-25T02:41:47+08:00)
Maven home: /usr/local/maven
Java version: 1.8.0_102, vendor: Oracle Corporation, runtime: /usr/java/jdk1.8.0_102/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-693.el7.x86_64", arch: "amd64", family: "unix"

編譯pig項目

[root@oldboy ~]# cd /opt/pig/
[root@oldboy pig]# ls
db                  LICENSE   pig-common  pig-eureka   pig-upms    pom.xml
docker-compose.yml  pig-auth  pig-config  pig-gateway  pig-visual  README.md
[root@oldboy pig]# mvn clean package

運行pig項目

按順序啟動pig各個服務組件

[root@k8s-master pig]# find /opt/pig/ -type f -name "*.jar"|xargs mv -t /opt/pig/
[root@k8s-master pig]# java -jar pig-eureka.jar &>/dev/null &
[root@k8s-master pig]# java -jar pig-config.jar &>/dev/null &
[root@k8s-master pig]# java -jar pig-gateway.jar &>/dev/null &
[root@k8s-master pig]# java -jar pig-auth.jar &>/dev/null &
[root@k8s-master pig]# java -jar pig-upms-biz.jar &>/dev/null &
##等一會全部啟動后
[root@k8s-master ~]# netstat -lntup
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 127.0.0.1:6379          0.0.0.0:*               LISTEN      8872/redis-server 1 
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      8873/sshd           
tcp6       0      0 :::3306                 :::*                    LISTEN      10601/mysqld        
tcp6       0      0 :::9999                 :::*                    LISTEN      10951/java          
tcp6       0      0 :::22                   :::*                    LISTEN      8873/sshd           
tcp6       0      0 :::3000                 :::*                    LISTEN      10858/java          
tcp6       0      0 :::8888                 :::*                    LISTEN      10785/java          
tcp6       0      0 :::8761                 :::*                    LISTEN      10717/java          
tcp6       0      0 :::4000                 :::*                    LISTEN      10896/java          
udp        0      0 127.0.0.1:323           0.0.0.0:*                           7298/chronyd        
udp6       0      0 ::1:323                 :::*                                7298/chronyd

遇到的坑服務啟動完再去啟動第二個服務,第一個就exit退出,執行一個命令就退出,最后使用了一個新的虛擬機 pig-gateway 然后重啟一次,一共有7個tcp6啟動

驗證

訪問eureka http://<你的ip>:8761

 

部署pig前端

拉取前端代碼

[root@oldboy opt]# cd /opt/
[root@oldboy opt]# wget https://gitee.com/log4j/pig-ui/repository/archive/v2.4.4?format=tar.gz

注: 下載的是pig-ui穩定版 碼雲地址:https://gitee.com/log4j/pig-ui/releases

#配置nodejs yum源
[root@oldboy pig-ui]# curl --silent --location https://rpm.nodesource.com/setup_10.x | sudo bash -
內容略
#安裝
[root@oldboy pig-ui]# yum install -y nodejs

安裝依賴

#更換npm源為淘寶
[root@oldboy pig-ui]# npm config set registry https://registry.npm.taobao.org
#安裝依賴
[root@oldboy pig-ui]# npm install
npm WARN deprecated circular-json@0.3.3: CircularJSON is in maintenance only, flatted is its successor.

注:安裝依賴是需要好的網絡,否則容易失敗。

啟動pig-ui

[root@oldboy pig-ui]# npm run dev
​
> pig-ui@2.3.1 dev /opt/pig-ui
> vue-cli-service serve
#輸出略
​
 DONE  Compiled successfully in 20926ms                                                             10:38:31 AM         
  App running at:
  - Local:   http://localhost:8080 
  - Network: http://192.168.100.100:8080
​
  Note that the development build is not optimized.
  To create a production build, run npm run build.

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM