centos docker 集群 docker安装centos

今天给各位分享centos docker 集群的知识,其中也会对docker安装centos进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

使用docker搭建flink集群

【参考】:

1.拉取centos镜像

$ docker pull centos:latest

2.创建两个节点

$ docker run--name flinkmaster-d-p 8081:8081 centos-it/bin/bash

$ docker run--name flinkworker-d centos-it/bin/bash

3.安装jdk 1.8

$ yum search java|grep jdk

$ yum install-y java-1.8.0-openjdk.x86_64

4.将flink安装包cp到容器,解压缩

docker cp flink-1.8.1-bin-scala_2.12.tgz flinkmaster:/usr

docker cp flink-1.8.1-bin-scala_2.12.tgz flinkworker:/usr

tar xvf flink-1.8.1-bin-scala_2.12.tgz

5.修改两个机器的/etc/hosts,都增加如下内容。

172.17.0.3 f3a573de76af

172.17.0.4 0379a31fd702

172.17.0.3 flinkmaster

172.17.0.4 flinkworker

注意,两个节点的hostname是随机生成的,注意自己修改。

【Flink集群搭建,Standalone,集群部署,HA高可用部署参考】:

【Linux集群免密登录配置,双向免密参考】:

1.centos安装sshd:

$ yum-y install openssh-server

$ yum-y install openssh-clients

2.启动sshd服务

$/usr/sbin/sshd-D

3.修改root密码

yum-y install passwd

passwd root

4.flinkmaster和flinkworker生成密钥对

$ ssh-keygen-t rsa

之后根据提示,回车进入.ssh目录会看见 id_rsa(私钥)和 id_rsa.pub(公钥)两个文件。

6.将公钥文件拷贝到另外两台主机使用 ssh-copy-id命令

$ ssh-copy-id-i~/.ssh/id_ rsa.pub root@flinkworker

7.验证登录

ssh root@flinkworker

如果不提示输入密码则成功。

1.修改配置文件

$ vim./conf/flink-conf.yaml

修改如下几个参数:

jobmanager.rpc.address: flinkmaster

jobmanager.rpc.port: 6123

jobmanager.heap.size: 1024m

taskmanager.memory.process.size: 1568m

taskmanager.numberOfTaskSlots: 2

parallelism.default: 2</pre>

$ vim./conf/masters

修改为:

flinkmaster:8081

$ vim./conf/worker

修改为:

flinkmaster

flinkmaster

2.拷贝到其他机器

scp-r/usr/flink-1.12.2/ root@flinkworker:/usr/

3.启动集群

在flinkmaster上执行

./bin/start-cluster.sh

4.访问

2个Task Managers,1个Job Managers为flinkmaster

Centos7.6部署k8s v1.16.4高可用集群(主备模式)

部署环境与版本概述:

本文使用7台服务器构建Kubernetes集群,包括3台控制平面节点(control plane)、3台工作节点(work)与1台客户端(client)。集群版本为Kubernetes v1.16.4。

采用kubeadm方式搭建主备模式下的高可用集群。主备模式的核心是确保集群的各关键组件如API Server、Scheduler、Controller Manager等的高可用性。

部署准备工作包括:

修改主机名与hosts文件以确保名称唯一性。

禁用swap分区,以避免资源冲突。

内核参数调整,特别是设置`bridge-nf-call-iptables=1`,这需要br_netfilter模块支持。

设置kubernetes源以加速安装过程。

配置免密码登录,便于控制节点间的交互。

Docker安装确保集群的容器化环境稳定运行,包括安装依赖、设置源、安装Docker CE、配置加速器等。

keepalived的安装与配置用于管理VIP(虚拟IP),确保在控制平面节点宕机时,VIP能够自动迁移到其他可用节点。

在部署Kubernetes组件之前,需要检查Docker版本是否兼容集群版本。安装kubelet、kubeadm和kubectl,以及下载所需的Kubernetes组件和Docker镜像。

初始化Master节点时,需配置kubeadm.conf文件,执行初始化命令,并记录控制平面加入命令。工作节点的加入通过Master节点生成的命令实现。

集群高可用测试包括观察组件在控制平面节点宕机时的行为,以验证VIP漂移和集群功能的连续性。测试结果表明,当控制平面节点发生故障时,集群能够自动调整,确保服务的连续性和可用性。

本文提供完整的部署脚本和配置文件,为 CentOS 7.6集群部署 K8s v1.16.4高可用集群提供全面指导。

centos平替体验之龙蜥、欧拉、Rocky、Alma

在寻找CentOS替代品的过程中,龙蜥、欧拉、RockyLinux和AlmaLinux成为了值得关注的对象。在搭建4节点的x86机器集群时,我尝试了这四个Linux发行版,对其CentOS兼容性进行了评价。以下内容基于实际体验和测试,对它们的兼容性进行分析。

在CentOS兼容性方面,龙蜥、RockyLinux和AlmaLinux表现良好,基本实现了与CentOS的无缝衔接,包括操作兼容性、仓库使用便利性等。欧拉则在内核版本和默认内核配置上有别于其他三个发行版,尽管内核版本更新较为激进,但兼容性上略显不足。迁移至欧拉的用户可能会遇到一些小问题,不过这些问题通常都能解决。

在内核版本的比较中,欧拉的内核版本较为先进,但这种激进性有时也会带来意想不到的问题,例如在使用docker启动CouchDB时会遇到长时间卡顿的问题。这一现象与欧拉上docker容器内ulimit-n的用户最大打开文件数配置有关。相较于其他发行版(Anolis/RockyLinux/AlmaLinux)的较小值(1048576),欧拉的设置为infinity,即无限制。因此,为解决这一问题,需要在欧拉的docker配置文件中添加限制,并重启docker服务。

对于yum仓库的兼容性,四个发行版的默认yum仓库均可以直接使用,但欧拉的刷新缓存和实际安装下载速度较慢。通过调整配置,将直接使用官方站点的baseurl注释掉,只保留使用镜像站点的metalink,可以显著提升速度。

在特定yum仓库的使用上,欧拉需要额外修改$releasever字段以适配特定软件的安装需求。这与欧拉版本号与CentOS或其他发行版的版本号不一致有关,因此在安装需要特定yum仓库文件的软件(如docker-ce)时,需要手动调整$releasever字段。

防火墙与selinux方面,四个发行版使用的是firewall,且默认都启用并支持selinux,开机启动。操作上不存在差异。

常用工具方面,龙蜥、RockyLinux、AlmaLinux与CentOS相比,目前未发现存在不一致之处。欧拉则在默认安装的软件上有所不足。

在docker相关功能上,除了欧拉安装docker时需要修改docker-ce的yum配置文件外,其他操作都正常。一般安装命令亦无差异。

对于mysql的处理,四个发行版均未默认安装mariadb或mysql,都可以通过dnf直接从默认yum仓库安装mysql。其中,欧拉的可安装版本为8.0.37,而其他三个发行版为8.0.36。在配置与初始化mysql方面,四个发行版均遵循类似流程,但在配置文件的组织和存放上存在差异,欧拉的配置文件仅在/etc/my.cnf.d下存在一个文件。

ssh配置方面,欧拉默认禁用了TCP端口转发,这在使用vscode远程连接时可能会导致问题。相比之下,其他三个发行版无此问题,需要在欧拉的sshd配置中进行适当调整。

阅读剩余
THE END