zoukankan      html  css  js  c++  java
  • 微服务学习实战笔记 3.2-系统部署篇-部署微服务项目

    一、发布项目

    1、配置运行环境

    安装lrzsz包,上传文件

    yum -y install lrzsz
    

     

    安装ASP.NET Core 运行时

    sudo dnf install aspnetcore-runtime-3.1
    

      

    2、发布内部服务Orleans项目

    unzip ExamOnline.ExamPapers.OrleansHost.zip
    

      

     

    mkdir -p /data/
    cp -r ExamOnline.ExamPapers.OrleansHost /data
    

      

    修改openssl兼容版本,连接数据库

    find /etc/* -name "openssl*"
    vi /etc/crypto-policies/back-ends/opensslcnf.config
    MinProtocol = TLSv1.2 改为 MinProtocol = TLSv1
    

     

    2、发布聚合Api项目

    3、发布Yarp网关项目

    二、通过supervisor 托管服务

    supervisor安装参见:安装supervisor

    1、托管内部服务Orleans项目

    (1)查看配置文件目录

    cat /etc/supervisord.conf
    

      通过面命令 看到 supervisor 默认的托管服务配置文件目录在 supervisord.d/ 下面,这个目录的完整地址是 /etc/supervisord.d/  ,这里的意思,在 supervisord.d 文件夹下的所有 ini 类型的文件都是配置文件。

     (2)建立配置文件

    cd /etc/supervisord.d/
    vi examonline.ini
    

      输入以下内容,保存退出

    [program:examonline_papers_orleanshost]
    command=/usr/bin/dotnet ExamOnline.ExamPapers.OrleansHost.dll ; 输入执行命令,这里表示 dotnet ExamOnline.ExamPapers.OrleansHost.dll
    directory=/data/ExamOnline.ExamPapers.OrleansHost ; 应用程序根目录 
    priority= 2
    startsecs=10
    autostart=true ; 是否自动启动,当 supervisor 加载该配置文件的时候立即启动它 
    autorestart=true ; 是否自动重启,当执行 dotnet ExamOnline.ExamPapers.OrleansHost.dll 启动失败时,会重复的自动重启 
    logfile_maxbytes=50MB ; 该配置文件输出单个日志文件的大小 
    logfile_backups=10 ; 日志备份个数 
    loglevel=info ; 记录日志级别 
    stderr_logfile=/data/logs/examonline_papers_orleanshost/logfile.err.log ; 指定标准错误输出日志文件 
    stdout_logfile=/data/logs/examonline_papers_orleanshost/logfile.out.log ; 指定标准输出日志文件 
    ;environment=ASPNETCORE_ENVIRONMENT=Production ; 可配置环境变量,该环境变量将通过执行 dotnet ExamOnline.ExamPapers.OrleansHost.dll 命令的时候传入到 .NET Core 应用程序中  
    user=root ;启动服务的用户  
    stopsignal=INT
    redirect_stderr=true

    (3)创建日志文件目录

           接下来建立日志目录,否则服务启动出错,输入命令

    mkdir -p /data/logs/examonline_papers_orleanshost
    

      

    (4)重启 supervisor 服务,并进入 supervisorctl

    systemctl restart supervisord
    supervisorctl
    

      运行成功: 

     

     查看日志输出

    cat /data/logs/examonline_papers_orleanshost/logfile.out.log 
    

      

     (5)其他相关命令

    supervisord -c /etc/supervisord.conf  #启动服务
    supervisorctl reload   #重新加载配置
    supervisorctl shutdown #关闭
    systemctl enable supervisord #开机启动
    systemctl is-enabled supervisord #验证是否开机启动
    

      

    2、托管聚合Api项目

    (1)

    mkdir -p /data/logs/examonline_aggregation_exam
    

      

     (2)编辑配置文件

    cd /etc/supervisord.d/
    vi examonline.ini
    

      追加以下内容,保存退出

    [program:examonline_aggregation_exam]
    command=/usr/bin/dotnet ExamOnline.Aggregation.ExamManagement.dll ; 输入执行命令,这里表示 dotnet ExamOnline.Aggregation.ExamManagement.dll
    directory=/data/ExamOnline.Aggregation.ExamManagement ; 应用程序根目录 
    priority= 6
    startsecs=10
    autostart=true ; 是否自动启动,当 supervisor 加载该配置文件的时候立即启动它 
    autorestart=true ; 是否自动重启,当执行 dotnet ExamOnline.Aggregation.ExamManagement.dll 启动失败时,会重复的自动重启 
    logfile_maxbytes=50MB ; 该配置文件输出单个日志文件的大小 
    logfile_backups=10 ; 日志备份个数 
    loglevel=info ; 记录日志级别 
    stderr_logfile=/data/logs/examonline_aggregation_exam/logfile.err.log ; 指定标准错误输出日志文件 
    stdout_logfile=/data/logs/examonline_aggregation_exam/logfile.out.log ; 指定标准输出日志文件 
    ;environment=ASPNETCORE_ENVIRONMENT=Production ; 可配置环境变量,该环境变量将通过执行 dotnet ExamOnline.Aggregation.ExamManagement.dll 命令的时候传入到 .NET Core 应用程序中  
    user=root ;启动服务的用户  
    stopsignal=INT
    redirect_stderr=true

    3、托管Yarp网关项目

    (1)

    mkdir -p /data/logs/baize_gateway_yarp
    

     

    (2)建立配置文件

    cd /etc/supervisord.d/
    vi examonline.ini
    

      输入以下内容,保存退出

    [program:baize_gateway_yarp]
    command=/usr/bin/dotnet Baize.Gateway.Yarp.dll ; 输入执行命令,这里表示 dotnet Baize.Gateway.Yarp.dll
    directory=/data/Baize.Gateway.Yarp ; 应用程序根目录 
    priority= 9
    startsecs=10
    autostart=true ; 是否自动启动,当 supervisor 加载该配置文件的时候立即启动它 
    autorestart=true ; 是否自动重启,当执行 dotnet Baize.Gateway.Yarp.dll启动失败时,会重复的自动重启 
    logfile_maxbytes=50MB ; 该配置文件输出单个日志文件的大小 
    logfile_backups=10 ; 日志备份个数 
    loglevel=info ; 记录日志级别 
    stderr_logfile=/data/logs/baize_gateway_yarp/logfile.err.log ; 指定标准错误输出日志文件 
    stdout_logfile=/data/logs/baize_gateway_yarp/logfile.out.log ; 指定标准输出日志文件 
    ;environment=ASPNETCORE_ENVIRONMENT=Production ; 可配置环境变量,该环境变量将通过执行 dotnet Baize.Gateway.Yarp.dll 命令的时候传入到 .NET Core 应用程序中  
    user=root ;启动服务的用户  
    stopsignal=INT
    redirect_stderr=true
  • 相关阅读:
    ceph 高可用部署
    ceph安装
    openstack 命令
    ceph
    go test 怎么做测试
    govendor
    wrap 缓存。。。
    python中if __name__ == '__main__': 的解析
    pythton 字典的使用,字典的方法
    python 基础 如何让程序接收参数,最简单用sys.argv[]来获取
  • 原文地址:https://www.cnblogs.com/liuxtj/p/13444934.html
Copyright © 2011-2022 走看看