一 、 安装Docker

安装rancher依赖docker环境,k8s节点也依赖docker环境,可以自行安装,没有安装过的可以参考网上的教程。

二、安装单节点rancher

2.1 下载镜像包

官方2.x文档

DockerHub

docker pull rancher/rancher:stable

2.2 环境准备

  1. 需要预留的端口号:80、443

2.3 运行镜像

docker run -d --restart=unless-stopped -p 80:80 -p 443:443 -v :/var/lib/rancher/ -v /root/var/log/auditlog:/var/log/auditlog -e AUDIT_LEVEL=3 ancher/rancher:stable

2.4 查看页面

b41f4be9003db5370f0a0c4966147d50.png

初始页面要设置密码

##三、部署单节点k8s

3.1 添加集群

c149e2d5c0dc767768b85ee6abd641f0.png
5b99e46c5017dc4c62970704648a166c.png

在node节点运行

sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.2.5 --server https://192.168.25.142 --token xnw2bc27vpcqtthpjrk8cmjhxf4h25dgsldrd2jhvz624hx4cvj78r --ca-checksum 942c504c79bfcb14257a188bbb9d84059a752bd14b362a3194bef1872c097cf4 --node-name k8s-node1 --etcd --controlplane --worker
278ef4c7ba159c21893ae3b28bf44e44.png

四、 部署spring cloud微服务

4.1 新建项目(命名空间)

ee3877ad1c9f95aaae76c12e94a53dce.png
ea2973a7047a22f9d96a048d410af90c.png
bfd9533270bb5edbe7bb99e1cac83c03.png

4.2 新建项目命名空间

相当docker的network桥接网络,一个命名空间内的服务可以通过服务名称来互相访问。

例如:http://taco-config-server配置中心服务的访问名称

不同的命名空间内的服务也可以配置hostname访问,在工作负载 -》服务发现 -》添加DNS记录 -》服务别名

后面会给出设置例子

575da9fa088fa82ba5f9b3bdd78c5cf9.png
4d40a1a1b6f9ab32419ff1e461b87472.png
cdfa3263d5782696ff8936e808eb8248.png
dea4c4051499ce5c4797384356895e84.png

4.3 部署服务

9c1493e8858c1038fb276b5aaf45a73f.png
eef0ca29c4968eaf2a068b8d02959e57.png

这里需要注意服务的部署时需要顺序的:

mysql、redis、rabbitmq

config-server

eureka(依赖配置中心拉取配置文件)

service(网关、授权认证中心、IAM、BIZ服务等等)

监控...

部署taco-config-server

e9b38b9f425bf45e3c57aa254c70e33f.png
3698e51a72f743fa8879156b7908c6b4.png

设置gitlab的域名映射

b039dd6abbfe788b68623d5b3988204e.png

启动服务

60a46fff86377412028b9c5e8db1370e.png

查看日志

439ea91aa41b3e66ae110a2ac27de104.png
118127644a19d7f870f09df932c6e797.png
c26f759c10669b4cb741c8d49f36d060.png

访问端口,需要先关闭防火墙

#关闭防火墙systemctl stop firewalld.service#禁止firewall开机启动systemctl disable firewalld.service #查看防火墙状态firewall-cmd --state
67d1df0d457f6afcdcdf18676afd9c99.png

查看配置文件

ffe9be5b455ffa538f34d78fa9e829eb.png

部署eureka集群,计划是部署两个eureka服务

eureka01服务

7fab31f221eb4b646782632e1c90d0fc.png

eureka02服务

a31de059826825b3c9b175518f7f78d1.png

查看eureka服务状态

6fa7945f54a7930953d96fab10c4650a.png

auth-server和iam-server基本是一样的

4.4不同的命名空间内的服务配置hostname访问

工作负载 -》服务发现 -》添加DNS记录 -》服务别名

新建命名空间other-proj

61bb1711fb1663fb60ecff85d4fca5c2.png
5bb403803a8e7125065053772bff7738.png

设置hostname映射

fa06aec785d380711895d9a74fe9aa91.png
dae1ce605a5591da1c7074a01576398e.png
f8fd69b250f2dea09bf76a6a7b7de66c.png

这样就可以other-proj命名空间的服务就可以通过eureka01访问到eureka01命名空间里的eureka01服务了

来源:https://my.oschina.net/teddyIH/blog/3098240

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐