kubernetes project update and how to contribute
TRANSCRIPT
-
Kyle bai R&D @ inwinSTACK
www.inwinstack.com
Kubernetes Project Update and How To Contribute
-
JobR&D @ inwinSTACK
Description java objc Mobile Hadoop Spark Linux
OpenStackCeph Cloud Native
GitHub GitBook
Drink Coffee Mobile LoveGood! #7727 Buttocks
kairen([email protected])
https://kairen.github.io/
About MeKyle Bai
-
Kubernetes47%
Containers remain the top emerging technology of interest to users. Among those currently deploying container orchestration or platform services on OpenStack, 47% are using Kubernetes.
An introduction for Kubernetes
Major features in Kubernetes 1.7
What's new in Kubernetes 1.8?
How to contribute
AgendaToday I will talk about
-
An introduction for Kubernetes
-
KubernetesKubernetes Google (Container)
Google
Container(OCI)
K8s( )
CNCF
Stars
25,830+Commits
52,905+Contributors
1,331+
-
Kubernetes Pros
Monitoring
Rolling-update
High-availability
Self-healing
Cloud Provider
Persistent Volumes
Configmap
Secret
Kubernetes
-
Container Management Platforms Preferences
https://www.cncf.io/blog/2017/01/17/container-management-trends-kubernetes-moves-testing-production/
https://www.cncf.io/blog/2017/01/17/container-management-trends-kubernetes-moves-testing-production/
-
Kubernetes Adoption
-
Kubernetes 2017 Release Timeline
v1.6 v1.9v1.8v1.7
September(Q3)
December(Q4)
March(Q1)
June(Q2)
-
Major features in Kubernetes 1.7Security, Workloads and Extensibility.
https://github.com/kubernetes/features
https://github.com/kubernetes/features
-
API aggregation Beta API Server Server
API Server
API
API Kubernetes
https://github.com/kubernetes/sample-apiserver
https://github.com/kubernetes/sample-apiserver
-
API aggregation
-
API aggregation
-
Extensible External Admission Control API Server
Kubernetes
Alpha kube-apiserver --
admission-control GenericAdmissionWebhook
-
Limit node access to API server Node authorizer NodeRestriction Plugin
Node API
Node API Pod
Pod Secrets Configmaps
-
Custom Resource Definition TPR APICustom Resource
DefinitionsCRD
CRD TPR beta
1.8 TPR API TPR
CRD
-
Create custom objects for CRD CRD
CronTab resource
-
Encrypting secrets in etcd Etcd Secrets
Secret Etcd
-
Local persistent storage StorageClasses PVC/
PV Local persistent
storage
hostPath volume
-
Network Policy API NetworkPolicy API GA
NetworkPolicy Ingress Pods
https://ahmet.im/blog/kubernetes-network-policy/
https://ahmet.im/blog/kubernetes-network-policy/
-
Audit logs improvements API Server
Webhook
-
StatefulSet workloads StatefulSet Rolling updates Controller History
RollingUpdate Pod StatefulSet
Partitioned Pod
OnDelete Pod
-
DaemonSets workloads DaemonSet History Rolling back
PodTemplate DaemonSet History
Rolling back RollbackConfig
Deployment
-
Container Runtime Interface (CRI) RPC call
Metrics Container Runtime
Metrics
Kubelet Container Runtime Metrics
Containerd Kubelet Container Runtime
-
Pod HostAliases hostAliases hostname Pod-level /etc/hosts
Pod
$ kubectl logs hostaliases-pod# Kubernetes-managed hosts file.127.0.0.1 localhost::1 localhost ip6-localhost ip6-loopbackfe00::0 ip6-localnetfe00::0 ip6-mcastprefixfe00::1 ip6-allnodesfe00::2 ip6-allrouters10.244.135.10 hostaliases-pod127.0.0.1 foo.local127.0.0.1 bar.local10.1.2.3 foo.remote10.1.2.3 bar.remote
-
PodDisruptionBudget(PDB) Beta MaxUnavailable
Pod drain Pod
-
What's new in Kubernetes 1.8?
https://github.com/kubernetes/features
https://github.com/kubernetes/features
-
SIG in 1.8 release SIG Node:
CRI-O support Kubelet
SIG Network NetworkPolicy API Pod Egress
kube-proxy IPVS (alpha) iptables
userspace
-
SIG in 1.8 release SIG Storage Storage API resizing(alpha)
snapshotting(prototype) Ephemeral storage
requests & limits metrics driver
SIG Autoscaling HPA API(
Metrics) Cluster Autoscaler( GCE/
GKE)
SIG Instrumentation HPA API Resource
metrics APICustom metrics APIMetrics-server Default monitoring
pipeline( Heapster)
-
Kubernetes workloads API DaemonSetDeploymentReplicaSet StatefulSet kinds API Group
apps/v1beta2 GA
API batch/v2alpha1.CronJob
TPR batch/v2alpha1.ScheduledJobs autoscaling/v2alpha1
autoscaling/v2beta1
Annotation initContainer Pod spec initContainers
Advanced auditing v1alpha1 v1beta1 Advanced auditing
gate JSON encoding
-
Network Policy API CIDR NetworkPolicy
NetworkPolicy EgressRules
-
Custom Resource Definition CRD API CRD spec JSON schema
Garbage Collector CRD Aggregate API servers
-
Roles Based Access Control (RBAC) RBAC API Group v1beta1 v1RBAC v1alpha1 API
group
RBAC
RBAC
-
Scheduling Opaque Integer Resources (OIRs) v1.9
Extended Resources (ERs) OIRs Resource
kubernetes.io/ domain
pod.alpha.kubernetes.io/opaque-int-resource- prefix
-
Autoscaling Heapster metrics Resource
metrics API Metrics
--horizontal-pod-autoscaler-use-rest-clients
1.9
-
Storage iSCSI Fibre Channel RWO Attach/Detach
Kubernetes metrics API PV
Volume Plugin Metrics
API Volume resizing (Gluster)
Volume
Volume Snapshots
https://github.com/kubernetes-incubator/external-storage/tree/master/snapshot
-
CLI Changes kubectl rollout historystatusundo scale
StatefulSets
kubectl stop
kubectl run --env CSV parsing
-
Cluster Lifecycle kubeadm upgrade self-hosted
Kubernetes
kops bare metal(Alpha) GCE(Beta).
kubespray(incubator) kubeadm HA
Kubernetes Dashboard
-
Other Projects Dashboard zh-TW i18n Resource
test-infra e2e armarm64 ppc64le
(Kubernetes Core)
-
How to contribute
-
Kubernetes Community ContributionKubernetes
Bug
Bug
Special Interest Groups
https://github.com/kubernetes/community/blob/master/contributors/devel/community-expectations.md
https://github.com/kubernetes/communityhttps://github.com/kubernetes/community/blob/master/contributors/devel/community-expectations.md
-
Contribute Git workflow
-
Speed up PR merge PR merge
Commit Commit PR
PR
Coding ConventionsAPI
Conventions kubectl Conventions
k8s-ci-robot
https://github.com/kubernetes/community/blob/master/contributors/devel/coding-conventions.mdhttps://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.mdhttps://github.com/kubernetes/community/blob/master/contributors/devel/api-conventions.mdhttps://github.com/kubernetes/community/blob/master/contributors/devel/kubectl-conventions.md
-
https://github.com/kubernetes/dashboard/pull/2309
-
Kubernetes (Kubernetes Certified Service Provider) 2:50