k8s-redis 集群部署(李作强)
Kubernetes 创建redis集群的时候 会在所有的子节点创建。一个redis-master和两个redis-slave,两个redis-slave从redis-master进行同步数据使用程序写入的时候写入master 从数据库都有数据了。
创建redis-master-controller.yaml
[root@k8s-master-1 ~]# vim redis-master-controller.yamlapiVersion: v1
kind: ReplicationController
metadata:
name: redis-master
spec:
replicas: 1
selector:
name: redis-master
template:
metadata:
name: redis-master
labels:
name: redis-master
spec:
containers:
- name: redis-master
image: kubeguide/redis-master
ports:
- containerPort: 6379
发布到kubernetes集群,自动创建pod
[root@k8s-master-1 ~]# kubectl create -f redis-master-controller.yaml [
root@k8s-master-1 ~]# kubectl get rc
[root@k8s-master-1 ~]# kubectl get pods
创建redis-master-service.yaml
[root@k8s-master-1 ~]# vim redis-master-service.yaml
apiVersion: v1
kind: Service
metadata:
name: redis-master
labels:
name: redis-master
spec:
type: NodePort
ports:
- port: 6379
targetPort: 6379
nodePort: 30001
selector:
name: redis-master
发布到kubernetes集群,自动创建service
[root@k8s-master-1 ~]# kubectl create -f redis-master-service.yaml
[root@k8s-master-1 ~]# kubectl get services
创建redis-slave-controller.yaml
[root@k8s-master-1 ~]# vim redis-slave-controller.yaml
apiVersion: v1
kind: ReplicationController
metadata:
name: redis-slave
spec:
replicas: 2
selector:
name: redis-slave
template:
metadata:
name: redis-slave
labels:
name: redis-slave
spec:
containers:
- name: redis-slave
image: kubeguide/guestbook-redis-slave
env:
- name: GET_HOSTS_FROM
value: env
ports:
- containerPort: 6379
发布到kubernetes集群,自动创建pod
[root@k8s-master-1 ~]# kubectl create -f redis-slave-controller.yaml
[root@k8s-master-1 ~]# kubectl get rc
[root@k8s-master-1 ~]# kubectl get pods
创建redis-slave-service.yaml
[root@k8s-master-1 ~]# vim redis-slave-service.yaml
apiVersion: v1
kind: Service
metadata:
name: redis-slave
labels:
name: redis-slave
spec:
type: NodePort
ports:
- port: 6379
nodePort: 30002
selector:
name: redis-slave
发布到kubernetes集群,自动创建service
[root@k8s-master-1 ~]# kubectl create -f redis-slave-service.yaml
[root@k8s-master-1 ~]# kubectl get services
删除pod,svc
[root@k8s-master-1 ~]# kubectl delete -f redis-master-controller.yaml
[root@k8s-master-1 ~]# kubectl delete -f redis-master-service.yaml [
root@k8s-master-1 ~]# kubectl delete -f redis-slave-controller.yaml
[root@k8s-master-1 ~]# kubectl delete -f redis-slave-service.yaml
暴露的master端口 30001
node端口 30002 因为node是副本创建的创建了2个连接一个测试就可以了。从只读 无法删除新增 master可以新增删除
SpringBoot连接redis主从配置
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>spring.redis.database=0
spring.redis.host=masterip
spring.redis.port=30001
spring.redis.pool.testOnBorrow=true
spring.redis.pool.blockWhenExhausted=true
spring.redis.pool.numTestsPerEvictionRun=3
spring.redis.pool.timeBetweenEvictionRunsMillis=-1@SpringBootApplication
@RestController
public class DemoApplication {@Autowired
private StringRedisTemplate stringRedisTemplate;public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}@RequestMapping(value = "/")
public void init(){
stringRedisTemplate.opsForValue().set("messages" ,String.valueOf(System.currentTimeMillis()));
String s = stringRedisTemplate.opsForValue().get("messages").toString();
System.out.println(s);
}
}
****新增的时候会同步到从库,读取的时候回随机从从库读取的***
k8s-redis 集群部署(李作强)相关推荐
- k8s部署zookeeper,kafka集群(李作强)
采用网上镜像:mirrorgooglecontainers/kubernetes-zookeeper:1.0-3.4.10 准备共享存储:nfs,glusterfs,seaweed或其他,并在node ...
- k8s部署MongoDB集群(李作强)
编写service的文件: [root@k8s-master-1 mongodb]# vim service.yaml apiVersion: v1 kind: Service metadata: n ...
- Redis集群部署文档(Ubuntu15.10系统)
Redis集群部署文档(Ubuntu15.10系统) (要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系 ...
- 3.redis集群部署3主3从
redis集群部署 一:安装redis (使用redis3.0.6版本),同<1.redis安装> 1.下载源码 $ tar xzf redis-3.0.6.tar.gz $ cd red ...
- 这一篇 K8S(Kubernetes)集群部署 我觉得还可以
点赞再看,养成习惯,微信搜索[牧小农]关注我获取更多资讯,风里雨里,小农等你,很高兴能够成为你的朋友. 国内安装K8S的四种途径 Kubernetes 的安装其实并不复杂,因为Kubernetes 属 ...
- 自动化运维之k8s——Kubernetes集群部署、pod、service微服务、kubernetes网络通信
目录 一.Kubernetes简介 1.Kubernetes简介 2.kubernetes设计架构 3.Kubernetes核心组件 4.kubernetes设计结构 二.Kubernetes部署 1 ...
- redis集群部署步骤
1.yum 安装依赖 yum install gcc unzip wget 2.编译安装redis,编译安装的目的是源码包内包含了接下来创建redis集群所需要的 redis-trib.rb脚本 ma ...
- redis集群部署一直卡在Waiting for the cluster to join ......
2019独角兽企业重金招聘Python工程师标准>>> 里是redis多机多节点集群部署的问题解决! 这个是困扰了我最久的问题,使用cluster meet ip port命令无效, ...
- k8s dashboard_k8s集群部署Dashboard
部署Dashboard(Web UI) * dashboard-deployment.yaml // 部署Pod,提供Web服务 * dashboard-rbac.yaml // 授权访问apiser ...
- Redis集群部署(半自动)
1.安装Redis 参考:Redis单机版半自动安装 2.集群配置 方便起见我们是用一台虚拟机部署集群,使用不同的端口号进行区分不同的节点,规划如下表: 角色 IP 端口号 master-0 127. ...
最新文章
- Vue.js的复用组件开发流程
- @description iPhoneX炫彩渐变背景实现
- Linux下搭建asp.net运行环境
- 微信小程序需要https后台的创业机会思考
- .net core 杂记:用Autofac替换内置容器
- 使用 TABLESAMPLE 限制结果集
- IDEA编译运行Springboot+vue项目卡死,一直building和copying resources
- vue弹层时禁止页面滚动
- base64码通过http传输 +号变 空格 以及 图片编码后字符串较长导致POST提交失败 问题解决...
- java 基础 —— 文件操作(File)
- 延时执行和取消延时执行
- 智能会议系统集成解决方案
- java实现的PC小说下载器+阅读器
- 根据王小云教授的算法写的MD5碰撞的程序[c源代码]
- 《HTML CSS JavaScript 网页制作》第六章-创建框架结构网页
- sklearn.utils.Bunch的属性
- 【BZOJ1001】狼抓兔子
- Geometric GAN
- MarkDown折叠语法
- office出现应用程序错误无法正常启动(0xc0000142)
热门文章
- 基于Kibana的可视化监控报警插件 KAAE 的配置
- Win10环境下yolov8快速配置与测试
- 第20天-WEB漏洞-文件上传之基础及过滤方式
- 学术腐败从娃娃抓起:21岁外企副总真相
- SpringBoot Consider defining a bean of type 'com.xxx.xxx.dao.UserDao' in your configuration.
- 云计算和超级计算机一样吗,云计算和超级计算机有什么关系?
- 《祝全世界最好的女孩生日快乐》
- 帮助类HLHelper(持续更新)
- PADS使用过程中出现“发生严重的运行错误,请按“确认”关闭程序”的解决方法
- IPv4 与 IPv6 的比较