系統基礎工具、服務javascript
系統配置優化前端
系統部署手冊java
系統使用語言以及版本node
系統使用擴展庫版本python
系統使用中間件版本mysql
系統維護手冊nginx
每個業務系統,都有一個獨立的業務帳號,用來管理業務的代碼、腳本、以及服務的上線與更新web
每個業務系統,都有惟一的運維人員使用業務帳號,對系統進行操做管理sql
目前由產品團隊的技術人員負責,待運維體系創建後,移交由運維人員負責
數據庫
業務系統使用到數據庫服務的,請參照數據庫相關規範【link】
系統代碼要求部署在非系統分區
代碼目錄結構說明
# 代碼目錄結構 # /cnicg/[group]/[project]/ # web/ # www/ # script/ # conf.d/ # other/
cnicg : 單位項目統一目錄,位於非系統分區,經過軟鏈接(ln -s /path /cnicg)到cnicg目錄
其目錄權限爲: 755 cnicg:cnicg
group : 小組名稱,不一樣的業務小組命名不一樣
其目錄權限爲: 700 group:group
project : 小組業務下的項目目錄
web: 項目下的後端代碼目錄
www: 項目下的前端代碼目錄
script: 項目下的工具腳本
conf.d : 項目配置文檔,或者位於web迷路下
other: 其餘,待補充
日誌目錄要求位於非系統目錄
日誌結構說明
# 日誌目錄說明 # #1. 業務系統日誌 # /var/log/cnicg/[group]/[project]/port/ # /service.log # /error.log # #2. nginx日誌 # /var/log/cnicg/[group]/[project]/nginx/ # /access.log # /error.log # #3. other日誌 # ### 3.1 mysql # ### 3.2 mongo # ### 3.3 rabbitmq
nginx版本 (v1.10.0: 支持stream功能)
openssl 版本
nginx配置使用nginx默認的配置文件管理策略
運維人員根據需求,能夠修改/etc/nginx/nginx.conf 配置文檔
通用基本配置
修改參數時,要明白知道修改的意義,以及帶來的影響
各項目配置文件位於代碼目錄中,並經過軟鏈接,鏈接到/etc/nginx/conf.d 中,好比ln -s /cnicg/iot/示例項目/conf.d/示例項目.conf
nginx相關配置
proxy.conf
mime.types
conf.d/*.conf
favicon.ico
服務圖標,對於web服務,默認要求明確配置
robots.txt
默認要求明確配置
資訊類服務,容許特定爬蟲爬取特定目錄
業務類服務,禁止全部爬蟲爬取
log
日誌格式
日誌目錄 nginx 模塊
# sudo adduser --system --no-create-home --disabled-password --group web user nginx nginx; # 根據業務需求開啓不一樣的工做進程 worker_processes 4; worker_rlimit_nofile 20480; error_log /var/log/nginx/error.log; pid /var/run/nginx.pid; events { use epoll; worker_connections 20480; } http { include /etc/nginx/mime.types; # custom define proxy configuration include /etc/nginx/proxy.conf; default_type application/octet-stream; # 日誌格式 log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; client_header_timeout 3m; client_body_timeout 3m; send_timeout 3m; client_header_buffer_size 1k; large_client_header_buffers 4 4k; gzip on; gzip_disable "msie6"; gzip_min_length 1100; gzip_buffers 4 8k; gzip_types text/plain text/ccs application/json application/x-javascript text/xml application/xml text/javascript; output_buffers 1 32k; postpone_output 1460; sendfile on; tcp_nopush on; tcp_nodelay on; send_lowat 12000; keepalive_timeout 75; include /etc/nginx/conf.d/*.conf; }
proxy_redirect off; proxy_set_header Host $host; proxy_set_header Port $server_port; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; client_max_body_size 10m; client_body_buffer_size 128k; proxy_connect_timeout 90; proxy_send_timeout 90; proxy_read_timeout 90; proxy_buffers 32 4k; proxy_buffer_size 4k; proxy_busy_buffers_size 64k; proxy_temp_file_write_size 64k;
### BEGIN FILE ### # # allow baidu bing google spider User-agent: Baiduspider Disallow: /action/ Disallow: /admin/ Disallow: /my/ Disallow: /code/download_src Disallow: /widgets/ User-agent: Googlebot Disallow: /action/ Disallow: /admin/ Disallow: /my/ Disallow: /code/download_src Disallow: /widgets/ User-agent: MSNBot Disallow: /action/ Disallow: /admin/ Disallow: /my/ Disallow: /code/download_src Disallow: /widgets/ # robots file disallow any robots access this site User-Agent: * Disallow: / ### END FILE ###