Kubernetes学习笔记之安装minikube并运行个简单应用程序
前言:本笔记仅记录学习记录,可能存在错误!!!使用的环境是Ubuntu Desktop 20.04,也有用Windows 10 操作的,根据的文档是minikube的文档教程,链接:https://minikube.sigs.k8s.io/docs/start/ ,使用此文档教程之前请确保已经安装了容器引擎,如Docker,并且要确保CPU核心数是双核及以上,不然会报错“the number of available CPUs 1 is less than the required 2”。
笔记内容:
- 下载软件安装
- 运行minikube集群
- 与集群交互
- 部署应用
- 管理集群
1、下载软件安装
下载软件安装使用的是debian分支打包好的包,执行命令:
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube_1.9.1-0_amd64.deb #-O参数是使用Http协议,-L参数是跟随重定向。此命令使用curl工具下载minikube_1.9.1-0_amd64.deb文件,下载完成后就可以执行安装
sudo dpkg -i minikube_1.9.1-0_amd64.deb #执行安装.deb包,-i参数为install

2、运行
安装成功后,就可以进行运行操作了,执行命令:
minikube start #运行minikube,第一次运行过程中会下载镜像

3、与集群交互
当运行minikube运行成功,就可以查看minikube运行的pods了,执行命令:
sudo snap install kubectl --classic #安装kubectl
kubectl get pods -A #查看所有的pods

也可以打开dashboard查看,开启dashboard会打开浏览器页面,执行命令:
minikube dashboard #启动dashboard
4、部署简单应用程序
部署应用程序之前需要有镜像,minikube里面是包含了一个docker容器引擎的,里面有一个名字为k8s.gcr.io/echoserver的用作测试的镜像,执行命令:
minikube ssh #进入minikube终端
docker images #查看内置的docker镜像
exit #退出minikube终端

有镜像,就可以使用命令是kubectl deployment xxx来部署应用程序了,执行命令:
kubectl create deployment hello-minikube --image=k8s.gcr.io/echoserver:1.4 #--image是镜像,hello-minikube是部署的应用程序名称
kubectl get deployment #查看部署的应用程序信息,包括是否为ready状态

ready状态下,我们就可以继续暴露应用程序的端口,类型--type参数有三种:ClusterIP, NodePort, or LoadBalancer,默认为ClusterIP,执行命令:
kubectl expose deployment hello-minikube --type=NodePort --port=8080 #设置部署的应用程序hello-minikube暴露8080端口,类型为NodePort(在每个Node上分配一个端口作为外部访问入口)
kubectl get services hello-minikube #查看创建的hello-minikube服务
kubectl port-forward service/hello-minikube 7080:8080 #设置端口转发


这时候,端口转发已经设置好了,打开浏览器输入地址locahost:7080即可访问到部署的应用程序,如下图所示:

5、管理集群
minikube pause #暂停集群而不影响部署的应用程序
minikube stop #停止集群,相对应的是minikube start启动集群
minikube config set memory 2048 #设置内存大小为2048MB,设置后创建新的集群会使用改配置
minikube addons list #查看扩展插件信息
minikube delete #删除集群

Kubernetes学习笔记之安装minikube并运行个简单应用程序的更多相关文章
- 【Kubernetes学习笔记】-使用Minikube快速部署K8S单机学习环境
介绍 https://minikube.sigs.k8s.io/docs/ Minikube 用于快速在本地搭建 Kubernetes 单节点集群环境,它对硬件资源没有太高的要求,方便开发人员学习试用 ...
- Kubernetes 学习笔记(一):基础概念
个人笔记,仅本人查阅使用,不保证正确. 零.微服务 微服务架构专注于应用解耦合,通过将应用彻底地组件化和服务化,每个微服务只包含一个非常小的功能,比如权限管理.日志收集等等.由这一组微服务组合起来,提 ...
- CentOS学习笔记--Tomcat安装
Tomcat安装 通常情况下我们要配置Tomcat是很容易的一件事情,但是如果您要架设多用户多服务的Java虚拟主机就不那么容易了.其中最大的一个问题就是Tomcat执行权限.普通方式配置的Tomca ...
- OracleDesigner学习笔记1――安装篇
OracleDesigner学习笔记1――安装篇 QQ:King MSN:qiutianwh@msn.com Email:qqking@gmail.com 一. 前言 Oracle是当 ...
- Kubernetes学习笔记(八):Deployment--声明式的升级应用
概述 本文核心问题是:如何升级应用. 对于Pod的更新有两种策略: 一是删除全部旧Pod之后再创建新Pod.好处是,同一时间只会有一个版本的应用存在:缺点是,应用有一段时间不可用. 二是先创建新Pod ...
- ZooKeeper学习笔记三:使用ZooKeeper实现一个简单的配置中心
作者:Grey 原文地址:ZooKeeper学习笔记三:使用ZooKeeper实现一个简单的配置中心 前置知识 完成ZooKeeper集群搭建以及熟悉ZooKeeperAPI基本使用 需求 很多程序往 ...
- ZooKeeper学习笔记四:使用ZooKeeper实现一个简单的分布式锁
作者:Grey 原文地址: ZooKeeper学习笔记四:使用ZooKeeper实现一个简单的分布式锁 前置知识 完成ZooKeeper集群搭建以及熟悉ZooKeeperAPI基本使用 需求 当多个进 ...
- Android(java)学习笔记219:开发一个多界面的应用程序之两种意图
1.两种意图: (1)显式意图: 在代码里面用intent设置要开启Activity的字节码.class文件: (2)隐式意图: Android(java)学习笔记218:开发一个多界面的应用程序之人 ...
- Android(java)学习笔记162:开发一个多界面的应用程序之两种意图
1.两种意图: (1)显式意图: 在代码里面用intent设置要开启Activity的字节码.class文件: (2)隐式意图: Android(java)学习笔记218:开发一个多界面的应用程序之人 ...
随机推荐
- tcp/ip原理/三次握手/四次挥手
@ tcp/ip原理 1.1 tcp/ip三次握手 1.1.1 建立过程说明 a) 由主机A发送建立TCP连接的请求报文, 其中报文中包含seq序列号, 是由发送端随机生成的, 并且还将报文中SY ...
- rabbitmq3.6.6安装,环境centos7
一,需求描述 在centos7上安装rabbitmq3.6.6 附上安装脚本 ,附上官网地址 http://www.rabbitmq.com/ ,从这上面可以下载rabbitmq-server-3.6 ...
- Java中字符串替换方法
replaceAll方法 public String replaceAll(String regex, String replacement) replace方法 public String repl ...
- Ecshop V2.7代码执行漏洞分析
0x01 此漏洞形成是由于未对Referer的值进行过滤,首先导致SQL注入,其次导致任意代码执行. 0x02 payload: 554fcae493e564ee0dc75bdf2ebf94caads ...
- angular8 在componet里面跳转新的地址页面
this.router.navigate(['/teacher/course/detail/' + id]);
- Docker 快速部署 Django项目到云服务器
项目结构: 1,dockerfile FROM python:3.7 RUN mkdir -p /usr/src/app WORKDIR /usr/src/app COPY pip.conf /roo ...
- [EF] - 全连接
在EntityFramework里有个DeflautIfEmpty方法可以用来表示数据库里的左联接或者右连接: http://msdn.microsoft.com/en-us/library/bb39 ...
- 任务调度框架Quartz快速入门!
目录 Quartz是什么 Quartz中的重要API及概念 超重要API 重要概念 Quartz设计理念:为什么设计Job和Trigger? 最简单的Quartz使用案例 Job实例和JobDetai ...
- easyui模板页面 不良调查
<%@page import="com.xy.cc.util.CUtil" %><%@page import="com.xy.cc.bean.UserP ...
- redis错误解决
第一次运行redis-server的时候闪退 win+R运行cmd打开命令行 进入redis根目录 输入 redis-server.exe redis.windows.conf 查看运行状态 此时如果 ...