rancher搭建kubernetes集群

实验环境: 利用rancher搭建kubernetes集群,及搭建和关联harbor私有镜像库。

          rancher:http://10.10.10.10:8888
          kubernetes:10.10.10.10
          harbor:10.10.10.100
          images:10.10.10.100/test_nginx:latest
          app:nginx

实验目的:

     一.实践docker:search pull、run、tag、build、push功能。了解参数含义
           #docker search *imagesname
           #docker pull   *imagesname
           #docker run  -i/-t/-d   -p 发布端口:容器端口  --name 容器名  *imagesname:version   /bin/bash
           #docker tag  *oldimagesname *newimagesname  or  私用仓库地址/project::version  (注释仓库地址方便后面push)
           #docker build -d 容器名   *imagesname:version  (-d  container保持后台允许状态)
           #docker push 私有仓库地址/project::version (先注册上/usr/lib/systemd/system/docker.service  为ExecStart=/usr/bin/dockerd  --insecure-registry=10.10.10.100, 再docker login 10.10.10.100  )
           #docker ps -a(all) /-l(最后任务) /-q(简短信息)

     二.通过Dockerfile 构建镜像,测试结果。关联私有镜像库,推送镜像文件。
      touch Dockerfile

——————————————————————————————————————————————————————————————————————————————————————————————————————

FROM  centos:latest

MAINTAINER lvy
ADD http://nginx.org/download/nginx-1.14.0.tar.gz .

RUN yum install -y pcre-devel wget net-tools gcc zlib zlib-devel make openssl-devel
RUN useradd -M -s /sbin/nologin nginx
RUN tar -zxvf nginx-1.14.0.tar.gz
RUN mkdir -p /usr/local/nginx
RUN cd nginx-1.14.0 && ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module && make && make install
RUN ln -s /usr/local/nginx/sbin/* /usr/local/bin/

#EXPOSE 映射端口
EXPOSE 80 8080

#CMD 运行以下命令
CMD ["nginx", "-g", "daemon off;"]

——————————————————————————————————————————————————————————————————————————————————————————————————————

生成自定义镜像

执行:docker build -t  imagesname:version .  (.代表Dockerfile 的相对路径)

测试 container 服务

#docker run -p 发布端口:容器端口  --name 容器名  *imagesname:version

将新镜像推送到私有仓库

1.docker 注册私有仓库  添加/usr/lib/systemd/system/docker.service文件下
ExecStart=/usr/bin/dockerd  --insecure-registry=10.10.10.100    

2.docker登录私用仓库 (搭建harbor已新建用户名和密码)

#docker login 10.10.10.100 

3.tag目标镜像文件

#docker tag  *oldimagesname   私用仓库地址/project::version

4.推送目标文件

1. #docker push 私有仓库地址/project::version

      三.启用kubectl  cli界面
           #mkdir .kube
           #touch .kube/config
           #vim .kube/config

添加kubernetes 命令行配置脚本。

执行脚本:

           #curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl && chmod +x kubectl && cp kubectl /usr/local/bin

over! 使用kubectl get namespace显示输出,测试命令启用成功。

      四.在kubernetes集群使用kubectl 命令生成container,运行app

生成nginx_deployment.ymal和nginx_service.yaml文件

nginx_deployment.ymal ——————————————————————————————————————————————————————————————————————————————————————————————————————

kind: Deployment
apiVersion: extensions/v1beta1
metadata:
  name: nginx
spec:
  replicas: 1
  template:
    metadata:
      labels:
        name: nginx
    spec:
      containers:
      - name: nginx
        image: 10.10.10.100/test/nginx:latest
        ports:
        - containerPort: 80
          protocol: TCP

——————————————————————————————————————————————————————————————————————————————————————————————————————

nginx_service.yaml
——————————————————————————————————————————————————————————————————————————————————————————————————————

kind: Service
apiVersion: v1
metadata:
  name: nginx
  labels:
    name: nginx
spec:
  type: NodePort
  ports:
  - protocol: TCP
    nodePort: 31001
    targetPort: 80
    port: 80
  selector:
    name: nginx

——————————————————————————————————————————————————————————————————————————————————————————————————————

运行create 命令生成pod和svc

#kubectl create -f nginx_deployment.ymal

#kubectl create -f nginx_service.yaml 


测试app服务OK
curl:10.10.10.10:31001

#kubectl get pods
确认pod的创建结果

#kubectl get pods -o wide
确认pod所在的node

原文地址:https://www.cnblogs.com/blablablabla/p/9646269.html

时间: 2024-08-02 05:26:11

rancher搭建kubernetes集群的相关文章

阿里云ECS搭建Kubernetes集群踩坑记

阿里云ECS搭建Kubernetes集群踩坑记 [TOC] 1. 现有环境.资源 资源 数量 规格 EIP 1 5M带宽 ECS 3 2 vCPU 16 GB内存 100G硬盘 ECS 3 2 vCPU 16 GB内存 150G硬盘 SLB 2 私网slb.s1.small 2. 规划 坑: 上网问题,因为只有一个EIP,所有其它节点只能通过代理上网; 负载均衡问题,因为阿里不支持LVS,负载均衡TCP方式后端又不支持访问负载均衡,HTTP和HTTPS方式,只支持后端协议为HTTP; 为了避免上

基于 CentOS 7 搭建kubernetes集群

基于Centos7构建Kubernetes平台 一.实验环境 3台centos7的主机: master  192.168.111.131部署etcd,kube-apiserver,kube-controller-manager,kube-scheduler 4个应用. node01  192.168.111.130  部署docker,kubelet, kube-proxy  3个应用 node02  192.168.111.129  部署docker,kubelet, kube-proxy  

kubeadm搭建kubernetes集群

一.环境准备首先我的三个ubuntu云主机的配置如下 cpu数量 内存 磁盘 Ubuntu 2 8G 20G 18.04LTS 而且能保证三台机器都能连接外网这里的所有命令都是在root用户下操作的二.安装 1.在所有的节点上安装Docker和kubeadm [email protected]:~# apt-get install curl -y [email protected]:~# curl -s https://packages.cloud.google.com/apt/doc/apt-

使用Rancher和私有仓库快速搭建Kubernetes集群

来来来,先出题:Rancher可以快速部署Kubernetes,但其使用的gcr.io上的镜像无法下载怎么办?使用Rancher可以快速部署Kubernetes,但我们需要下载哪些镜像?Rancher支持私有镜像仓库,如何设置呢? 解题思路: 国内网络虽然不能直接访问gcr.io服务器,但是能够访问hub.docker.com镜像仓库,而hub.docker.com能够访问gcr.io服务器.利用这个特性,以及hub.docker.com自身的"Create Automated Build&qu

使用Kubeadm(1.13)快速搭建Kubernetes集群

Kubeadm是管理集群生命周期的重要工具,从创建到配置再到升级,Kubeadm处理现有硬件上的生产集群的引导,并以最佳实践方式配置核心Kubernetes组件,以便为新节点提供安全而简单的连接流程并支持轻松升级.随着Kubernetes 1.13 的发布,现在Kubeadm正式成为GA. 准备 首先准备2台虚拟机(CPU最少2核),我是使用Hyper-V创建的2台Ubuntu18.04虚拟机,IP和机器名如下: 172.17.20.210 master 172.17.20.211 node1

从centos7镜像到搭建kubernetes集群(kubeadm方式安装)

在网上看了不少关于Kubernetes的视频,虽然现在还未用上,但是也是时候总结记录一下,父亲常教我的一句话:学到手的东西总有一天会有用!我也相信在将来的某一天会用到现在所学的技术.废话不多扯了.... 一.前期准备 1.k8s-master01:master主服务器(存在单点故障) 2.k8s-node01.k8s-node02:2个工作节点 3.Harbor:私有仓库(简单记录搭建Harbor私服仓库) 4.Router:软路由(由于kubeadm是存放在谷歌云的,国内无法访问,K8S集群搭

Ubuntu 16.04下搭建kubernetes集群环境

简介 目前Kubernetes为Ubuntu提供的kube-up脚本,不支持15.10以及16.04这两个使用systemd作为init系统的版本. 这里详细介绍一下如何以非Docker方式在Ubuntu16.04集群上手动安装部署Kubernetes的过程. 手动的部署过程,可以很容易写成自动部署的脚本.同时了解整个部署过程,对深入理解Kubernetes的架构及各功能模块也会很有帮助. 环境信息 版本信息 组件 版本 etcd 2.3.1 Flannel 0.5.5 Kubernetes 1

ubuntu物理机上搭建Kubernetes集群 -- 准备

准备工作 1.三台ubuntu主机: 操作系统:ubuntu-16.04.1-server-amd64 docker: 1.安装 使用命令 sudo apt-get install docker sudo apt-get install docker #运行docker服务端 dockerd 2.将当前用户加入docker组,否则每次运行docker都要加上sudo超级权限,比较麻烦 sudo groupadd docker sudo gpasswd -a nwlab docker 查看 用户组

本地kubeadm搭建kubernetes集群

一.环境准备 (每个机器都是centos7.6)每个机器执行: yum install chronyd -y systemctl start chronydvim /etc/hosts127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4::1 localhost localhost.localdomain localhost6 localhost6.localdomain6192.168.8.13