首页 云计算 服务器 大数据 存储 IT 安全 物联网 软件 商品

云计算

云趋势频道旗下栏目: 云资讯 云安全 云开发 云趋势

使用Kubernetes不得不知道的四大神器!

来源:开源最前线   发布时间:2019-07-18
摘要:开源最前线编译 编译自:https://opensource.com/article/19/6/tools-drive-kubernetes 想要精通Kubernetes,你最好学习一些基本类型的Kubernetes构建的应用程序,学习最简单的原语集,你可以通过它们学习如何实现生产级的应用程序部署(即高可用性 [HA]、

开源最前线编译

编译自:https://opensource.com/article/19/6/tools-drive-kubernetes

想要精通Kubernetes,你最好学习一些基本类型的Kubernetes构建的应用程序,学习最简单的原语集,你可以通过它们学习如何实现生产级的应用程序部署(即高可用性 [HA]、多容器、多应用程序)。

本文,猿妹将和大家分享4个有助于你快速灵活使用Kubernetes的工具

1、Katacoda

Katacoda无疑是测试Kubernetes集群最简单的方法。只需单击鼠标,就可以将基于web的终端直接插入到正在运行的Kubernetes集群。Katacoda不仅可以用于学习,娱乐也是可以的,我甚至用它来演示和测试新想法,它提供了一个完整的临时环境,用完还能回收

Katacoda有一个更高级的实验环境,我在过去几年里运行的Linux Container Internals Lab 都是在 Katacoda 中构建的

Katacoda在其主站点上维护了大量Kubernetes和云教程,并与Red Hat合作支持OpenShift的学习门户。这两者都是很好的学习资源。

2、Podman generate kube

podman generate kube命令是一个很好的子命令,它帮助用户从运行简单容器的简单容器引擎过渡到多容器的集群。Podman通过让你启动几个容器,然后导出Kube YAML,并在Kubernetes中启动它们。看看这个(你可以在这个Katacoda Lab运行它,其中已经有Podman和OpenShift)。

首先,运行容器的语法与Docker惊人地相似:

  1. podman run -dtn two-pizza  quay.io/fatherlinux/two-pizza 

但这个是其它容器引擎实现不了的:

  1. podman generate kube two-pizza 

输出如下:

  1. # Generation of Kubernetes YAML is still under development! 
  2. # Save the output of this file and use kubectl create -f to import 
  3. # it into Kubernetes. 
  4. # Created with podman-1.3.1 
  5. apiVersion: v1 
  6. kind: Pod 
  7. metadata: 
  8.   creationTimestamp: "2019-06-07T08:08:12Z" 
  9.   labels: 
  10.     app: two-pizza 
  11.   name: two-pizza 
  12. spec: 
  13.   containers: 
  14.   - command: 
  15.     - /bin/sh 
  16.     - -c 
  17.     - bash -c 'while true; do /usr/bin/nc -l -p 3306 < /srv/hello.txt; done' 
  18.     env: 
  19.     - name: PATH 
  20.       value: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin 
  21.     - name: TERM 
  22.       value: xterm 
  23.     - name: HOSTNAME 
  24.     - name: container 
  25.       value: oci 
  26.     image: quay.io/fatherlinux/two-pizza:latest 
  27.     name: two-pizza 
  28.     resources: {} 
  29.     securityContext: 
  30.       allowPrivilegeEscalation: true 
  31.       capabilities: {} 
  32.       privileged: false 
  33.       readOnlyRootFilesystem: false 
  34.     tty: true 
  35.     workingDir: / 
  36. status: {} 
  37. --- 
  38. apiVersion: v1 
  39. kind: Service 
  40. metadata: 
  41.   creationTimestamp: "2019-06-07T08:08:12Z" 
  42.   labels: 
  43.     app: two-pizza 
  44.   name: two-pizza 
  45. spec: 
  46.   selector: 
  47.     app: two-pizza 
  48.   type: NodePort 
  49. status: 
  50.   loadBalancer: {} 

如今,你已经有了一些可运行的作Kubernetes YAML,你可以通过它来学习练习等,-s 标志可以为你创造一项服务。布伦特•博德(Brent Baude)依然在不断添加新功能。想要更深入地了解,请查看他的博客文章

3、oc new-app

最火资讯