首页 > 系统相关 >​CentOS7一键脚本安装docker并创建ES集群(docker版本)

​CentOS7一键脚本安装docker并创建ES集群(docker版本)

时间:2023-12-21 16:33:05浏览次数:37  
标签:repo -- CentOS7 etc yum docker com ES

CentOS7一键脚本安装docker并创建ES集群(docker版本)

说明:

  • 1、脚本中修改了默认的docker的存储路径为/data/docker
  • 2、脚本中修改了docker默认的网段为10.112.0.1/24
  • 3、脚本中拉取镜像并安装portainer 容器Web管理工具
#!/bin/bash
sed -i 's/enforcing/disabled/g' /etc/selinux/config
setenforce 0
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo
# step 1: 安装必要的一些系统工具
yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3
sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
# Step 4: 更新并安装Docker-CE
yum makecache fast
yum -y install docker-ce
# Step 4: 开启Docker服务

mkdir -p /data/docker
sed -i "s#ExecStart=/usr/bin/dockerd -H fd://#ExecStart=/usr/bin/dockerd -g /data/docker -H fd://#g" /lib/systemd/system/docker.service
cat /lib/systemd/system/docker.service | grep ExecStart
systemctl daemon-reload
mkdir -p /etc/docker/
touch /etc/docker/daemon.json
cat  > /etc/docker/daemon.json << \EOF
{
  "bip": "10.112.0.1/24"
}
EOF
systemctl start docker
systemctl enable docker
docker version

docker pull docker.elastic.co/elasticsearch/elasticsearch:7.17.7
cat  > /opt/docker-compose.yml<< \EOF
version: '2.2'
services:
  es01:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.17.7
    container_name: es01
    environment:
      - node.name=es01
      - cluster.name=es-docker-cluster
      - discovery.seed_hosts=es02,es03
      - cluster.initial_master_nodes=es01,es02,es03
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - data01:/usr/share/elasticsearch/data
    ports:
      - 9200:9200
    networks:
      - elastic
  es02:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.17.7
    container_name: es02
    environment:
      - node.name=es02
      - cluster.name=es-docker-cluster
      - discovery.seed_hosts=es01,es03
      - cluster.initial_master_nodes=es01,es02,es03
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - data02:/usr/share/elasticsearch/data
    networks:
      - elastic
  es03:
    image: docker.elastic.co/elasticsearch/elasticsearch:7.17.7
    container_name: es03
    environment:
      - node.name=es03
      - cluster.name=es-docker-cluster
      - discovery.seed_hosts=es01,es02
      - cluster.initial_master_nodes=es01,es02,es03
      - bootstrap.memory_lock=true
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - data03:/usr/share/elasticsearch/data
    networks:
      - elastic

volumes:
  data01:
    driver: local
  data02:
    driver: local
  data03:
    driver: local

networks:
  elastic:
    driver: bridge
EOF
yum -y install docker-compose 
cd /opt
echo "vm.max_map_count=262144" >> /etc/sysctl.conf
sysctl -w vm.max_map_count=262144
docker-compose up -d
curl -X GET "localhost:9200/_cat/nodes?v=true&pretty"

docker volume create portainer_data
docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest
firewall-cmd --permanent --zone=public --add-port=9443/tcp
firewall-cmd --reload

集群创建成功截图如下

​CentOS7一键脚本安装docker并创建ES集群(docker版本) _elasticsearch

portainer界面

​CentOS7一键脚本安装docker并创建ES集群(docker版本) _elasticsearch_02

​CentOS7一键脚本安装docker并创建ES集群(docker版本) _docker_03

​CentOS7一键脚本安装docker并创建ES集群(docker版本) _docker_04

标签:repo,--,CentOS7,etc,yum,docker,com,ES
From: https://blog.51cto.com/u_64214/8925167

相关文章

  • postgresql常用创建用户和授权
    需求(1)给用户a创建一个数据库,并且给a用户对这个库有所有权限(2)给read_a用户对这个数据库有只读权限步骤1.创建用户a2.创建数据库db_a,并设置owner为a3.回收默认的publicschemacreate权限4.设置db_a的publicschema默认的owner为a5.创建只读用户read_a6.用a用户给read_a......
  • Binding 中 Elementname,Source,RelativeSource 三种绑定的方式
    在WPF应用的开发过程中Binding是一个非常重要的部分。在实际开发过程中Binding的不同种写法达到的效果相同但事实是存在很大区别的。这里将实际中碰到过的问题做下汇总记录和理解。1. source= {binding}和source={bindingRelativeSource={RelativeSourceself},Path=Dat......
  • Maven-Introduction to the Dependency Mechanism | Maven实战--- dependencies与depe
    Maven–IntroductiontotheDependencyMechanismhttps://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html#:~:text=Thedependencymanagementsectionisamechanismfor,referencestotheartifactsinthechildPOMs.Maven实战---......
  • 蜘点云原生之 KubeSphere 落地实践过程
    公司平台介绍蜘点成立于2016年4月,致力于打造社区电商业务(解决最后3公里的配送问题)。当初通过自建直营渠道、自建仓库、自建大型社区仓、和采用加盟仓的方式,实现在社区的电商业务的发展,配送本地化。最多的时候在全国各个省都有分公司及下属子公司,在每个省都有省仓,在南北的主要......
  • Android安卓打包app应用程序编译shrinkResources true报错解决方案
    Hello各位同学们好,我是咕噜铁蛋!在Android开发中,当我们需要打包应用程序时,经常会遇到一些问题。其中一个常见的问题是在使用shrinkResources设置为true时出现的编译错误。这个选项是在AndroidGradle插件的build.gradle文件中设置的,用于减少最终APK文件的大小。然而,如果设置不正确,可......
  • AtCoder Beginner Contest 333
    title:categories:算法题解description:tags:-atcoder-DFS-思维-贪心-差分-概率DP-连分数cover:/img/chino/vec/chino56.jpgkatex:truedate:2023-12-2114:47:38A-ThreeThrees(abc333A)题目大意给定一个\(0-9\)的数\(n\),输出这......
  • 【C#/WPF】Bitmap、BitmapImage、ImageSource 、byte[]转换问题
    C#/WPF项目中,用到图像相关的功能时,涉及到多种图像数据类型的相互转换问题,这里做了个整理。包含的内容如下:Bitmap和BitmapImage相互转换。RenderTargetBitmap–>BitmapImageImageSource–>BitmapBitmapImage和byte[]相互转换。byte[]–>BitmapStackOverflow上有很......
  • Wpf Bitmap(Image)Base64,Url,文件Path,Stream转BitmapSource(ImageSource),无需外部d
    直接上代码usingSystem;usingSystem.Drawing;usingSystem.IO;usingSystem.Windows.Forms;usingSystem.Windows.Media.Imaging;namespaceCommonUtils{///<summary>///Windows图片处理///</summary>publicstaticclassWindowsImage......
  • Json.Net Deserialize a Collection from BSON
    DeserializeaCollectionfromBSON(newtonsoft.com)Thissamplesets ReadRootValueAsArray to true sotherootBSONvalueiscorrectlyreadasanarrayinsteadofanobjectanddeserializesBSONtoacollection.SampleTypesCopypublicclassEv......
  • docker初步入门学习安装redis和mysql
    dockerrun--namemyredis-p6379:6379-dredisredis-server--appendonlyyesdockerrun--namemysql-eMYSQL_ROOT_PASSWORD=123456-d-p3306:3306mysql:5.7.27dockerpullmysql:5.7.27dockerrun-d--hostnamemy-rabbit--namemyra......