专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

安装虚拟机Centos系统并安装Docker过程记录

前言

本文主要介绍下

1、Mac系统安装虚拟机Centos7

2、Centos安装docker、docker-compose的过程

缘何说起这个话题,是因为之前一篇文章 遗留的问题

轻量级日志系统Loki原理简介和使用

问题是:loki如何收集k8s的pod日志的问题

那篇文章介绍了4种方式

第一种方式 我在mac电脑上始终达不到预期的效果即

a、通过promtail访问指定路径下的日志文件 比如 访问/var/log/contaner/*目录下的所有文件

b、但是通过grafana界面却显示不出来这个文件夹下面的文件信息

猜测是因为系统原因,因为我用的是mac系统

我问了运维大神 (昵称Qist) 他也建议我换下系统版本试试

(这位大神帮了我很多 在这里先感谢一下)

所有才有了这篇文章

一开始我在阿里云上买了一台云服务器

花了100块钱 1年的 (哈哈 配置有点低 为了省钱)1核 1G内存 40G硬盘

目前只是为了测试这个问题 也没有必要用太好的配置

(先放这吧 处理完这个问题之后 等用到之后直接用就可以了 反正钱也不多嘛)

但是1核 1G的配置 不足以跑k8s

然后才有的自己在本地搭建虚拟机的想法

插曲-百度链xpos共识的配置

在说这个话题之前 先插入一个问题哈

百度区块链所遇到的问题及处理汇总

就是这篇文章种说的一个问题 有朋友说 这里描述的不太详细 希望我再详细的说明下 因为这里百度链的官方文档也没有介绍

(怎么天马行空的感觉 一会loki 一会虚拟机等 没办法 我最近的所忙的内容 就是这些内容 哈哈 )

(之所以在这里插入一个牛头不对马尾的内容 就是心里一直憋着 不吐不快的感觉 )

什么问题呢 就是如何使用xpos共识的问题

xpos就是tdpos+chainedBFT,可以保证安全性

为什么要这个呢 因为我们公司测试环境有4个节点 3个出块节点 1个同步节点

跑一段时间就发现 bootNode节点 和 其他的3个节点断连了 区块高度不同步了

问了下 百度链大牛超哥 他建议添加换成xpos这个共识看看情况

下面说下 如何配置(截止目前 20年7月30号 官方还没有给出相应的文档)

创世块配置

  • 模版文件
https://github.com/xuperchain/xuperchain/blob/master/core/data/config/xuper_bft.json

70_1.png

这里需要注意这几个配置

1、proposer_num 出块节点数目(即共识节点数)

如截图 我是在本地测试的 供3个节点 2个出块节点(共识节点)1个同步节点

所以这里配置为2

2、init_proposer 这个是出块节点对应的节点账户

3、init_proposer_neturl 这个是出块节点对应的neturl地址

如何获取对应节点的netnul地址

./xchain-cli netURL get -H 127.0.0.1:37101 

好了 这个问题就介绍到这里了 下面转入当前的话题 (2个毫无关联性的话题捏合在一起 对百度链不感冒的朋友们 选择性忽略哈 [抱拳])

mac 安装虚拟机和centos7

因为需要下载虚拟机和centos系统 为了节省宝贵的时间 我购买一个月(截止到20年8月27号)的百度网盘会员

为了使得vip账号充分被使用 我把账号贴在这里供朋友们所使用 我平时也很少去下载大文件资料

15900411193 mfx#pingfanren

(别用我的账号干坏事就行了哈 仅用于下载你的工作学习资料哈)

  • vmware 11.5 pro 我的百度网盘地址:

链接: https://pan.baidu.com/s/1xfLLrPMDTra3Qy1EK-IbFA 提取码: 28h6

  • centos7 百度网盘地址:

链接:https://pan.baidu.com/s/1o9oxuRTYmmsqFVgRyC7xuw 密码:u1h1

虚拟机安装之后的效果

70_2.png

创建虚拟机

70_3.png

选择centos版本

70_4.png

选择虚拟机的存储文件夹

70_5.png

这里会报一个错误

70_6.png 安装界面

说明需要选择下要安装的操纵系统

70_7.png

从本地电脑上选择

70_8.png70_9.png

选中连接

70_10.png

再回到图安装界面 按下回车键

则会进入到

70_11.png70_12.png

选择语言

70_13.png

开始安装

70_14.png

设置root密码

70_15.png

等待安装完成

70_16.png

重启

70_17.png

就可以使用了

70_18.png

连接并使用centos

先查看下centos的ip

![Image 1][]

修改配置文件

![Image 1][]

将onboot修改为yes

![Image 1][]

重启下网络

![Image 1][]

现在就有了ip了

![Image 1][]

连接centos

![Image 1][]

安装docker

如果之前有安装过docker 先删除docker

sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \ docker-logrotate \ docker-selinux \ docker-engine-selinux \ docker-engine 

查看有没有docker

rpm -qa |grep docker
docker-ce-cli-19.03.12-3.el7.x86_64

删除该版本的docker

yum -y remove docker-ce-cli-19.03.12-3.el7.x86_64

查看linux内核版本

Docker 要求 CentOS 系统的内核版本高于 3.10

uname -r

3.10.0-123.el7.x86_64

更新版本库

sudo yum update

安装docker

sudo yum install docker-ce

查看版本号

docker version

如果docker server 不可用

![Image 1][]

查看docker服务状态

systemctl status docker.service

直接启动docker

dockerd

看看报什么错误

yum install xfsprogs

如果是报文件限制错误

/usr/lib/systemd/system/containerd.service

LimitNOFILE=1048576

/etc/security/limits.conf
/etc/security/limits.d/20-nproc.conf fs.file-max fs.nr_open 上面只是提供了一个解决思路 详细的朋友们再去了解 加深印象 

再次启动

dockerd

重启docker

systemctl daemon-reload

sudo service docker restart

查看docker状态

systemctl staus docker

docker info

安装docker-compose

mac和windows客户端下安装完docker之后,docker-compose是带着的

linux系统下,需要先安装docker,然后再安装docker-compose

以非root用户运行docker-compose

  • 下载docker-compose可执行文件
curl -L https://github.com/docker/compose/releases/download/1.26.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

  • 赋予可执行权限
sudo chmod +x /usr/local/bin/docker-compose

  • 添加软引用
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

  • 查看版本号
docker-compose --version

安装loki

安装的过程就不再处理赘述了

在这篇文章有详细记载

轻量级日志系统Loki原理简介和使用

启动起来loki、grafana、promtail之后

首先在虚拟机上看看可不可以访问

curl http://localhost:3000

如果不可以访问 则需要升级内核版本 因为这里安装的是最新版本的docker(19版本)所以需要高版本的内核支持

升级的过程

uname -a
docker info
free -h
iptables-save 
ip a
docker p docker logs 1e yum update yum-complete-transaction --cleanup-only yum update yum update kernel* yum clean all rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm yum --enablerepo=elrepo-kernel install kernel-ml grub2-set-default 0 grub2-mkconfig -o /boot/grub2/grub.cfg reboot uname -a docker info service docker start docker info ls docker ps docker ps -a docker start bd ea 0f 1e docker ps ps -ef curl 127.0.0.1:3000 

在宿主机访问grafana

http://192.168.48.129:3000

如果不可以访问 则添加路由转发设置

如果想用Linux实现最基本的路由(交换机)功能,前提也需要开启内核转发服务

1、开启Linux内核转发

echo "1" > /proc/sys/net/ipv4/ip_forward

SSH执行以上命令,1为开启,0为关闭。

2、保持开机自动启动

vi  /etc/sysctl.conf

修改以下字符

# Controls IP packet forwarding
net.ipv4.ip_forward = 0 #0为关闭,1为开启 修改后保存即可,下次开机后可自动加载。 

如果还不可以的话 关闭下防火墙

systemctl status firewalld

暂时关闭
systemctl stop firewalld

永久关闭 systemctl disable firewalld 重启 systemctl enable firewalld 

或者开放防火墙的指定端口

netstat -anp|grep 3000
tcp6       0      0 :::3000                 :::*                    LISTEN      4888/docker-proxy   
tcp6       0      0 192.168.84.128:3000     192.168.84.1:57695      TIME_WAIT   -                   
tcp6       0      0 192.168.84.128:3000     192.168.84.1:58089      TIME_WAIT   -

firewall-cmd --zone=public --add-port=3000/tcp --permanent –zone #作用域 –add-port=3000/tcp #添加端口,格式为:端口/通讯协议 –permanent #永久生效,没有此参数重启后失效 

最终可以通过宿主机访问到虚拟机上面的grafana

![Image 1][]

结语

费了老大劲 终于安装好了

那么接着解决咱们文章开头提的问题吧

令人讽刺的是

centos上安装loki也遇到了mac上安装loki同样问题

瞬间崩溃

天呐 我花了2天时间 印证了 这个问题不是因为系统版本(linux、mac)不兼容导致的

哈哈 不过了 我自己体验了下 在mac安装虚拟机 并安装centos 然后解决各种问题的过程

把这个过程记录下来 如果下次遇到了类似的问题 直接翻翻这个文章复习一下就可以了

而不至于每次都像一个无头苍蝇一样乱撞

再一个就是让需要的朋友们看到 为自己解决问题提供一种思路

本文使用 tech.souyunku.com 排版

[Image 1]:
文章永久链接:https://tech.souyunku.com/31920

未经允许不得转载:搜云库技术团队 » 安装虚拟机Centos系统并安装Docker过程记录

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们