把外部的服务,通过创建service和endpoint,把它映射到k8s内部来使用。

操作步骤:
在10.0.0.13上安装数据库

  1. yum install mariadb-server -y
  2. systemctl start mariadb.service
  3. systemctl enable mariadb,service
  4. 创建数据库的安全初始化
  5. mysql_secure_installation
  6. 先回车,再选n,一路y
  7. 根据原配置,创建数据库
  8. mysql #进入数据库
  9. 创建数据库
  10. create database wrodpress;
  11. 创建远程连接用户
  12. grant all on wordpress.* to wordpress@'%' identified by 'wordpress';

yml文件

  1. [root@k8s-master wordpress]# cat mysql-ep.yml
  2. apiVersion: v1
  3. kind: Endpoints
  4. metadata:
  5. name: mysql-wp
  6. namespace: wordpress
  7. subsets:
  8. - addresses:
  9. - ip: 10.0.0.13
  10. ports:
  11. - port: 3306
  12. protocol: TCP
  1. [root@k8s-master wordpress]# cat mysql-svc.yml
  2. apiVersion: v1
  3. kind: Service
  4. metadata:
  5. namespace: wordpress
  6. name: mysql-wp
  7. spec:
  8. ports:
  9. - port: 3306
  10. targetPort: 3306
  1. [root@k8s-master wordpress]# cat wordpress-rc.yml
  2. apiVersion: v1
  3. kind: ReplicationController
  4. metadata:
  5. namespace: wordpress
  6. name: wordpress
  7. spec:
  8. replicas: 1
  9. selector:
  10. app: wordpress
  11. template:
  12. metadata:
  13. labels:
  14. app: wordpress
  15. spec:
  16. volumes:
  17. - name: wordpress-web
  18. nfs:
  19. path: /data/wordpress-web
  20. server: 10.0.0.11
  21. containers:
  22. - name: wordpress
  23. image: 10.0.0.11:5000/wordpress:latest
  24. ports:
  25. - containerPort: 80
  26. volumeMounts:
  27. - mountPath: /var/www/html
  28. name: wordpress-web
  29. env:
  30. - name: WORDPRESS_DB_HOST
  31. value: 'mysql-wp'
  32. - name: WORDPRESS_DB_USER
  33. value: 'wordpress'
  34. - name: WORDPRESS_DB_PASSWORD
  35. value: 'wordpress'
  1. [root@k8s-master wordpress]# cat wordpress-svc.yml
  2. apiVersion: v1
  3. kind: Service
  4. metadata:
  5. namespace: wordpress
  6. name: wordpress
  7. spec:
  8. type: NodePort
  9. ports:
  10. - port: 80
  11. nodePort: 30009
  12. selector:
  13. app: wordpress

创建
kubectl create -f .

打开网页验证

k8s 映射 外部服务的更多相关文章

  1. [置顶] kubernetes将外部服务映射为内部服务

    在实际应用中,一般不会把mysql这种重IO.有状态的应用直接放入k8s中,而是使用专用的服务器来独立部署.而像web这种无状态应用依然会运行在k8s当中,这时web服务器要连接k8s管理之外的数据库 ...

  2. k8s~k8s里的服务Service

    k8s用命名空间namespace把资源进行隔离,默认情况下,相同的命名空间里的服务可以相互通讯,反之进行隔离. 服务Service 1.1 Service Kubernetes中一个应用服务会有一个 ...

  3. 【K8S】Service服务详解,看这一篇就够了!!

    k8s用命名空间namespace把资源进行隔离,默认情况下,相同的命名空间里的服务可以相互通讯,反之进行隔离. 1.1 Service Kubernetes中一个应用服务会有一个或多个实例(Pod, ...

  4. Kubernetes K8S之Service服务详解与示例

    K8S之Service概述与代理说明,并详解所有的service服务类型与示例 主机配置规划 服务器名称(hostname) 系统版本 配置 内网IP 外网IP(模拟) k8s-master Cent ...

  5. SpringCloud微服务实战——搭建企业级开发框架(三十五):SpringCloud + Docker + k8s实现微服务集群打包部署-集群环境部署

    一.集群环境规划配置 生产环境不要使用一主多从,要使用多主多从.这里使用三台主机进行测试一台Master(172.16.20.111),两台Node(172.16.20.112和172.16.20.1 ...

  6. [转帖]k8s 中的服务如何沟通

    k8s 中的服务如何沟通 https://www.jianshu.com/p/9fae09876eb7 本文将介绍 k8s 中的服务如何相互访问,例如后端服务访问数据库,不同类型的服务间的相互访问.并 ...

  7. Kubernetes使用Eedpoints连接外部服务端口

    Kubernetes使用Eedpoints连接外部服务端口 背景: 在Kubernetes的使用环境中,我们经常要连接外部的一些服务,比如mysql Elasticsearch kafka 等等外部的 ...

  8. Android 使用AIDL调用外部服务

    好处:多个应用程序之间建立共同的服务机制,通过AIDL在不同应用程序之间达到数据的共享和数据相互操作, 本文包括: 1 .创建AIDL 服务端.2 .创建AIDL 客户端. 3.客户端调用服务端提供的 ...

  9. 对于应用需要记录某个方法耗时的场景,必须使用clock_gettime传入CLOCK_MONOTONIC参数,该参数获得的是自系统开机起单调递增的纳秒级别精度时钟,相比gettimeofday精度提高不少,并且不受NTP等外部服务影响,能准确更准确来统计耗时(java中对应的是System.nanoTime),也就是说所有使用gettimeofday来统计耗时(java中是System.curre

    对于应用需要记录某个方法耗时的场景,必须使用clock_gettime传入CLOCK_MONOTONIC参数,该参数获得的是自系统开机起单调递增的纳秒级别精度时钟,相比gettimeofday精度提高 ...

随机推荐

  1. (转)ubuntu下如何安装使用SSH?

    转:http://os.51cto.com/art/201109/291634.htm ubuntu默认并没有安装ssh服务,如果通过ssh链接ubuntu(比如使用securecrt客户端来访问ub ...

  2. AutoCAD2016安装破解教程

    AutoCAD2016安装破解教程.本人亲自实验,破解成功,有效.以64位为例. 工具/原料   笔记本电脑 AutoCAD2016安装包 AutoCAD2016注册机(xf-adsk2016_x64 ...

  3. fatal error C1047: 对象或库文件“.\x64\Release\Des.obj”是使用比创建其他对象所用编译器旧的编译器创建的;请重新生成旧的对象和库

    问题描述: 在把一个32位的dll编译成64位的时候提示上面的错误 解决办法: >属性->常规->项目默认值->全程序优化  将这里的默认项 "使用链接时间代码生成& ...

  4. python去除rpm仓库中同名低版本的包

    编程思路1 遍历目标路径的rpm包并保存特性包列表: 2 利用python模块rpmUtils提取RPM包的特征信息:包名  版本号 架构 3 遍历特性列表中存在重复包名的rpm, 将低版本的rpm包 ...

  5. Reqests----Get请求之参数化

    一.环境安装 >>pip install requests 注意:pip很容易就会版本升级,如果用python3的,请使用pip3 install requests 1.初始化版本 2.把 ...

  6. Django学习铺垫

    Web框架本质 所有的web服务本质都是一个socket服务端,用户浏览器就是一个socket客户端,这样就实现了自己的web框架 ,但是自己的写的框架肯定很low,各种工能崩溃,所以我们就要学习py ...

  7. python--reflect

    一.反射 python 中用字符串的方式操作对象的相关属性,python 中一切皆对象,都可以使用反射 用eval 有安全隐患,用 反射就很安全 1.反射对象中的属性和方法 class A: a_cl ...

  8. 10种JavaScript特效实例让你的网站更吸引人

    我们有三种主要的方法(从难到易):自己动手写脚本;使用类似于jQuery和mooTools的JavaScript框架(可以让编写代码变得更容易些);使用能工作于现有的JavaScript框架下的提前预 ...

  9. [转载]A星寻路算法介绍

    转载自:http://www.raywenderlich.com/zh-hans/21503/a%E6%98%9F%E5%AF%BB%E8%B7%AF%E7%AE%97%E6%B3%95%E4%BB% ...

  10. Sublime Text3中MarkDown的使用

    前言 当我们想要在Sublime文本编辑器中编辑markdown时,需要先安装markdown插件,因为Sublime里默认没有安装该插件,同时在编辑markdown文本时可以实时预览编辑效果. 具体 ...