Kubernetes权威指南第4版阅读笔记《单机事例入门》

docker镜像仓库

单机案例在这里插入图片描述

mac系统安装docker for mac即可,参考

启动mysql

mysql-rc.yaml

apiVersion: v1
kind: ReplicationController		#副本启动器RC,kind表示资源对象类型
metadata:
  name: mysql		#RC的名称,全局唯一
spec:
  replicas: 1			#pod副本期望数量
  selector:
    app: mysql			#查询符合目标的pod标签
  template:				#定义pod副本实例模版
    metadata:
      labels:
        app: mysql		#pod副本标签,对应selector
    spec:
      containers:		#pod内容器定义
      - name: mysql		#容器名称
        image: mysql:5.7     #书中未注明版本,拉取最新的镜像latest会导致jdbc连接出错
        ports:
        - containerPort: 3306		#容器端口
        env:									#注入容器的环境变量
        - name: MYSQL_ROOT_PASSWORD
          value: "123456"

注意:针对apiVersion备注,Kubernetes平台采用了“核心+外围扩展”的设计思路,在保持平台核 心稳定的同时具备持续演进升级的优势。Kubernetes大部分常见的核心资源对象都归属于v1这个核心API。比如Node、Pod、Service、 Endpoints、Namespace、RC、PersistentV olume等。在1.9版本之后引入了apps/v1这个正式的扩展API组。

mysql-svc.yaml

apiVersion: v1
kind: Service		#表明是k8s Service
metadata:
  name: mysql		#Service全局唯一名称
spec:
  ports:
    - port: 3306		#Service提供服务的端口
  selector:			#Service作用于符合标签的pod
    app: mysql

Cluster IP是在Service创建后由Kubernetes系统自动分配的, 其他Pod无法预先知道某个Service的Cluster IP地址。因此存在一个服务发现机制,能根据Service的唯一名称,容器可以从环境变量中获取Service对应的Cluster IP地址和端口,从而发起TCP/IP连接请求。

myweb-rc.yaml

apiVersion: v1
kind: ReplicationController
metadata:
  name: myweb
spec:
  replicas: 2
  selector:
    app: myweb
  template:
    metadata:
      labels:
        app: myweb
    spec:
      containers:
      - name: myweb
        image: kubeguide/tomcat-app:v1
        ports:
        - containerPort: 8080
        env:
        - name: MYSQL_SERVICE_HOST
          value: mysql

myweb-svc.yaml

apiVersion: v1
kind: Service
metadata:
  name: myweb
spec:
  type: NodePort			#连同nodePort表示Service开启了NodePort外网访问模式
  ports:
    - port: 8080				#容器内虚端口
      nodePort: 30001		#外网访问端口
  selector:
    app: myweb

使用kubectl命令工具依次创建mysql-rc、mysql-svc、myweb-rc、myweb-svc

kubectl create -f xxx.yaml

分别执行查看rc、service、pod

kubectl get rc
kubectl get svc
kubectl get pod

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值