kubernetes 留言版DEMO

kubernates hello world
1 关闭防火墙

$systemctl disable firewalld
$systemctl stop firewalld

2 安装etcd 和 kubernates

$yum install -y etcd kubernates

3 修改配置

docker /etc/sysconfig/docker
OPTIONS=‘--registry-mirror=http://06ec3c30.m.daocloud.io --selinux-enabled=false --insecure-registry gcr.io‘
kubernetes apiserver /etc/kubernates/apiserver
--admission-control 参数中的ServiceAccount 删除

4 顺序启动

$systemctl start etcd
$systemctl start docker
$systemctl start kube-apiserver
$systemctl start kube-controller-manager
$systemctl start kube-scheduler
$systemctl start kubelet
$systemctl start kube-proxy

单机版k8s 搭建完成

Hello word 留言板系统
依赖三个镜像:
docker.io/kubeguide/guestbook-php-frontend WEB前端
docker.io/kubeguide/redis-master 写留言
docker.io/kubeguide/guestbook-redis-slave 读取留言

1 创建master pod 和服务
编写 redis-master-controller.yaml

apiVersion: v1
kind: ReplicationController
metadata:
  name: redis-master
  labels:
    name: redis-master
spec:
  replicas: 2
  selector:
    name: redis-master
  template:
    metadata:
      labels:
        name: redis-master
    spec:
      containers:
      - name: master
        image: kubeguide/redis-master
        ports:
        - containerPort: 6379

发布到k8s集群

$kubectl create -f redis-master-controller.yaml

查看

$kubectl get rc
CONTROLLER CONTAINER(S) IMAGE(S) SELECTOR REPLICAS AGE
redis-master master kubeguide/redis-master name=redis-master 1 21d
$kubectl get po
NAME READY STATUS RESTARTS AGE
redis-master-69j7a 1/1 Running 7 20d

创建与之对应的service
编写 redis-master-service.yaml

apiVersion: v1
kind: Service
metadata:
  name: redis-master
  labels:
    name: redis-master
spec:
  ports:
  - port: 6379
    targetPort: 6379
  selector:
    name: redis-master
$kubectl create -f redis-master-service.yaml
$kubectl get svc
NAME CLUSTER_IP EXTERNAL_IP PORT(S) SELECTOR AGE
redis-master 10.254.38.83 <none> 6379/TCP name=redis-master 20d

2 创建redis-salve Pod 和服务

编写 redis-slave-controller.yaml

apiVersion: v1
kind: ReplicationController
metadata:
  name: redis-slave
  labels:
    name: redis-slave
spec:
  replicas: 2
  selector:
    name: redis-slave
  template:
    metadata:
      labels:
        name: redis-slave
    spec:
      containers:
      - name: slave
        image: kubeguide/guestbook-redis-slave
        env:
        - name: GET_HOSTS_FROM
          value: env
        ports:
        - containerPort: 6379

发布到k8s集群

$kubectl create -f redis-master-controller.yaml
$kubectl get rc
$kubectl get pod

创建 与之对应的service

编写 redis-slave-service.yaml

apiVersion: v1
kind: Service
metadata:
  name: redis-slave
  labels:
    name: redis-slave
spec:
  ports:
  - port: 6379
  selector:
    name: redis-slave
$kubectl create -f redis-slave-service.yaml

$kubectl get svc

3 创建frontend Pod 和服务

编写 frontend-controller.yaml

apiVersion: v1
kind: ReplicationController
metadata:
  name: frontend
  labels:
    name: frontend
spec:
  replicas: 3
  selector:
    name: frontend
  template:
    metadata:
      labels:
        name: frontend
    spec:
      containers:
      - name: frontend
        image: kubeguide/guestbook-php-frontend
        env:
        - name: GET_HOSTS_FROM
          value: env
        ports:
        - containerPort: 80

发布到k8s集群

$kubectl create -f frontend-controller.yaml
$kubectl get rc
$kubectl get pod

创建与之对应的service

编写 frontend-service.yaml

apiVersion: v1
kind: Service
metadata:
  name: frontend
  labels:
    name: fronted
spec:
  type: NodePort
  ports:
  - port: 80
    nodePort: 30001
  selector:
    name: frontend

创建服务

$kubectl create -f frontend-service.yaml

查看

$kuberctl get svc

4 通过浏览器访问
localhost:30001

备注 k8s需要容器 gcr.io/google_containers/pause

时间: 2024-10-31 14:02:48

kubernetes 留言版DEMO的相关文章

web storage 简单的网页留言版

html <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>简单的网页留言版</title> <script type="text/javascript" src="js/test6.js" ></script> </head> <body> <h1

vue.js介绍,常用指令,事件,以及制作简易留言版

一.vue是什么? 一个mvvm框架(库).和angular类似,比较容易上手.小巧,让我们的代码更加专注于业务逻辑,而不是去关注DOM操作 二.vue和angular之间的区别 vue--简单易学 指令以v-xx 一片html代码配合上json,再new出来vue实例 个人维护项目 适合:移动端项目,小巧 angular--上手难 指令以ng-xxx 所有属性和方法都挂在$scope身上 angular由google维护 适合:pc端项目 共同点:不兼容低版本的IE 三.vue的基本使用 1.

如何让vue项目跑起来(示例:阿里短视频上传项目vue版demo)

在cmd操作如下:node -vnpm -v 由于有些npm有些资源被屏蔽或者是国外资源的原因,经常会导致用npm安装依赖包的时候失败,所有我还需要npm的国内镜像---cnpmcnpm -v 报错,cnpm不是内部指令.解决办法如下:安装cnpmhttps://jingyan.baidu.com/article/9080802239521cfd90c80f55.html 完成之后,我们就可以用cnpm代替npm来安装依赖包了. 安装vue-cli脚手架构建工具 cnpm install -g

通过PHP前端后台交互/通过ajax前端后台交互/php基础传输数据应用/简单的留言版/简单的注册账户/简单的登录页/

  前  言  PHP     通过上一篇博客,注册账号与登录页面--前后台数据交互  跳转转到index主页,接下来进入主页留言板功能,通过ajax向后台传输数据,同时发表留言. 具体的内容分析如下: ① PHP中的数据传输-->>--在主页先添加基础HTML5基本框架,通过form表单提交数据 >>由主页传输给主页后台-->>主页后台经过转码保存实例化的文件 ②主页后台通过判断(是否保存文件)使用输出语句输出true或false,前台通过ajax中的post中的fu

轻松搞定laravel的curd操作搞定简易留言版(四)

一:目的开发laravel简易留言板 二:路由操作routes.php <?php //GET /msg/index 展示留言列表 //GET /msg/add 展示表单 //POST /msg/add 接受 POST 数据,并入库 //GET /msg/del/{id} 删除留言 //[GET,POST] /msg/up/{id} 修改留言 Route::get('msg/index','[email protected]'); Route::get('msg/add','[email pro

使用Android实现接口信息的留言版显示

关于这个篇日志,我上周末的时候已经写好了初稿,但是后来电脑安装程序的时候,出了问题重装了.结果没有备份好,这个星期也在忙着学习新的知识,也就把发表的事情搁置了.今天看到,一些同学上交了作业,都没有使用老师指定的接口实现.那么,我来分享一下,我的一点点成果. 看到标题,顾名思义,我今天只是和大家讲一下如何实现接口信息的显示,不包括添加信息. 接口帮助文档:http://api.wzhospital.cn/msg/help 根据查看接口文档,我们可以知道接口内部的一些信息结构. 当然,想要查看具体的

Kubernetes留言板

1.下载镜像 docker pull docker.io/kubeguide/guestbook-php-frontend docker pull docker.io/kubeguide/redis-master docker pull docker.io/kubeguide/guestbook-redis-slave 2.修改配置文件 /etc/kubernetes/apiserver中删除ServiceAccount KUBE_ADMISSION_CONTROL="--admission-c

iOS 网易新闻首页进化版Demo(MXSegmentedPager),自带平行头部拉伸

网易新闻首页类似的界面简直太常见了,需求不同自然做出来的效果不同了,之前 用ScrollView写过一个控制器的封装,但是这里根本没有考虑到控制器的复用以及预加 载机制,如果没考虑复用的话当界面爆炸的时候估计你的App会很卡,例如半塘这样 的,我抓包发现貌似会预加载当前界面后三个界面,让用户滑动的时候能第一时间看到 数据,这样的机制蛮不错的,今天来介绍个能复用的框架,顺带介绍个另一个高斯模糊 的Catagory. 上图 这里的三个界面分别是最普通的控制器,webview以及双TableView

阿里OSS存储,php版demo

最近项目移到云服务器,所以需要处理一下 Step 1. 初始化OSSClient SDK与OSS后台服务所有的交互都是通过OSSClient完成的.通过以下代码,可以生成OSSClient的实例: <?php require_once '/path/to/sdk/aliyun.php'; use \Aliyun\OSS\OSSClient; $client = OSSClient::factory(array( 'AccessKeyId' => '<access-key-id>',