栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

部署memcached(dokcer|kubernetes)

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

部署memcached(dokcer|kubernetes)

部署memcached dokcer&&kubernetes
  • 概述
  • 部署 memcached
    • docker 运行 memcached
    • kubernetes 运行memcached
    • 测试是否部署成功

概述

Memcached 是一个通用的分布式内存缓存系统。它通常用于通过在 RAM 中缓存数据和对象来加速动态数据库驱动的网站,以减少必须读取外部数据源(例如数据库或 API)的次数。

Memcached 的 API 提供了一个分布在多台机器上的非常大的哈希表。当表已满时,后续插入会导致按最近最少使用的顺序清除较旧的数据。使用 Memcached 的应用程序通常将请求和添加添加到 RAM中,然后再使用较慢的后备存储,例如数据库。

部署 memcached

下面部署所涉及到文件皆可在gitee仓库上获取

docker 运行 memcached
version: '3'

services:
  memcached:
    image: docker.io/bitnami/memcached:1
    container_name: memcached
    ports:
      - '11211:11211'
    environment:
      # 指定缓存大小 (MB)
      MEMCACHED_CACHE_SIZE: 128
      # 设置最大连接数
      MEMCACHED_MAX_CONNECTIONS: 2000
      # 设置线程数
      MEMCACHED_THREADS: 4
      # 创建管理用户,默认不启用身份验证,管理员默认为 root
      MEMCACHED_USERNAME: root
      MEMCACHED_PASSWORD: root123
    networks:
      - memcached-network

networks:
  memcached-network:
    driver: bridge
    ipam:
      config:
        # 我这指定了网段,可有可无的操作
        - subnet: 192.168.88.0/24
docker-compose up -d
kubernetes 运行memcached
---
kind: Deployment
apiVersion: apps/v1
metadata:
  labels:
    app: memcached-pod
  name: memcached-pod
  namespace: default
spec:
  selector:
    matchLabels:
      app: memcached-pod
  template:
    metadata:
      labels:
        app: memcached-pod
    spec:
      containers:
        - name: nginx
          image: docker.io/bitnami/memcached:1
          imagePullPolicy: IfNotPresent

---
apiVersion: v1
kind: Service
metadata:
  name: memcached-svc
  namespace: goeasy3
spec:
  type: NodePort
  ports:
    - name: memcached
      port: 11211
      protocol: TCP
      targetPort: 11211
      nodePort: 30121
  selector:
    app: memcached-pod
kubectl apply  -f memcached.yaml
测试是否部署成功

编写一个简单的Python连接脚本测试一下

#! /usr/bin/env  python3
# -*- coding: utf8 -*-

import bmemcached

# 连接
mc = bmemcached.Client(['192.168.50.134:11211'], 'root', 'root123')

mc.set('name', ['f', 'a', 0])
print(mc.get('name'))
python3 memcached_connect.py

到此memcached就简单部署完成了,什么时候用直接就可以拿去运行,非常方便测试、开发。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/827213.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号