官方GitHub倉庫:https://github.com/Tencent/CodeAnalysis
騰訊云代碼分析(Tencent Cloud Code Analysis,簡稱TCA,內部曾用研發代號 CodeDog )是集眾多分析工具的云原生、分布式、高性能的代碼綜合分析跟蹤平臺,包含服務端、Web端和客戶端三個組件,已集成一批自研工具,同時也支持動態集成業界各編程語言的分析工具。
官方支持2種部署方式
今天我們用源代碼方式進行部署服務端,根據文檔你一定能成功部署。因為其中的坑已經替搭建踩過了。
官方部署鏈接為: 部署 Server 和 Web
我碰到的問題是mysql的問題以及web端部署的問題
該部署文檔沒什么問題,按照命令部署就行
安裝好后的路徑:/usr/local/python3/bin/
該部署文檔也沒有問題,一次性安裝通過,如果本地有mysql切記需要刪除,請正確使用指定版本 5.7.38。
我第一次安裝錯了數據庫版本導致后面程序無法讀取mysql
按照命令運行就行沒什么問題
該部署需要注意,官網有些需要修復的地方 已經標記紅色
安裝好的路徑:/usr/local/nginx
nginx的pid需要添加 標記的2處地方
根據上面的編譯安裝地址為:/usr/local/nginx
需要添加標記的1處地方 ,這樣systemctl top nginx 才能正常關閉
根據上面的編譯安裝地址為:/usr/lib/systemd/system/nginx.service
命令為:ExecStop=/usr/local/bin/nginx -s quit
我的下載壓縮包地址 /opt
參考文檔地址:https://tencent.github.io/CodeAnalysis/zh/quickStarted/deploySever.html#%E9%80%9A%E8%BF%87%E6%BA%90%E4%BB%A3%E7%A0%81
/opt/CodeAnalysis/server/scripts/config.sh
/opt/CodeAnalysis/server/scripts/init_config.sh
ln -s /usr/local/python3/bin/celery /usr/local/bin/celery
ln -s /usr/local/python3/bin/gunicorn /usr/local/bin/celery
在目錄 /opt/CodeAnalysis/server 下面執行下面的命令
bash ./scripts/deploy.sh init
export PATH=/usr/local/bin:$PATH
命令執行目錄: /opt/CodeAnalysis/server
# 啟動服務
bash ./scripts/deploy.sh start
# 停止服務
bash ./scripts/deploy.sh stop
默認目錄地址: /opt/CodeAnalysis/web/tca-deploy-source
參考連接:https://tencent.github.io/CodeAnalysis/zh/quickStarted/deploySever.html 部署web
修改為自己nginx實際地址
標紅2處
命令執行目錄 /opt/CodeAnalysis/web/tca-deploy-source
bash ./scripts/deploy.sh init -d
訪問80端口即可打開CodeAnalysis界面
TCA 平臺初始登錄賬號是CodeDog,密碼是admin
進入下載安裝包存放目錄
cd /usr/local/
下載安裝包
wget https://npm.taobao.org/mirrors/node/v11.15.0/node-v11.15.0-linux-x64.tar.gz
解壓安裝包
tar -zxvf node-v11.15.0-linux-x64.tar.gz
重命名為node
mv node-v11.15.0-linux-x64 node
配置環境變量
vi /etc/profile
export NODE_HOME=/usr/local/node
export PATH=$NODE_HOME/bin:$PATH
使環境變量生效
source /etc/profile
驗證是否安裝配置成功
node -v
npm install -g cnpm --registry=https://registry.npm.taobao.org
1、 使用WinSCP工具上傳,PC后臺管理前端工程到服務器自定義的目錄下
如:/usr/local/project/test-vue
2、進入工程目錄下,執行命令
npm install(第一次 需要執行)
如果npm install 錯誤 安裝 chromedriver 失敗的解決辦法
首先經過npm install后,會生成node_modules,先清除它
rm -rf node_modules
可以使用下面的命令安裝:
npm install chromedriver --chromedriver_cdnurl=http://cdn.npm.taobao.org/dist/chromedriver
如果是root用戶進行安裝則使用下面的命令安裝:
npm install chromedriver --chromedriver_cdnurl=http://cdn.npm.taobao.org/dist/chromedriver --unsafe-perm
--unsafe-perm 參數說明:
npm 出于安全考慮不支持以 root 用戶運行,即使你用 root 用戶身份運行了,npm 會自動轉成一個叫 nobody 的用戶來運行,而這個用戶幾乎沒有任何權限。這樣的話如果你腳本里有一些需要權限的操作,比如寫文件(尤其是寫 /root/.node-gyp),就會崩掉了。
為了避免這種情況,要么按照 npm 的規矩來,專門建一個用于運行 npm 的高權限用戶;要么加 --unsafe-perm 參數,這樣就不會切換到 nobody 上,運行時是哪個用戶就是哪個用戶,即使是 root。
3、編譯工程,執行命令
npm run build
4、在工程的目錄下會生成dist目錄,目錄中會config、2009231158(隨機生成)、index.html
拷貝到/usr/local/project/adminvue 目錄下。
1、項目打包
使用hbuilder導入用戶前端項目,hbuilder的右上方 【文件】【導入】選擇【本地導入】
2、這里比如:打包H5網站,在hubilder中選擇網站-h5手機版發行
3、在hbuilder控制臺查看打包進度,打包完成后點擊進入目錄
4、H5網站添加文件夾中的文件上傳到服務器對應目錄下
如:/usr/local/project/uservue
安裝nginx略過,不是重新介紹,主要介紹如果結合nginx配置運行,配置參考如下:
1、添加用戶前端訪問配置
server {
listen 80;
server_name user.你的域名.com;
root /usr/local/project/uservue;
index index.html;
# 服務器端api接口
location ^~/api{
proxy_pass http://localhost:8080/api;
}
# 圖片代理
location ^~/img{
proxy_pass https://xianyunb.oss-cn-hangzhou.aliyuncs.com/;
}
# 用戶前端訪問對應目錄
location / {
try_files $uri $uri/ /index.html last;
add_header Access-Control-Allow-Origin *;
alias /usr/local/project/uservue/$1;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|html|txt|p12)$ {
expires 30d;
error_log off;
access_log /dev/null;
}
}
2、添加管理后臺前端訪問配置
server {
listen 80;
server_name admin.你的域名.com;
root /usr/local/project/uservue;
index index.html;
# 服務器端api接口
location ^~/api{
proxy_pass http://localhost:8080/api;
}
# 圖片代理
location ^~/img{
proxy_pass https://xianyunb.oss-cn-hangzhou.aliyuncs.com/;
}
# 管理后臺前端訪問對應目錄
location / {
try_files $uri $uri/ /index.html last;
add_header Access-Control-Allow-Origin *;
alias /usr/local/project/adminvue/$1;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|html|txt|p12)$ {
expires 30d;
error_log off;
access_log /dev/null;
}
}
3、重啟nginx
/usr/local/nginx/sbin/nginx -s reload
到此部署完成,上面主要介紹vue前端生產環境的部署,服務端部署和域名綁定配置不作介紹。
在前面的文章中,Fayson介紹了《如何獲得Cloudera的Flink Parcel包》和《0733-7.0.3-如何在Redhat7.6中安裝CDP DC7.0.3》,基于前面的集群環境,本篇文章Fayson主要介紹如何在CDP DC7.0.3集群中使用Parcel的方式安裝Flink1.9.1。
1.如何在CDP DC集群安裝FLink1.9.1
2.運行一個Flink示例驗證
1.操作系統Redhat7.2
2.CDP DC7.0.3
3.使用root用戶操作
1.準備Flink1.9.1的csd文件,并放置到Cloudera Manager Server服務器的/opt/cloudera/csd目錄下,然后重啟Cloudera Manager Server服務
[root@cdh1 csd]# pwd
/opt/cloudera/csd
[root@cdh1 csd]# ll
total 40
-rw-r--r-- 1 root root 39506 Feb 11 16:59 FLINK-1.9.1-csa1.1.0.0-cdh7.0.3.0-79-1753674.jar
[root@cdh1 csd]#
2.下載Flink1.9.1的Parcel并部署到httpd服務的/var/www/html/flink1.9.1目錄下
[root@cdh4 flink1.9.1]# ll
total 135664
-rw-r--r-- 1 root root 138867394 Feb 11 14:44 FLINK-1.9.1-csa1.1.0.0-cdh7.0.3.0-79-1753674-el7.parcel
-rw-r--r-- 1 root root 41 Feb 11 14:43 FLINK-1.9.1-csa1.1.0.0-cdh7.0.3.0-79-1753674-el7.parcel.sha
-rw-r--r-- 1 root root 1065 Feb 11 14:43 manifest.json
[root@cdh4 flink1.9.1]#
3.CM重啟完成以后,添加服務頁面可以看到有Flink服務。
4.登錄CM,在左側菜單欄點擊“Parcel”按鈕,進入Parcles管理界面進行配置
進入Parcles管理界面后如下界面:
點擊“Parcel Repositories & Network Settings”菜單配置Flink的本地parcel庫
完成配置后,點擊“Save & Verify Configuration”,關閉配置配置界面可以看到Flink的信息
分別進行 “下載、分配、激活”操作,完成后顯示如下:
5.進入CM主頁點擊“添加服務”。
6.選擇添加Flink服務,點擊繼續。
7.選擇Flink History Server以及Gateway節點,點擊繼續
8.點擊繼續
9.等待Flink History Server啟動成功,完成后點擊繼續
10.安裝完成,點擊完成回到CM主頁
發現Flink的狀態為灰色,CMS有重啟提示,按照提示重啟CMS服務,重啟過程略。重啟完成后顯示Flink服務正常。
1.執行Flink自帶的example的wordcount例子。
hadoop fs -mkdir -p wordcount/input
hadoop fs -mkdir -p wordcount/output
hadoop fs -put dfclear wordcount/input
flink run -m yarn-cluster -yn 3 -yjm 1024 -ytm 1024 /opt/cloudera/parcels/FLINK/lib/flink/examples/streaming/WordCount.jar --input hdfs:///user/root/wordcount/input/dfclear --output hdfs:///user/root/wordcount/output
2.查看輸出結果。
3.在YARN和Flink的界面上分別都能看到這個任務。
1.在CDP DC上基于Parcel的方式安裝Flink1.9.1與CDH5和CDH6集群下安裝Kafka、Spark等服務方式一致。
2.對于CDP DC中不自帶的服務需要將csd添加的CM節點的/opt/cloudera/csd目錄下,并重啟cloudera-scm-server服務。
3.Flink是依賴Yarn、HDFS、Zookeeper服務運行,所以在CDP DC集群中至少要確保這個幾個服務都已安裝。
*請認真填寫需求信息,我們會在24小時內與您取得聯系。