序文
二ヶ月前、KubeCon2019北米サミットで発表された、業界で最も広く使用されているKubernetes管理プラットフォームの作成者(以下、ランチャーと呼ばれる)ランチャーLabs社は、Kubernetes公式リリースはGAをk3s軽量ランチャーのビルドは、この製品は、限られた資源のために設計されています小型機器の需要にKubernetesクラスタを実行し、エッジでのコンピューティング環境を満たすように設計された環境。その後、我々はまだ12の最後に、グローバルな開発者を心配され続け、GitHubのスターは11,000を破ります。
今週、k3sは、新しいバージョンv1.17.0 + k3s.1をリリース、このバージョンは、GAの最初の主要な変更バージョンで、この記事では、そのバージョンの簡単な説明になります。
バージョン番号の命名規則
k3s前にこのようv0.1の、v0.2デベロッパー、v1.0のと上のように、一般的なバージョン番号を、使用されて。k3sはK8S由来するので、各k3sバージョンは、このようなk3s v1.0の対応Kubernetes v1.16.3として、Kubernetesのバージョンに対応しますが、彼らは、ユーザーに多大を与えるリリースノート、内の情報を見つける必要があります不便。ランチャーは常にそのように呼ばバージョン番号k3sを変更し、ユーザーエクスペリエンスを重視し。「という名前の新しいバージョン<K8s version>+<k3s metadata>
」のフォーマット、例えばv1.17.0 + k3s.1バージョンなので、ユーザーは明白その対応Kubernetesの現在のバージョン。
v1.17.0 + k3s.1重要な改善
Helm3 Helm2に切り替え
一般的に、我々はチャートを管理するためにヘルムズCLIツールです。以前のバージョンのみをサポートしていk3s Helm2は、この出版物の新バージョンにHelm3のサポートを追加します。Helm3は、利便性をもたらしたk3sを使用するようにティラーアセンブリシンプルそのものを削除しました。次のようにあるk3sの新バージョンでは、Helm3の使用は次のとおりです。
$ helm --kubeconfig /etc/rancher/k3s/k3s.yaml repo add helm-stable https://kubernetes-charts.storage.googleapis.com/
"helm-stable" has been added to your repositories
$ helm --kubeconfig /etc/rancher/k3s/k3s.yaml search repo nginx
NAME CHART VERSION APP VERSION DESCRIPTION
helm-stable/nginx-ingress 1.28.0 0.26.2 An nginx Ingress controller that uses ConfigMap...
helm-stable/nginx-ldapauth-proxy 0.1.3 1.13.5 nginx proxy with ldapauth
helm-stable/nginx-lego 0.3.1 Chart for nginx-ingress-controller and kube-lego
helm-stable/gcloud-endpoints 0.1.2 1 DEPRECATED Develop, deploy, protect and monitor…
$ helm --kubeconfig /etc/rancher/k3s/k3s.yaml install helm-stable/redis --generate-name
$ helm --kubeconfig /etc/rancher/k3s/k3s.yaml list --all-namespaces
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION
redis-1578463519 default 1 2020-01-08 06:05:22.482166284 +0000 UTC deployed redis-10.3.1 5.0.7
traefik kube-system 1 2020-01-08 05:24:20.987390979 +0000 UTC deployed traefik-1.81.0 1.7.19
注:traefikは内蔵の進入コントローラk3sですが、ヘルムがデフォルトでインストールされ、ので、ここで私たちが読むことができ、誤って削除しないでください。
別の方法があるk3sの使用のためのヘルムが、それは当然のことながら、それはCRDを説明し、カスタムを使用するために私たちを必要とし、「自動展開マニフェスト」機能により、チャートを展開することです。これは、ヘルム制御装置(それら自身の実現によって構築k3sで同時に互換Helm3とHelm2するために、我々のような、helmVersionについて説明を加え、https://github.com/rancher/helm-controllerを達成するために)。
# 默认使用helm3,如使用helm2则指定helmVersion
apiVersion: helm.cattle.io/v1
kind: HelmChart
metadata:
name: grafana
namespace: kube-system
spec:
chart: stable/grafana
helmVersion: v2
targetNamespace: monitoring
set:
adminPassword: "NotVerySafePassword"
valuesContent: |-
image:
tag: master
env:
GF_EXPLORE_ENABLED: true
adminUser: admin
sidecar:
datasources:
enabled: true
ここではより詳細な情報、公式ドキュメントを参照してください。
https://rancher.com/docs/k3s/latest/en/advanced/
コンテナの問題を一時停止
我々はすべて知っているKubernetesポッドポーズミラーリングを必要とし、以前のバージョンをインストールするために、国内の初めてのユーザーの難しさを増すk3s GCR倉庫ポーズのミラーリング、ある、経験は友好的ではありません。この新しいバージョンはそれほど大幅に初期導入の難しさを軽減k3sに新しく追加されたユーザーのために、一時停止がDockerHubを使用してアドレスの設定をミラーリングされた、最適化されています:
$ crictl images | grep pause
IMAGE TAG IMAGE ID SIZE
docker.io/rancher/pause 3.1 da86e6ba6ca19 327kB
この問題の詳細な説明では、以下を参照してください。
https://github.com/rancher/k3s/issues/1128
他の
svclbを達成するために構築されたk3sは、言い換えれば、他の利用者は、サービスの種類=ロードバランサーを使用するように設定することはできません。いくつかの問題は、UDPポートを使用して、このバージョンでは修正されました以前のバージョンにあります。
https://github.com/rancher/k3s/issues/577
k3sは、さまざまなリソースのメトリック情報を表示するユーザーを有効に、メトリック・サーバーを構築し、導入しました。調査FOUNDは完全なプッシュしていないメトリック・サーバ・ミラーリングのアーキテクチャの一部になった後、以前のバージョンでは、ユーザーのフィードバック測定基準は、情報を見つける、非ミラーリングAMD64問題の使用につながる可能性があります。このバージョンでも修正されて:
https://github.com/rancher/k3s/issues/1189
もっと他の問題、マイルストーンを参照してください。
https://github.com/rancher/k3s/milestone/13?closed=1
新バージョンの詳細については、リリースノートを参照してください。
https://github.com/rancher/k3s/releases/tag/v1.17.0+k3s.1
追伸
k3sリリース日は、急速な成長の勢いを維持しています。11月中旬には昨年はGithubのスター数が11,000を超えた、GA版をリリースしました。また、ユーザーはk3sを使用して開始し、本番環境で良い結果を達成しています。年未満にリリースオープンソース製品として、完璧ではないが、そのため多くの質問、さらには言葉による虐待を被った、我々は完全にユーザーの気分を理解し、我々は早期の心臓の技術革新に固執します。k3s R&Dチームも継続的な努力されている質問は、このようなエッジコンピューティング、組み込みデバイス、CI環境、k3s最適化と改善のための実際の使用シナリオとして、ユーザーコミュニティを上げて。同時に、我々は非常にk3sを向上させる上で最も明るい英雄を歓迎します。
k3sのGithub: