智慧校園解決方案安裝集成指導(dǎo)手冊(cè)_第1頁(yè)
智慧校園解決方案安裝集成指導(dǎo)手冊(cè)_第2頁(yè)
智慧校園解決方案安裝集成指導(dǎo)手冊(cè)_第3頁(yè)
智慧校園解決方案安裝集成指導(dǎo)手冊(cè)_第4頁(yè)
智慧校園解決方案安裝集成指導(dǎo)手冊(cè)_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

智慧校園解決方案安裝集成指導(dǎo)手冊(cè)中國(guó)移動(dòng)成研院

目錄1 引言 31.1 編寫目的 31.2 參考資料 32 硬件環(huán)境部署 32.1 硬件拓?fù)鋱D 32.2 硬件配置說(shuō)明 43 軟件環(huán)境部署 53.1 軟件清單 53.2 docker服務(wù)鏡像版本 53.3 軟件環(huán)境部署 53.4 操作系統(tǒng)安裝 53.5 數(shù)據(jù)庫(kù)安裝 53.5.1 數(shù)據(jù)庫(kù)的安裝 53.5.2 下載 63.5.3 新增用戶及組 63.5.4 創(chuàng)建數(shù)據(jù)庫(kù)文件存放的目錄 63.5.5 編譯安裝 63.5.6 設(shè)置用戶環(huán)境變量及初始化數(shù)據(jù)庫(kù) 63.5.7 修改默認(rèn)配置文件 73.5.8 啟動(dòng)和停止postgresql 73.5.9 Postgresql主庫(kù)設(shè)置 73.5.10 Postgresql從庫(kù)的設(shè)置 73.5.11 啟動(dòng)從庫(kù)后執(zhí)行檢測(cè) 83.6 基礎(chǔ)設(shè)置及nginx、nfs、docker服務(wù)的安裝 83.6.1 基礎(chǔ)設(shè)置及nginx、nfs、docker服務(wù)的安裝 83.6.2 redis安裝 143.6.3 Zookeeper服務(wù)的部署 163.7 支撐軟件安裝 173.7.1 phantomjs安裝 173.7.2 ffmpeg安裝 174 系統(tǒng)初始化與確認(rèn) 174.1 系統(tǒng)初始化 174.2 系統(tǒng)部署確認(rèn) 185 故障應(yīng)急處理 185.1 web服務(wù)器 185.2 應(yīng)用服務(wù)器 185.3 數(shù)據(jù)庫(kù)服務(wù)器 18引言編寫目的本文檔的編寫目的在于為智慧校園平臺(tái)管理員提供系統(tǒng)安裝,部署幫助,以便用戶可獨(dú)立完成系統(tǒng)的安裝和部署,并使系統(tǒng)能夠正常運(yùn)行。參考資料硬件環(huán)境部署硬件拓?fù)鋱D硬件配置說(shuō)明主機(jī)名稱作用內(nèi)網(wǎng)IP公網(wǎng)CPU內(nèi)存硬盤存儲(chǔ)VxiaoSrv202Nginx負(fù)載均衡028核16G20+100GVxiaoSrv103nginx主機(jī)038核16G20+100GVxiaoSrv104nginx主機(jī)048核16G20+100GVxiaoSrv105nginx主機(jī)058核16G20+100GVxiaoSrv162nfs主機(jī)10.111.1000.168核16G20+100G2TVxiaoSrv164App主機(jī)648核16G20+100GVxiaoSrv165App主機(jī)658核16G20+100GVxiaoSrv166App主機(jī)668核16G20+100GCacheSrv172zaookeeper728核16G20+100GVxiaoSrv173redis738核16G20+100GVxiaoSrv174redis748核16G20+100GVxiaoSrv178redis788核16G20+100GVxiaoSrv168Mqtt主機(jī)688核16G20+100GVxiaoSrv169Mqtt主機(jī)698核16G20+100GVxiaoSrv119Postgresqlmaster198核32G20+100GVxiaoSrv122Postgresqlslave228核32G20+100GVxiaoSrv244Postgresqlslave448核16G20+100GVxiaoSrv245Postgresql備用庫(kù)458核16G20+100G軟件環(huán)境部署軟件清單apache-maven-3.5.4-bin.tar.gzjdk-8u212-linux-x64.tar.gznginx-1.14.2.tar.gzdocker-ce-18.09.7-3.el7.x86_64.rpmdocker服務(wù)鏡像版本redis:redis:4.0zookeeper:zookeeper:3.4軟件環(huán)境部署web服務(wù)器:nginx應(yīng)用服務(wù)器:redis、tomcat數(shù)據(jù)庫(kù)服務(wù)器:postgresql操作系統(tǒng)安裝移動(dòng)云主機(jī)已經(jīng)預(yù)裝好CentOS7.464位操作系統(tǒng)。數(shù)據(jù)庫(kù)安裝數(shù)據(jù)庫(kù)的安裝檢查系統(tǒng)是否有安裝舊版本postgresql:#rpm-qa|greppostgres或#rpm-qal|greppostgres 若已經(jīng)安裝,則使用rpm-e命令卸載下載#cd/app/software#wget/pub/source/v10.8/postgresql-10.9.tar.gz 新增用戶及組#groupaddpostgres#useradd-gpostgrespostgres#passwdpostgres /*修改用戶密碼*/ 創(chuàng)建數(shù)據(jù)庫(kù)文件存放的目錄創(chuàng)建數(shù)據(jù)目錄:`#mkdir-p/app/pgdata/data`更改屬主及屬組:`#chown-Rpostgres:postgres/app/pgdata` 編譯安裝 安裝依賴:#yuminstallzlib-devel–y編譯:#tarxfpostgresql-10.9.tar.gz#cdpostgresql-10.8#./configure--prefix=/app/pgdata/data--without-readline#make&&makeinstall 設(shè)置用戶環(huán)境變量及初始化數(shù)據(jù)庫(kù) 設(shè)置環(huán)境變量,在postgres用戶下的.bash_profile中添加以下變量:exportPG_HOME=/usr/pgsql-10PATH=$PATH:$HOME/.local/bin:$HOME/bin:$PG_HOME/binexportPATH 初始化數(shù)據(jù)庫(kù):#su-postgres#initdb-D/app/pgdata/data-EUTF-8--locale=zh_CN.UTF-8 修改默認(rèn)配置文件 進(jìn)入pgsql的數(shù)據(jù)庫(kù)安裝目錄下打開(kāi)客戶端認(rèn)證配置pg_hba.conf文件添加需要連接的地址方法需設(shè)置為trust,則該IP可通過(guò)遠(yuǎn)程連接。打開(kāi)`postgresql.conf`可修改默認(rèn)端口及其他配置 啟動(dòng)和停止postgresql 啟動(dòng):$pg_ctl-D/app/data/pgsql/datastart關(guān)閉:$pg_ctl-D/app/data/pgsql/datastop重載:$pg_ctl-D/app/data/pgsql/datareloadPostgresql主庫(kù)設(shè)置進(jìn)入database1主庫(kù),新增用于主從復(fù)制的用戶createrolepostgrereploginreplicationencryptedpassword'reppasswd',在database1修改數(shù)據(jù)庫(kù)的pg_hba.conf文件,新增一下配置:hostreplicationrepuser/0md5hostallall/0md5Postgresql從庫(kù)的設(shè)置1、復(fù)制主庫(kù)相關(guān)文件$rm–fr/app/pgdata/data/*$pg_basebackup–h19–Upostgrerep–D/app/pgdata/data–P$cp/usr/pgsql-10/share/postgresql/recovery.conf.sample/app/pgdata/data/recovery.conf2、修改recovery.conf文件standby_mode=onprimary_conninfo='host=19port=5544user=repuserpassword='reppasswd'trigger_file='/app/data/pgsql/data/trigger.kenyon'recovery_target_timeline='latest'3、修改從庫(kù)配置文件postgresql.confwal_level=hot_standbymax_connections=1000hot_standby=onmax_standby_streaming_delay=30swal_receiver_status_interval=10shot_standby_feedback=on啟動(dòng)從庫(kù)后執(zhí)行檢測(cè) 進(jìn)入數(shù)據(jù)庫(kù)執(zhí)行以下命令: postgres=#selectclient_addr,sync_statefrompg_stat_replication;基礎(chǔ)設(shè)置及nginx、nfs、docker服務(wù)的安裝基礎(chǔ)設(shè)置及nginx、nfs、docker服務(wù)的安裝基礎(chǔ)設(shè)置及nginx、nfs、docker服務(wù)主要采用了腳本安裝,提前將腳本分發(fā)到每臺(tái)服務(wù)器上去執(zhí)行,主要部署的內(nèi)容有:系統(tǒng)基本依賴包、普通用戶的建立、常用目錄的建立、云磁盤的掛載、系統(tǒng)內(nèi)核的升級(jí)、docker服務(wù)的安裝、nfs的安裝、nginx的安裝、openssh的升級(jí)。腳本內(nèi)容:#!/bin/bash#defineconstantvxiao_passwd=''nginx_version='nginx-1.14.2.tar.gz'nginx_user='www'appsrv_list=''websrv_list=''dbsrv_list=''mrgsrv_list=''nfssrv_list=''cachesrv_list=''nginxsrv_list=''app_bin_dir=''app_package_dir=''localhost_ip=$(ipaddrshoweth0|grep'inet'|awk-F'[/]''{print$6}')#installdepsfunctiontools(){ yuminstallvimbash-completionlvm2expectyum-utilsdevice-mapper-persistent-datalrzsznet-toolsdstat\ gccgcc-c++autoconfautomakemakepcrepcre-developenssl-develwgetnfs-utils-y yummakecachefast}#createnomarluserfunctioncreateuser(){ useradd-u1000vxiao echo"$vxiao_passwd"|passwd--stdinvxiao}#create/appdirfunctioncreatedir(){ mkdir-p/app/{bin,data,docker,software,scripts,logs} mkdir/vxiao chown-Rvxiao:vxiao/app chown-Rvxiao:vxiao/vxiao}#createlvmfunctioncreatelvm(){ dev_name=$(fdisk-l|grepvdb|awk-F'[:,]+''{print$2}') echo"createlvm..." #settimeout-1 #/usr/bin/expect<<EOF #spawnpvcreate${dev_name} #expect"*[y/n]" #send"y\n" #EOF pvcreate${dev_name}&&pvs&&vgcreatevxiao${dev_name}&&lvcreate-L99G-nlv1vxiao&&lvs&&mkfs.ext4/dev/vxiao/lv1&&mount/dev/vxiao/lv1/app chmod+x/etc/rc.d/rc.local echo"mount/dev/vxiao/lv1/app">>/etc/rc.local}#updatekernelfunctionupdatesystemkernal(){echo"updatesystemkernal"rpm--import/RPM-GPG-KEY-yuminstall/elrepo-release-7.0-3.el7.elrepo.noarch.rpm-yyum-y--enablerepo=elrepo-kernelinstallkernel-lt.x86_64kernel-lt-devel.x86_64sed-i's#GRUB_DEFAULT=saved#GRUB_DEFAULT=0#g'/etc/default/grubgrub2-mkconfig-o/boot/grub2/grub.cfg}#dockerinstallfunctioninstall_docker(){echo"installdocker..."yum-config-manager--add-repo/docker-ce/linux/centos/docker-ce.repoyum-yinstalldocker-cegpasswd-avxiaodocker}functionset_sysctl(){echo"setsysctl..."cat>/etc/sysctl.conf<<EOFnet.ipv6.conf.all.disable_ipv6=1net.ipv6.conf.default.disable_ipv6=1net.ipv6.conf.lo.disable_ipv6=1vm.swappiness=0net.ipv4.neigh.default.gc_stale_time=120net.ipv4.conf.all.rp_filter=0net.ipv4.conf.default.rp_filter=0net.ipv4.conf.default.arp_announce=2net.ipv4.conf.lo.arp_announce=2net.ipv4.conf.all.arp_announce=2net.ipv4.tcp_max_tw_buckets=5000net.ipv4.tcp_syncookies=1net.ipv4.tcp_max_syn_backlog=1024net.ipv4.tcp_synack_retries=2kernel.sysrq=1EOFsysctl-p}#ulimitsetfunctionmodify_limit(){echo"modifylimit.conf..."echo"*softnofile65535">>/etc/security/limits.confecho"*hardnofile65535">>/etc/security/limits.conf}#dockersetfunctionconfig_docker(){localhost_ip=$(ipaddrshoweth0|grep'inet'|awk-F'[/]''{print$6}')dockerconfig='/usr/lib/systemd/system/docker.service'src_exec="ExecStart=/usr/bin/dockerd-Hfd://--containerd=/run/containerd/containerd.sock"dst_exec="ExecStart=/usr/bin/dockerd-Hfd://--containerd=/run/containerd/containerd.sock-Hunix:///var/run/docker.sock--graph/app/docker"sed-i"s#${src_exec}#${dst_exec}#g"$dockerconfigmkdir/app/{bin,data,docker,software,scripts,logs}grep'ExecStart'$dockerconfigsystemctldaemon-reloadsystemctlrestartdocker.service}#nginxfunctioninstall_nginx(){ cd${app_package_dir} [-f${nginx_version}.tar.gz]||wget-P${app_package_dir}/download/${nginx_version}.tar.gz tarxf${nginx_version}&&cd${nginx_version} useradd-M-s/sbin/nologin${nginx_user} ./configure--user=${nginx_user}--group=${nginx_user}--with-http_ssl_module--with-http_stub_status_module--prefix=/app/bin/${nginx_version} make&&makeinstall ln-s/app/bin/${nginx_version}/app/bin/nginx echo"exportPATH="$PATH:/app/bin/nginx/sbin"">>/root/.bashrc}#onwebserverinstallnginxfunctionserver_install_nginx(){ foriin${websrv_list} do if[$i==${localhost_ip}];then install_nginx fi done}#setnfsservicefunctionset_nfs_server(){ if[${nfssrv_list}==${localhost_ip}];then echo"/vxiao/22(rw,sync,all_squash,anonuid=1000,anongid=1000)">>/etc/exports echo"/vxiao/22(rw,sync,all_squash,anonuid=1000,anongid=1000)">>/etc/exports systemctlreloadnfs else mount${nfssrv_list}:/vxiao/vxiao echo"${nfssrv_list}:/vxiao/vxiao">>/etc/rc.local fi}functionlimitsu(){sed-i'2aauthrequiredpam_wheel.souse_uid'/etc/pam.d/su usermod-Gwheelvxiao}functionupdate_openssh(){ cp/vxiao/software/openssh-8.0p1.tar.gz/app/software cd/app/software tarxfopenssh-8.0p1.tar.gz cdopenssh-8.0p1 yuminstall-ytelnet-server*telnetxinetdgcczlibzlib-developenssl-develpam-devel systemctlenablexinetd.service systemctlenabletelnet.socket systemctlstarttelnet.socket systemctlstartxinetd.service echo'pts/0'>>/etc/securetty echo'pts/1'>>/etc/securetty echo'pts/2'>>/etc/securetty cp-r/etc/ssh/etc/ssh.bak`date+%Y%m%d` ./configure--prefix=/usr/local/openssh--sysconfdir=/etc/ssh--with-pam--with-tcp-wrappers--with-ssl-dir=/usr/local/ssl--with-md5-passwords--with-zlib=zlib rpm-e--nodeps`rpm-qa|grepopenssh` make&&makeinstall chmod600/etc/ssh/ssh_host_rsa_key chmod600/etc/ssh/ssh_host_ecdsa_key chmod600/etc/ssh/ssh_host_ed25519_key cpcontrib/redhat/sshd.init/etc/init.d/sshd chmod+x/etc/init.d/sshd systemctlenablesshd sed-i's/#PermitRootLoginprohibit-password/PermitRootLoginyes/g'/etc/ssh/sshd_config cp-a/usr/local/openssh/sbin/sshd/usr/sbin/sshd cp-a/usr/local/openssh/bin/*/usr/bin/ sed-i's#/usr/libexec/sftp-server#/usr/local/openssh/libexec/sftp-server#'/etc/ssh/sshd_config systemctlstartsshd systemctldisablexinetd systemctldisabletelnet.socket systemctlstopxinetd.service systemctlstoptelnet.socket}functionmain(){ tools createuser createdirupdatesystemkernalcreatelvm install_docker set_sysctl modify_limit config_docker server_install_nginx set_nfs_server}mainredis安裝1、Redis-sentinel通用配置文件:$cat/app/conf/redis/sentinel.confport26379dir"/tmp"sentineldeny-scripts-reconfigyessentinelmonitorredismasterslave7473792sentinelauth-passredismasterslavemobile!.02019sentinelconfig-epochredismasterslave1sentinelleader-epochredismasterslave12、73節(jié)點(diǎn): Redisdocker-compose啟動(dòng)文件:$cat/app/compose/redis.ymlversion:'3.7'services:master:image:redis:4.0container_name:redis-masterrestart:alwayscommand:redis-server--port7379--requirepassmobile!.02019--masterauthmobile!.02019--appendonlyyes--maxmemory4000m--maxmemory-policyallkeys-lruports:-7379:7379volumes:-/app/data/redis:/data Redis-sentineldocker-compose配置文件:$cat/app/compose/redis-sentinel.ymlversion:'3.7'services:sentinel1:image:redis:4.0container_name:redis-sentinel-1command:redis-sentinel/usr/local/etc/redis/sentinel.confrestart:alwaysports:-26379:26379volumes:-/app/conf/redis/sentinel.conf:/usr/local/etc/redis/sentinel.conf 3、74節(jié)點(diǎn): Redisdocker-compose啟動(dòng)文件:$cat/app/compose/redis.ymlversion:'3.7'services:slave1:image:redis:4.0container_name:redis-slave-1restart:alwayscommand:redis-server--slaveof737379--port7379--requirepassmobile!.02019--masterauthmobile!.02019--appendonlyyes--maxmemory4000m--maxmemory-policyallkeys-lruports:-7379:7379volumes:-/app/data/redis:/data Redis-sentineldocker-compose配置文件:$cat/app/compose/redis-sentinel.ymlversion:'3.7'services:sentinel2:image:redis:4.0container_name:redis-sentinel-2command:redis-sentinel/usr/local/etc/redis/sentinel.confrestart:alwaysports:-26379:26379volumes:-/app/conf/redis/sentinel.conf:/usr/local/etc/redis/sentinel.conf 4、78節(jié)點(diǎn): Redisdocker-compose啟動(dòng)文件:$cat/app/compose/redis.ymlversion:'3.7'services:slave1:image:redis:4.0container_name:redis-slave-2restart:alwayscommand:redis-server--slaveof737379--port7379--requirepassmobile!.02019--masterauthmobile!.02019--appendonlyyes--maxmemory4000m--maxmemory-policyallkeys-lruports:-7379:7379volumes:-/app/data/redis:

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論