DevOps持续集成-Jenkins(1)

news2024/9/24 13:18:49

文章目录

    • DevOps
      • DevOps概述
      • Code阶段工具(centos7-gitlab主机)
        • Windows下安装Git(作用是:使我们可以上传代码到GitLab)
        • Linux下安装GitLab⭐(作用是:运行一个GitLab接收代码)
          • 环境准备
            • 先创建新的虚拟机(centos7-gitlab)⭐
            • 修改IP和主机名
            • 关闭防火墙
            • 安装Docker
            • 安装Docker Compose
          • 使用Docker安装GitLab
      • Build阶段工具(centos7-jenkins主机)
        • Linux下安装Maven项目构建工具⭐
          • 环境准备
            • 先创建新的虚拟机(centos7-jenkins)⭐
            • 修改IP和主机名
            • 关闭防火墙
          • 安装Maven
            • 下载Maven和JDK8的tar.gz包
            • 将Maven和JDK8的tar.gz包上传到centos7-jenkins的/root目录上
      • Operate阶段工具(centos7-jenkins主机)
        • Linux下安装Docker和Docker-Compose⭐
          • 安装Docker
          • 安装Docker Compose

DevOps

DevOps概述

软件开发最初是由两个团队共同组成:(没有采用DevOps之前)

  • 开发团队:从头开始设计和整体系统的构建(编写代码)。需要系统不停的迭代更新。
  • 运维团队:将开发团队的代码进行测试通过后再部署上线。确保系统稳定运行。

没有采用DevOps的缺点:

  • 这看似两个目标不同的团队需要协同完成一个软件的开发。在开发团队指定好计划并完成编写代码后,需要把代码交给运维团队。运维团队向开发团队反馈需要修复的BUG以及一些需要返工的任务。这时开发团队需要经常等待运维团队的反馈。这无疑会延长整个软件开发的周期。

采用DevOps的优点?

  • DevOps的方式可以让公司能够更快地应对更新和市场发展变化,开发可以快速交付,部署也更加稳定。核心就在于简化Dev和Ops团队之间的流程,使整体软件开发过程更快速。说白了就是DevOps有利于快速完成项目,不会浪费时间)

整体的软件开发流程:

  • PLAN:开发团队根据客户的目标制定开发计划
  • CODE:根据PLAN开始编码过程,需要将不同版本的代码存储在一个库中。
  • BUILD:编码完成后,需要将代码构建并且运行。
  • TEST:成功构建项目后,需要测试代码是否存在BUG或错误。
  • DEPLOY:代码经过手动测试和自动化测试后,认定代码已经准备好部署并且交给运维团队。
  • OPERATE:运维团队将代码部署到生产环境中。
  • MONITOR:项目部署上线后,需要持续的监控产品。
  • INTEGRATE:然后将监控阶段收到的反馈发送回PLAN阶段,整体反复的流程就是DevOps的核心即持续集成、持续部署。

为了保证整体流程可以高效的完成,各个阶段都有比较常见的工具,如下图:

Code阶段工具(centos7-gitlab主机)

  • 在code阶段,我们需要将不同版本(tag)的代码存储到一个远程仓库中,常见的版本控制工具就是SVN或者Git,这里我们采用Git作为版本控制工具,GitLab作为远程仓库。(GitHub和Gitee都可以,不过生产上用GitLab更多)

Code阶段步骤:

在Windows环境下编写好代码,然后将代码上传到Linux环境下的GitLab上。

Windows下安装Git(作用是:使我们可以上传代码到GitLab)
  • 进入Git官网安装Git到Windows环境下即可。(很简单)
Linux下安装GitLab⭐(作用是:运行一个GitLab接收代码)

步骤:

1:新建一个服务器(2核4G内存+60G硬盘),IP设置成192.168.184.70,主机名设置成centos7-gitlab,专门用来运行GitLab。

2:安装Docker容器。(如果已经安装过了就可以跳过这一步)

3:在这台新的GitLab的服务器上使用Docker的方式运行GitLab

环境准备
先创建新的虚拟机(centos7-gitlab)⭐

创建新的虚拟机过程省略!!!

修改IP和主机名
  • 1:新建服务器并将其IP地址修改成192.168.184.70:
vi /etc/sysconfig/network-scripts/ifcfg-ens33

找到 IPADDR 字段并将IP修改成192.168.184.70即可:

然后重启网络:

systemctl restart network

查看IP是否修改成功:(可以看到ens33已经修改成功了。)

[root@centos7-clear ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.184.70  netmask 255.255.255.0  broadcast 192.168.184.255
        inet6 fe80::9ce3:a607:cc1b:e87  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:f5:97:d0  txqueuelen 1000  (Ethernet)
        RX packets 550  bytes 56363 (55.0 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 487  bytes 71677 (69.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
  • 2:修改服务器的主机名:
hostnamectl set-hostname centos7-gitlab
关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
安装Docker
  • 1:切换镜像源
wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
  • 2:安装特定版本的docker-ce
yum -y install docker-ce-3:20.10.8-3.el7.x86_64 docker-ce-cli-3:20.10.8-3.el7.x86_64 containerd.io
  • 3:给Docker接入阿里云镜像加速器

配置镜像加速器方法。

  • 准备工作:
  • 1:首先进入阿里云容器镜像服务 https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
  • 2:点击镜像工具下面的镜像加速器
  • 3:拿到你的加速器地址和下面第二步的registry-mirrors的值替换即可。

针对Docker客户端版本大于 1.10.0 的用户,可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器

  • 第一步:
mkdir -p /etc/docker
  • 第二步:
cat <<EOF> /etc/docker/daemon.json
{
  "exec-opts": ["native.cgroupdriver=systemd"],	
  "registry-mirrors": [
    "https://u01jo9qv.mirror.aliyuncs.com",
    "https://hub-mirror.c.163.com",
    "https://mirror.baidubce.com"
  ],
  "live-restore": true,
  "log-driver":"json-file",
  "log-opts": {"max-size":"500m", "max-file":"3"},
  "max-concurrent-downloads": 10,
  "max-concurrent-uploads": 5,
  "storage-driver": "overlay2"
}
EOF
  • 第三步:
sudo systemctl daemon-reload
  • 第四步:
sudo systemctl restart docker

最后就接入阿里云容器镜像加速器成功啦。

  • 4:设置Docker开机自动启动:
[root@centos7-clear ~]# sudo systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
安装Docker Compose
  • 1:拉取docker-compose
curl -L https://get.daocloud.io/docker/compose/releases/download/v2.4.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
  • 2:给docker-compose分配权限:
chmod +x /usr/local/bin/docker-compose
  • 3:查看docker-compose的版本:
docker-compose --version
使用Docker安装GitLab
  • 1:查看gitlab镜像:
[root@centos7-clear ~]# docker search gitlab-ce
NAME                                     DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
gitlab/gitlab-ce                         GitLab Community Edition docker image based …   3642                 [OK]
  • 2:拉取最新版的gitlab镜像:(gitlab的镜像十分大,2个多GB的大小)
[root@centos7-gitlab gitlab]# docker pull gitlab/gitlab-ce:latest
latest: Pulling from gitlab/gitlab-ce
7b1a6ab2e44d: Pull complete 
6c37b8f20a77: Pull complete 
f50912690f18: Pull complete 
bb6bfd78fa06: Pull complete 
2c03ae575fcd: Pull complete 
839c111a7d43: Pull complete 
4989fee924bc: Pull complete 
666a7fb30a46: Pull complete 
Digest: sha256:5a0b03f09ab2f2634ecc6bfeb41521d19329cf4c9bbf330227117c048e7b5163
Status: Downloaded newer image for gitlab/gitlab-ce:latest
docker.io/gitlab/gitlab-ce:latest
  • 3:查看gitlab的镜像是否拉取成功:
[root@centos7-gitlab gitlab]# docker images
REPOSITORY         TAG       IMAGE ID       CREATED        SIZE
gitlab/gitlab-ce   latest    46cd6954564a   6 months ago   2.36GB
  • 4:准备docker-compose.yml文件:

创建文件夹:

[root@centos7-clear ~]# mkdir gitlab && cd gitlab

创建文件:

vi docker-compose.yml

文件内容如下:(记得修改external_url的ip地址为你的gitlab的服务器地址,我们的是192.168.184.70)

version: '3.1'
services:
  gitlab:
    image: 'gitlab/gitlab-ce:latest'
    container_name: gitlab
    restart: always
    environment:
      GITLAB_OMNIBUS_CONFIG: |
        external_url 'http://192.168.184.70:8929'
        gitlab_rails['gitlab_shell_ssh_port'] = 2224
    ports:
      - '8929:8929'
      - '2224:2224'
    volumes:
      - './config:/etc/gitlab'
      - './logs:/var/log/gitlab'
      - './data:/var/opt/gitlab'
  • 5:执行docker-compose配置文件:(执行完需要等待)
[root@centos7-gitlab gitlab]# docker-compose up -d
  • 6:访问GitLab首页:
    • 网址是 192.168.184.70:8929

在这里插入图片描述

  • 7:查看root用户初始密码:(下面password就是我们的默认密码)
[root@centos7-gitlab gitlab]# docker exec -it gitlab cat /etc/gitlab/initial_root_password
# WARNING: This value is valid only in the following conditions
#          1. If provided manually (either via `GITLAB_ROOT_PASSWORD` environment variable or via `gitlab_rails['initial_root_password']` setting in `gitlab.rb`, it was provided before database was seeded for the first time (usually, the first reconfigure run).
#          2. Password hasn't been changed manually, either via UI or via command line.
#
#          If the password shown here doesn't work, you must reset the admin password following https://docs.gitlab.com/ee/security/reset_user_password.html#reset-your-root-password.

Password: 6PHFewZSOcvt5rQD65mlCP5Tr5i8MRYTadwa3VGvkPo=

# NOTE: This file will be automatically deleted in the first reconfigure run after 24 hours.
  • 8:返回刚刚的登陆界面登陆gitlab:

在这里插入图片描述

  • 9:登陆gitlab成功后的首页:

在这里插入图片描述

  • 10:修改gitlab密码,然后重新登陆即可:(我修改成root123456)

在这里插入图片描述

Build阶段工具(centos7-jenkins主机)

  • 构建Java项目的工具一般有两种选择,一个是Maven,一个是Gradle。这里我们选择Maven作为项目的编译工具。
Linux下安装Maven项目构建工具⭐

步骤:

1:新建一个服务器(2核4G内存+60G硬盘),IP设置成192.168.184.80,主机名设置成centos7-jenkins

2:安装Docker容器。(如果已经安装过了就可以跳过这一步)

环境准备
先创建新的虚拟机(centos7-jenkins)⭐

创建新的虚拟机过程省略!!!

修改IP和主机名
  • 1:新建服务器并将其IP地址修改成192.168.184.80:
vi /etc/sysconfig/network-scripts/ifcfg-ens33

找到 IPADDR 字段并将IP修改成192.168.184.80即可:

然后重启网络:

systemctl restart network

查看IP是否修改成功:(可以看到ens33已经修改成功了。)

[root@centos7-clear ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.184.80  netmask 255.255.255.0  broadcast 192.168.184.255
        inet6 fe80::9aa7:2f1d:4559:d9c8  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:63:69:7f  txqueuelen 1000  (Ethernet)
        RX packets 136  bytes 17161 (16.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 157  bytes 20956 (20.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX
  • 2:修改服务器的主机名:
hostnamectl set-hostname centos7-jenkins
关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
安装Maven
下载Maven和JDK8的tar.gz包

在这里插入图片描述在这里插入图片描述

将Maven和JDK8的tar.gz包上传到centos7-jenkins的/root目录上
  • 1:查看当前目录:
[root@centos7-jenkins ~]# pwd
/root
  • 2:使用XFTP把刚刚下载好的两个包上传上去:

  • 3:查看上传好的包:

[root@centos7-jenkins ~]# ls
anaconda-ks.cfg  apache-maven-3.8.6-bin.tar.gz  jdk-8u333-linux-x64.tar.gz
  • 4:解压JDK包到/usr/local:
tar -zxvf jdk-8u333-linux-x64.tar.gz -C /usr/local
  • 5:解压Maven包到/usr/local:
tar -zxvf apache-maven-3.8.6-bin.tar.gz -C /usr/local
  • 6:切换到/usr/local目录下:
cd /usr/local
  • 7:给JDK和Maven的文件夹进行改名:
mv jdk1.8.0_333 jdk
mv apache-maven-3.8.6 maven
  • 8:查看/usr/local:
[root@centos7-jenkins local]# ls
bin  etc  games  include  jdk  lib  lib64  libexec  maven  sbin  share  src
  • 9:修改Maven配置文件:(配置阿里云镜像加速和JDK8设置)
  • (1)阿里云镜像加速配置:
cd maven/conf
[root@centos7-jenkins conf]# vi settings.xml

插入内容如下:(插入到</ mirrors > 这个标签上面即可),先不用保存退出

<mirror>
    <id>nexus-aliyun</id>
    <mirrorOf>central</mirrorOf>
    <name>Nexus aliyun</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>

在这里插入图片描述

  • (2)JDK8设置:

插入内容如下:(插入到 < /profiles > 标签上面即可)

<profile>
    <id>jdk8</id>
    <activation>
        <activeByDefault>true</activeByDefault>
        <jdk>1.8</jdk>
    </activation>
    <properties>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
    </properties>
</profile>

并插入如下内容:(用于开启上面的jdk配置,插入到最下面的< /settings >标签上面即可),然后保存退出

<activeProfiles>
    <activeProfile>jdk8</activeProfile>
</activeProfiles>

在这里插入图片描述

Operate阶段工具(centos7-jenkins主机)

Linux下安装Docker和Docker-Compose⭐
安装Docker
  • 1:切换镜像源
wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
  • 2:安装特定版本的docker-ce
yum -y install docker-ce-3:20.10.8-3.el7.x86_64 docker-ce-cli-3:20.10.8-3.el7.x86_64 containerd.io
  • 3:给Docker接入阿里云镜像加速器

配置镜像加速器方法。

  • 准备工作:
  • 1:首先进入阿里云容器镜像服务 https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
  • 2:点击镜像工具下面的镜像加速器
  • 3:拿到你的加速器地址和下面第二步的registry-mirrors的值替换即可。

针对Docker客户端版本大于 1.10.0 的用户,可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器

  • 第一步:
mkdir -p /etc/docker
  • 第二步:
cat <<EOF> /etc/docker/daemon.json
{
  "exec-opts": ["native.cgroupdriver=systemd"],	
  "registry-mirrors": [
    "https://u01jo9qv.mirror.aliyuncs.com",
    "https://hub-mirror.c.163.com",
    "https://mirror.baidubce.com"
  ],
  "live-restore": true,
  "log-driver":"json-file",
  "log-opts": {"max-size":"500m", "max-file":"3"},
  "max-concurrent-downloads": 10,
  "max-concurrent-uploads": 5,
  "storage-driver": "overlay2"
}
EOF
  • 第三步:
sudo systemctl daemon-reload
  • 第四步:
sudo systemctl restart docker

最后就接入阿里云容器镜像加速器成功啦。

  • 4:设置Docker开机自动启动:
sudo systemctl enable docker
安装Docker Compose
  • 1:拉取docker-compose
curl -L https://get.daocloud.io/docker/compose/releases/download/v2.4.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
  • 2:给docker-compose分配权限:
chmod +x /usr/local/bin/docker-compose
  • 3:查看docker-compose的版本:
[root@centos7-jenkins conf]# docker-compose --version
Docker Compose version v2.4.1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1134224.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

电脑QQ如何录制视频文件?

听说QQ可以录制视频&#xff0c;还很方便&#xff0c;请问该如何录制呢&#xff1f;是需要先打开QQ才可以录制吗&#xff1f;还是可以直接使用快捷键进行录制呢&#xff1f;录制的质量又如何呢&#xff1f; 不要着急&#xff0c;既然都打开这篇文章看了&#xff0c;那小编今天…

使用Docker快速搭建服务器环境

简介 这篇文章也是方便自己记录搭建流程&#xff0c;服务器的购买啥的就不说了&#xff0c;最终目标就是在一个空白的Linux系统上&#xff0c;使用docker运行MySQL、TomcatJava、Nginx、Redis 的单机环境&#xff0c;以后方便自己快速的部署服务器。 安装Docker 首先需要安装…

宏电5G RedCap工业智能网关获首个中国移动5G物联网开放实验室5G及轻量化产品能力认证

10月21日&#xff0c;2023世界物联网博览会——中国移动物联网开发者大会暨物联网产业论坛在无锡圆满举行。宏电股份参与中国移动5G物联网开放实验室5G及轻量化产品能力认证成果授牌仪式&#xff0c;并获得认证证书。 此次认证主要对产品功能、产品性能、RedCap网络兼容性进行测…

为什么POST请求经常发送两次?

大多数初级前端程序员&#xff0c;在通过浏览器F12的调试工具调试网络请求时&#xff0c;可能都会有一个发现&#xff0c;在进行POST请求时&#xff0c;明明代码里只请求了一次&#xff0c;为什么network里发送了两次呢&#xff0c;难道我代码出bug了&#xff1f;带着疑问点开第…

根据递归原理设计一个简单的代码生成器

数据结构设计 可以设计一个组件节点ComponentNode的数据结构,包含name、props、children字段,其中children再嵌套子组件节点。 class ComponentNode {constructor(name, props) {this.name namethis.props propsthis.children [] } }递归算法设计 function generateCode(…

【Java笔试强训】Day5(45842-统计回文、58539-连续最大和)

45842-统计回文 链接&#xff1a;45842-统计回文 题目&#xff1a; “回文串”是一个正读和反读都一样的字符串&#xff0c;比如“level”或者“noon”等等就是回文串。花花非常喜欢这种拥有对称美的回文串&#xff0c;生日的时候她得到两个礼物分别是字符串A和字符串B。现在…

多测师肖sir_高级金牌讲师__接口测试之tonken (5.6)

接口测试之tonken 网站&#xff1a;http://shop.duoceshi.com/login?redirect2Fdashboard 第一个接口&#xff1a;uiid接口 uiid接口url&#xff1a;http://manage.duoceshi.com/auth/code test中语句&#xff1a; var jsonData JSON.parse(responseBody); postman.setEnvi…

javaEE -9(7000字详解TCP/IP协议)

一&#xff1a; IP 地址 IP地址&#xff08;Internet Protocol Address&#xff09;是指互联网协议地址&#xff0c;又译为网际协议地址。 IP地址是IP协议提供的一种统一的地址格式&#xff0c;它为互联网上的每一个网络和每一台主机分配一个逻辑地址&#xff0c;以此来屏蔽物…

论文-分布式-分布式计算|容错-分布式控制下的自稳定系统

参考文献Self-stabilizing systems in spite of distributed control可以把松散耦合的 循环序列过程 间的同步任务&#xff0c;看成是要保持一个这样的不变性&#xff1a;“系统要处于一种合法状态”因此每个进程在运行每一个可能会改变不变性的步骤之前都要先检查一下是可以执…

信息系统架构的设计理论与实践

信息系统架构的设计理论与实践 信息系统架构概述 信息系统架构的定义和发展 信息系统架构的定义 骚戴理解&#xff1a;这里只要背定义即可 信息系统架构的发展 信息系统架构的分类&#xff08;集中式和分布式&#xff09; 集中式结构 分布式结构 信息系统常用的四种架构模型…

操作系统-浅谈CPU与内存

目录 计算机的基本组成CPU内存虚拟内存内存分段内存分页 CPU与内存的交互过程高速缓存cache 所有图片均来自&#xff1a;小林coding 计算机的基本组成 计算机由软件和硬件组成 硬件由CPU(中央处理器&#xff09;存储器(内存外存&#xff09;外部设备组成。 软件由应用软件和系…

Flink 自定义拓展 SQL 语法

1、Flink 扩展 calcite 中的语法解析 1&#xff09;定义需要的 SqlNode 节点类-以 SqlShowCatalogs 为例 a&#xff09;类位置 flink/flink-table/flink-sql-parser/src/main/java/org/apache/flink/sql/parser/dql/SqlShowCatalogs.java 核心方法&#xff1a; Override pu…

JVM 调优JVM 性能优化

所谓“调优”就是一个诊断和处理手段&#xff0c;最终的目标是让系统的处理能力&#xff0c;也就是“性能”达到最优化。 计算机系统中&#xff0c;性能相关的资源主要分为这几类&#xff1a; CPU&#xff1a;CPU 是系统最关键的计算资源&#xff0c;在单位时间内有限&#xf…

Windows10系统安装telnet命令

简介 telnet命令可以测试目标服务器端口是否开通&#xff0c;使用命令 telnet ip地址 端口&#xff0c;输入命令后回车&#xff0c;如果进入输入状态&#xff0c;则表示目标服务器端口已开通&#xff0c;可以通过外网访问 Windows10系统安装步骤 1.打开控制面板 2.选择程序…

MS1112可替代ADS1112,16-bit 多输入内置基准模数转换器

MS1112 是一款高精度 16bit 模数转换器&#xff0c;具有 2 组差分输入 或 3 组单端输入通道&#xff0c;高达 16bits 的分辨率。内部集成 2.048V 基 准源&#xff0c;差分输入范围达到 2.048V 。 MS1112 使用了 I 2 C 兼容接口&#xff0c; 并有 2 个地址管…

Linux网络流量监控iftop

在 Linux 系统下即时监控服务器的网络带宽使用情况&#xff0c;有很多工具&#xff0c;比如 iptraf、nethogs 等等&#xff0c;但是推荐使用小巧但功能很强大的 iftop 工具【官网&#xff1a;http://www.ex-parrot.com/~pdw/iftop/】。iftop 是 Linux 系统一个免费的网卡实时流…

elasticsearch-5.6.15集群部署,如何部署x-pack并添加安全认证

目录 一、环境 1、JDK、映射、域名、三墙 2、三台服务器创建用户、并为用户授权 二、配置elasticsearch-5.6.15实例 1、官网获取elasticsearch-5.6.15.tar.gz&#xff0c;拉取到三台服务器 2、elas环境准备 3、修改elasticsearch.yml配置 4、修改软、硬件线程数 5、修改…

PHP 危险函数1-OS 命令执行函数

OS 命令执行函数 system 函数 特点&#xff1a; 自带输出功能自动区分系统平台&#xff0c;只需得知目标系统在 system() 中输入对应系统的命令即可 使用 <?phpsystem("<系统命令>"); ?>如 <pre> <?phpsystem("ipconfig"); …

如何在VScode中让printf输出中文

如何在VScode中让printf输出中文&#xff1f; 1、在“Visual Studio Code”图标上右击&#xff0c;弹出对话框。见下图&#xff1a; 2、点击“以管理员身份运行”&#xff0c;得到下图&#xff1a; 3、点击“UTF-8”按钮&#xff0c;得到下图&#xff1a; 4、点击“通过编码重…

机器学习实验三:决策树-隐形眼镜分类(判断视力程度)

决策树-隐形眼镜分类&#xff08;判断视力程度&#xff09; Title : 使用决策树预测隐形眼镜类型 # Description :隐形眼镜数据是非常著名的数据集 &#xff0c;它包含很多患者眼部状况的观察条件以及医生推荐的隐形眼镜类型 。 # 隐形眼镜类型包括硬材质 、软材质以及不适合佩…