1. 程式人生 > >ksonnet 一個簡化編寫以及部署kubernetes的工具

ksonnet 一個簡化編寫以及部署kubernetes的工具

ksonnet 是一個基於jsonnet的快速簡化kubernetes yaml 配置的工具,可以實現配置的複用
同時也包含一個registry 的概念,可以實現可複用元件的分發,同時支援helm

環境準備

  • 安裝cli

    使用mac 系統

brew install ksonnet/tap/ks
  • 包含的命令
ks --help
----

Usage:
  ks [flags]
  ks [command]

Available Commands:
  apply Apply local Kubernetes manifests (components) to remote clusters
  component Manage ksonnet components
  delete Remove component-specified Kubernetes resources from remote clusters
  diff Compare manifests, based on environment or location (local or remote)
  env Manage ksonnet environments
  generate Use the specified prototype to generate a component manifest
  help Help about any command
  import Import manifest
  init Initialize a ksonnet application
  module Manage ksonnet modules
  param Manage ksonnet parameters for components and environments
  pkg Manage packages and dependencies for the current ksonnet application
  prototype Instantiate, inspect, and get examples for ksonnet prototypes
  registry Manage registries for current project
  show Show expanded manifests for a specific environment.
  upgrade Upgrade ks configuration
  validate Check generated component manifests against the server's API
  version Print version information for this ksonnet binary

Flags:
      --dir string Ksonnet application root to use; Defaults to CWD (default "/Users/dalong")
  -h, --help help for ks
      --tls-skip-verify Skip verification of TLS server certificates
  -v, --verbose count Increase verbosity. May be given multiple times.

Use "ks [command] --help" for more information about a command.

基本使用

  • init 應用
ks init dalongdemo
  • 生成的專案結構
  • 定於部署的元件
    以下操作只是演示,我們可以使用命令列工具,快速生成應用的元件
ks generate deployed-service dalongdemo \
  --image dalongrong/appdemo:1.0 \
  --type ClusterIP

如下:

  • 檢視生成的yaml
    從下面的可以看出還是很方便的
ks show default

---
apiVersion: v1
kind: Service
metadata:
  labels:
    ksonnet.io/component: dalongdemo
  name: dalongdemo
spec:
  ports:
  - port: 80
    targetPort: 80
  selector:
    app: dalongdemo
  type: ClusterIP
---
apiVersion: apps/v1beta2
kind: Deployment
metadata:
  labels:
    ksonnet.io/component: dalongdemo
  name: dalongdemo
spec:
  replicas: 1
  selector:
    matchLabels:
      app: dalongdemo
  template:
    metadata:
      labels:
        app: dalongdemo
    spec:
      containers:
      - image: dalongrong/appdemo:1.0
        name: dalongdemo
        ports:
        - containerPort: 80
  • helm 的整合
    新增倉庫
ks registry add helm-stable https://kubernetes-charts.storage.googleapis.com

新增charts

ks pkg install helm-stable/wordpress

效果

說明

ksonnet 基於jsonet 的開發模型讓yaml檔案的編寫可以實現模組,共享,我們可以像寫程式碼一樣寫
yaml 檔案了,同時可以實現複用

參考資料

相關推薦

ksonnet 一個簡化編寫以及部署kubernetes工具

ksonnet 是一個基於jsonnet的快速簡化kubernetes yaml 配置的工具,可以實現配置的複用 同時也包含一個registry 的概念,可以實現可複用元件的分發,同時支援helm 環境準備 安裝cli 使用mac 系統 brew install k

練習題,使用多線程編寫一個簡單的文本處理工具

tar 處理工具 utf txt nco opened odin 文本處理工具 while 一. 練習題要求:  編寫一個簡單的文本處理工具,具備三個任務,一個接收用戶輸入,一個將用戶輸入的內容格式化成大寫,一個將格式化後的結果存入文件二. 分析:  三個任務,那就是三個線

kubernetes v1.5.2搭建,部署nginx,tomcat,三臺centos7 叢集,一篇秒懂kubernetes工具

安裝vmware 先安裝一個,centos7 minimal模式,安裝完重啟,輸入root與密碼,進入控制檯 ip addr //可以看ip,minimal是沒有安裝ifconfig等等工具的 配置開機聯網 cd /etc/sysconfig/network-script

一個golang編寫的redis記憶體分析工具rma4go

redis 記憶體分析工具 rma4go 簡介 redis是一個很有名的記憶體型資料庫,這裡不做詳細介紹。而rma4go (redis memory analyzer for golang) 是一個redis的記憶體分析工具,這個工具的主要作用是針對執行時期的redis進行記憶體的分析,統計redis中ke

使用開源Breeze工具部署Kubernetes 1.12.1高可用叢集_Kubernetes中文社群

Breeze專案是深圳睿雲智合所開源的Kubernetes圖形化部署工具,大大簡化了Kubernetes部署的步驟,其最大亮點在於支援全離線環境的部署,且不需要翻牆獲取Google的相應資源包,尤其適合某些不便訪問網際網路的伺服器場景。(專案地址 https://github.com/wise

如何在私有區塊鏈上編寫部署以及與以太坊進行互動的智慧合約

摘要:本文作者以極長的篇幅給出了在私有區塊鏈上編寫、部署以及與以太坊進行互動的智慧合約的較為完整的程式碼、相關細節步驟、使用者介面等。作者是希望藉助他這篇文章,大家可以自行在私有以太坊區塊鏈上編寫並部署一個智慧合約,以下是譯文。 這裡的規則是:如果通讀本文

我發起了一個用 .Net 編寫的 原始碼管理工具 開源專案 SourceKit

發起這個 專案 的 起因 是 GitHub 。   Github 的 使用技能 儼然已經成了 一項新技術 , 這不是 工具 的 本意 。   我用過的 原始碼 管理工具 不多,  SVN 我覺得不錯 。 常用的功能, 如   上傳檔案  獲

zookeeper-kafka(叢集版)安裝部署以及java呼叫工具

        Kafka安裝部署文件 ■ 文件版本 V1.0 ■ 作業系統 CentOS Linux release 7.3.1611

用python編寫一個高效搜索代碼工具

pytho keyword path 入參 dir 實時 遍歷 exist 自己 用python編寫一個高效搜索代碼工具大多碼農在linux環境下使用grep+關鍵詞的命令搜索自己想要的代碼或者log文件。今天介紹用python如何編寫一個更強大的搜索工具,windows下

java web 開發以及部署工具 以及 積累

開發 1.eclipse ee  開發工具 1. maven 下面的來自 http://www.cnblogs.com/phoebus0501/archive/2011/05/10/2042511.html Maven庫: http://repo2.maven.o

SuperBenchmarker一個用.NET編寫的壓測工具

> ## 0x01 前言 在這之前想必大家對ab(http)與abs(https)也有一些瞭解,我們今天不去看ab和abs,**SuperBenchmarker**(sb.exe)是一個壓測工具,他是一個受Apache Benchmark的啟發,他會在終端視窗為我們顯示最終的結果,同時也會在web介面生成一

Kubernetes容器化工具Kind實踐部署Kubernetes v1.18.x 版本, 釋出WordPress和MySQL

## Kind 介紹 [Kind](https://kind.sigs.k8s.io/)是Kubernetes In Docker的縮寫,顧名思義是使用Docker容器作為Node並將Kubernetes部署至其中的一個工具。官方文件中也把Kind作為一種本地叢集搭建的工具進行推薦。預設情況下,Kind會先

【Linux】 CentOS6.5安裝Python2.7以及pip等工具

自己 lin 存在 lean prefix nbsp ase 路徑 details 原文地址http://blog.csdn.net/u012538536/article/details/47360929。 CentOS6.5下是原來就有python的,我的鏡像裏面自帶的

推薦一個好的數據庫工具Embarcadero DBArtisan

san sql 數據 需要 其他 方法 bsp 功能 輸出參數 最近的項目中用到了DB2數據庫,由於DB2數據庫客戶端在操作操作和控制方面不是很方便,如存儲過程的編寫。後來我們在數據庫的操作都轉在DBArtisan上了,最新版好像是8.12。 下面介紹一下使用

Axure RP一個專業的高速原型設計工具

美國 分組 流程圖 編輯圖片 可能 字體大小 商業 體驗 說明 Axure RP是一個專業的高速原型設計工具。Axure(發音:Ack-sure)。代表美國Axure公司。RP則是Rapid Prototyping(高速原型)的縮寫。 Axure簡要介紹 Axure

包裹系統編寫以及過程中發現的錯誤

img 進程虛擬地址 com 排序 pri 集中 價值 oid efault 1 #include <iostream> 2 #include <string> 3 using namespace std; 4 5 type

通過編寫串口助手工具學習MFC過程——(七)添加Tab Control控件

ren 數據 mfc 資源 round 模態 重要 調用 分享 通過編寫串口助手工具學習MFC過程 因為以前也做過幾次MFC的編程,每次都是項目完成時,MFC基本操作清楚了,但是過好長時間不再接觸MFC的項目,再次做MFC的項目時,又要從頭開始熟悉。這次通過做一個串口助手再

通過編寫串口助手工具學習MFC過程——(六)添加Edit編輯框控件

word ash 問題 相關操作 數據 說明 true 特殊功能 包含 通過編寫串口助手工具學習MFC過程 因為以前也做過幾次MFC的編程,每次都是項目完成時,MFC基本操作清楚了,但是過好長時間不再接觸MFC的項目,再次做MFC的項目時,又要從頭開始熟悉。這次通過做一個串

通過編寫串口助手工具學習MFC過程——(五)添加CheckBox復選框

gin times blog 做了 mda 使用 時有 mbo margin 通過編寫串口助手工具學習MFC過程 因為以前也做過幾次MFC的編程,每次都是項目完成時,MFC基本操作清楚了,但是過好長時間不再接觸MFC的項目,再次做MFC的項目時,又要從頭開始熟悉。這次通過做

THULAC:一個高效的中文詞法分析工具包(z'z)

bsp 準確率 ext 效果 python3 nlp org 集成 的人 網址:http://thulac.thunlp.org/ THULAC(THU Lexical Analyzer for Chinese)由清華大學自然語言處理與社會人文計算實驗室研制推出的一套中文詞