十次方后端项目运维

4 篇文章 0 订阅
2 篇文章 0 订阅

---------Shicifangday01-----------------
(1) 端口 
shicifang-base  端口号:9001
shicifang-recruit  端口号:9002
shicifang-qa     端口号:9003
shicifang-article 端口号:9004
shicifang-gathering  端口号:9005
shicifang-spit  端口号:9006
shicifang-search  端口号:9007
shicifang-user  端口号:9008
shicifang-sms  端口号:9009
shicifang-friend 端口号:9010
shicifang-manager  端口号:9011
shicifang-web  端口号:9012
shicifang-eureka 端口号:8861


---------Shicifangday04-----------------
(2) 远程连接MongoDB
mongo 192.168.26.128

---------Shicifangday05-----------------
---------windows部分--------------------
(3) 启动本地elasticsearch服务
cmd 进入 F:\env\elasticsearch-5.6.8\bin 目录后输入 elasticsearch  命令即可启动本地服务
浏览器地址栏输入:http://127.0.0.1:9200  测试本地服务是否启动成功

(4) 新建索引_index和_type
post请求:  http://127.0.0.1:9200/dwq_index/test
body:
{
  "title":"dwq测试",
  "content":"我来测测是否成功!"
}

(5)查询所有索引的数据
    get请求:  http://127.0.0.1:9200/dwq_index/test/_search

(6)匹配查询
    get请求:  http://127.0.0.1:9200/dwq_index/test/_search?q=title:测试
    模糊查询用 *代 替任意字符

(7)使用elasticsearch-head插件图形化界面来管理Elasticsearch
    1. 安装node.js

    2. 安装npm

    3. 安装cnpm,利用淘宝镜像服务
        npm install ‐g cnpm --registry=https://registry.npm.taobao.org

    4. 安装Grunt项目构建工具
        npm install -g grunt-cli

    5. 安装依赖 
        cmd 进入 F:\env\elasticsearch-head 目录下输入  cnpm install 命令

    6. 启动服务
        grunt server

    7.head插件连接elasticsearch
       浏览器地址栏输入:  http://localhost:9100 
       修改  F:\env\elasticsearch-5.6.8\config\elasticsearch.yml下的文件添加允许跨域命令
        http:
          cors:
            enabled: true
            allow-origin: "*"
       连接 http://localhost:9200
       
(8) 配置IK分词器
    1. 解压elasticsearch-analysis-ik-5.6.8.zip,将解压后的 elasticsearch 文件夹重命名文件夹为 ik
    2. 将 ik 文件夹拷贝到 F:\env\elasticsearch-5.6.8\plugins 目录下。
    3. 重启本地elasticsearch服务,即可加载 IK 分词器
    4. 测试ik分词器是否可用
       浏览器地址栏输入: http://127.0.0.1:9200/_analyze?analyzer=ik_smart&pretty=true&text=我是程序员       ---最少切分
                         http://127.0.0.1:9200/_analyze?analyzer=ik_max_word&pretty=true&text=我是程序员    ---最细切分

(9) Logstash与MySQL数据同步
    1. 在logstash-5.6.8安装目录下新建文件夹 mysqletc
    2. 文件夹下创建mysql.conf, 内容如下:
    input {
      jdbc {
          jdbc_connection_string => "jdbc:mysql://192.168.26.128:3306/shicifang_article?characterEncoding=UTF8"
          jdbc_user => "root"
          jdbc_password => "123456"
          jdbc_driver_library => "F:\env\el-logstash-5.6.8\mysqletc\mysql-connector-java-5.1.46.jar"
          jdbc_driver_class => "com.mysql.jdbc.Driver"
          jdbc_paging_enabled => "true"
          jdbc_page_size => "50000"
          statement => "select id,title,content,state from tb_article"
          #分、时、天、月、年,每30分钟触发一次
          schedule => "30 * * * *"  
      }
    }
    output {
      elasticsearch {
          hosts => "localhost:9200" 
          index => "shicifang"
          document_id => "%{id}"
          document_type => "article"
      }
      stdout {
          codec => json_lines
      }
    }
    
    3. 执行logstash命令
    cmd 进入 F:\env\el-logstash-5.6.8\bin 下输入 logstash -f ../mysqletc/mysql.conf

---------linux部分--------------------

(10) linux系统调优
    vi /etc/security/limits.conf 追加以下内容
    * soft nofile 65536
    * hard nofile 65536
    
    vi /etc/sysctl.conf 追加以下内容
    vm.max_map_count=655360
    
(11) docker创建elasticsearch容器并挂载目录(宿主机:容器目录)
    docker run -di --name=shicifang_elasticsearch -p 9200:9200 -p 9300:9300 -v /home/shicifang/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml --restart=always elasticsearch:5.6.8
    浏览器地址栏输入:  http://192.168.26.128:9200   测试远程服务是否启动成功
    
(12) IK分词器安装
    1. 快捷键alt+p进入sftp , 将ik文件夹上传至宿主机
       put -r F:\env\elasticsearch-5.6.8\plugins\ik
    2. 在宿主机中将ik文件夹拷贝到容器内 /usr/share/elasticsearch/plugins 目录下。
       docker cp ik shicifang_elasticsearch:/usr/share/elasticsearch/plugins
    3. 重新启动容器,即可加载IK分词器
        docker restart shicifang_elasticsearch
        
(13) elasticsearch-head插件安装
    1. 修改 /home/shicifang/elasticsearch.yml下的文件添加以下内容
        http.host: 0.0.0.0
        transport.host: 0.0.0.0
        http.cors.enabled: true
        http.cors.allow-origin: "*"
    2. 重新启动elasticseach容器
    3. 创建head容器
        docker run -di --name=elasticsearch_head -p 9100:9100 --restart=always mobz/elasticsearch-head:5
    4. 浏览器地址栏输入: http://192.168.26.128:9100 连接 http://192.168.26.128:9200

---------Shicifangday06-----------------

(14) windows环境下安装RabbitMQ
    1. 下载并安装 Eralng 配套软件中已提供otp_win64_20.2.exe (以管理员身份运行安装)
    2. 下载并安装rabbitmq 配套软件中已提供rabbitmq-server-3.7.4.exe。双击安装,注意不要安装在包含中文和空格的目录下!安装后window服务中就存在rabbitMQ了,并且是启动状态。
    3. 安装管理界面(插件)进入rabbitMQ安装目录的sbin目录,输入命令 rabbitmq-plugins enable rabbitmq_management
    4. 重启服务中的rabbitMQ
    5. 打开浏览器,地址栏输入http://127.0.0.1:15672 ,即可看到管理界面的登陆页 username: guest; password: guest

(15) docker环境下的安装RabbitMQ
    1. 下载镜像 docker pull rabbitmq:management
    2. 创建容器,rabbitmq需要有映射以下端口: 5671 5672 4369 15671 15672
       docker run -di --name=shicifang_rabbitmq -p 5671:5671 -p 5672:5672 -p 4369:4369 -p 15671:15671 -p 15672:15672 -p 25672:25672 --restart=always rabbitmq:management
    3. 打开浏览器,地址栏输入http://192.168.26.128:15672, 即可看到管理界面的登陆页 username: guest; password: guest
    
---------Shicifangday09-----------------
(16) 创建私有仓库容器
    1. docker run -di --name=registry --restart=always -p 5000:5000 registry
    2. 修改 daemon.json (/etc/docker/daemon.json) 添加以下内容,保存退出
    {
       "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"],
       "insecure‐registries":["192.168.187.128:5000"]                   //作用是让docker信任该私有仓库地址
    }       
    3. 重启docker服务
    systemctl restart docker

(17) 使用DockerMaven插件自动打包并发布到私有仓库
    1. 修改宿主机的docker配置,让其可以远程访问
        vi /lib/systemd/system/docker.service
        ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
    2. 刷新配置,重启服务
        systemctl daemon-reload
        systemctl restart docker
        docker start registry
    3. pom文件中加入插件
        <build>
            <finalName>app</finalName>
            <plugins>
                <!--spring-boot打包插件-->
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                </plugin>
                <!-- docker的maven插件-->
                <plugin>
                    <groupId>com.spotify</groupId>
                    <artifactId>docker-maven-plugin</artifactId>
                    <version>0.4.13</version>
                    <configuration>
                        <imageName>192.168.26.128:5000/${project.artifactId}:${project.version}</imageName>
                        <baseImage>java:8</baseImage>
                        <entryPoint>["java", "-jar","/${project.build.finalName}.jar"]</entryPoint>
                        <resources>
                            <resource>
                                <targetPath>/</targetPath>
                                <directory>${project.build.directory}</directory>
                                <include>${project.build.finalName}.jar</include>
                            </resource>
                        </resources>
                        <dockerHost>http://192.168.26.128:2375</dockerHost>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    
    4. IDEA-->Terminal下执行打包命令:  mvn clean package docker:build -DpushImage    //docker:build打包,-DpushImage传到私有仓库

(18) 创建shicifang-eureka容器
    docker run -di --restart=always -p 8861:8861 --name=shicifang-eureka 192.168.26.128:5000/shicifang-eureka:1.0-SNAPSHOT
    打开浏览器,地址栏输入http://192.168.26.128:8861 即可打开eureka可视化界面
    
(19) 创建gogs容器
    1. docker run -di --name=shicifang_gogs -p 10022:22 -p 3000:3000 -v /var/gogsdata:/data --restart=always gogs/gogs:latest
    2. 打开浏览器,在地址栏输入http://192.168.26.128:3000 会进入首次运行安装程序页面
    3. 提交本地代码到Git仓库, VCS->Git->Commit Directory
    4. 从Git仓库push到http://192.168.26.128:3000/itcast/shicifang.git ; user: admin, password: 123456

(20) 安装Jenkins
    1. 安装jdk,将 jdk-8u171-linux-x64.rpm 上传到服务器上, 使用rpm方式执行安装命令: rpm -ivh jdk-8u171-linux-x64.rpm ,根目录为: /usr/java/jdk1.8.0_171-amd64
    2. 下载Jenkins
        a) jenkins包下载地址 https://pkg.jenkins.io/redhat-stable/
        b) alt+p, put将jenkins-2.138.4-1.1.noarch.rpm上传到服务器上
        c) rpm -ivh jenkins-2.138.4-1.1.noarch.rpm
        d) 修改 vi /etc/sysconfig/jenkins配置文件, 修改用户和端口: JENKINS_USER="root"; JENKINS_PORT="8088"
        e) 启动服务: systemctl start jenkins
        f) 浏览器访问http://192.168.26.128:8088
        g) 修改 vi /var/lib/jenkins/updates/default.json 下的配置 将http://www.google.com 改为 http://www.baidu.com
        h) 修改 vi /var/lib/jenkins/hudson.model.UpdateCenter.xml 的下载插件源地址 https://updates.jenkins.io/update-center.json 为国内备用地址 https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
        i) 重启服务 systemctl restart jenkins
        j) 从cat /var/lib/jenkins/secrets/initialAdminPassword 中获取初始密码串填入Administrator password输入框
        k) jenkins用户名: admin, 密码: 123456 ,全名: itcast
        
(21) Jenkins构建shicifang-eureka任务
    1. 源码管理: http://192.168.26.128:3000/dengwenqing/shicifang.git    
    2. Build:shicifang-parent/shicifang-eureka/pom.xml
              clean package docker:build
              
(22) 创建shicifang-eureka容器  docker run -di --restart=always -p 8861:8861 --name=shicifang-eureka shicifang-eureka:1.0-SNAPSHOT
(23) 创建shicifang-base容器  docker run -di --restart=always -p 9001:9001 --name=shicifang-base shicifang-base:1.0-SNAPSHOT    
(24) 创建shicifang-recruit容器  docker run -di --restart=always -p 9002:9002 --name=shicifang-recruit shicifang-recruit:1.0-SNAPSHOT        
(25) 创建shicifang-qa容器  docker run -di --restart=always -p 9003:9003 --name=shicifang-qa shicifang-qa:1.0-SNAPSHOT    
(26) 创建shicifang-article容器  docker run -di --restart=always -p 9004:9004 --name=shicifang-article shicifang-article:1.0-SNAPSHOT    
(27) 创建shicifang-gathering容器  docker run -di --restart=always -p 9005:9005 --name=shicifang-gathering shicifang-gathering:1.0-SNAPSHOT    
(28) 创建shicifang-spit容器  docker run -di --restart=always -p 9006:9006 --name=shicifang-spit shicifang-spit:1.0-SNAPSHOT    
(29) 创建shicifang-search容器  docker run -di --restart=always -p 9007:9007 --name=shicifang-search shicifang-search:1.0-SNAPSHOT    
(30) 创建shicifang-user容器  docker run -di --restart=always -p 9008:9008 --name=shicifang-user shicifang-user:1.0-SNAPSHOT    
(31) 创建shicifang-sms容器  docker run -di --restart=always -p 9009:9009 --name=shicifang-sms shicifang-sms:1.0-SNAPSHOT    
(32) 创建shicifang-friend容器  docker run -di --restart=always -p 9010:9010 --name=shicifang-friend shicifang-friend:1.0-SNAPSHOT    
(33) 创建shicifang-manager容器  docker run -di --restart=always -p 9011:9011 --name=shicifang-manager shicifang-manager:1.0-SNAPSHOT    
(34) 创建shicifang-web容器  docker run -di --restart=always -p 9012:9012 --name=shicifang-web shicifang-web:1.0-SNAPSHOT    

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值