Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
k3s
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jacklull
k3s
Commits
2862fcc6
Commit
2862fcc6
authored
Oct 31, 2017
by
zhengjiajin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
remove dependency from kubectl/metricsutil
parent
fe0f461c
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
22 additions
and
22 deletions
+22
-22
BUILD
pkg/kubectl/metricsutil/BUILD
+2
-2
metrics_client.go
pkg/kubectl/metricsutil/metrics_client.go
+4
-4
metrics_printer.go
pkg/kubectl/metricsutil/metrics_printer.go
+16
-16
No files found.
pkg/kubectl/metricsutil/BUILD
View file @
2862fcc6
...
...
@@ -14,15 +14,15 @@ go_library(
"//build/visible_to:pkg_kubectl_metricsutil_CONSUMERS",
],
deps = [
"//pkg/api:go_default_library",
"//pkg/api/legacyscheme:go_default_library",
"//pkg/api/validation:go_default_library",
"//pkg/client/clientset_generated/internalclientset/typed/core/internalversion:go_default_library",
"//pkg/printers:go_default_library",
"//vendor/k8s.io/api/core/v1:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/api/resource:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/labels:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
"//vendor/k8s.io/client-go/kubernetes/typed/core/v1:go_default_library",
"//vendor/k8s.io/metrics/pkg/apis/metrics/v1alpha1:go_default_library",
],
)
...
...
pkg/kubectl/metricsutil/metrics_client.go
View file @
2862fcc6
...
...
@@ -24,8 +24,8 @@ import (
metav1
"k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/runtime/schema"
corev1
"k8s.io/client-go/kubernetes/typed/core/v1"
"k8s.io/kubernetes/pkg/api/validation"
coreclient
"k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion"
metricsapi
"k8s.io/metrics/pkg/apis/metrics/v1alpha1"
)
...
...
@@ -46,14 +46,14 @@ var (
)
type
HeapsterMetricsClient
struct
{
SVCClient
core
client
.
ServicesGetter
SVCClient
core
v1
.
ServicesGetter
HeapsterNamespace
string
HeapsterScheme
string
HeapsterService
string
HeapsterPort
string
}
func
NewHeapsterMetricsClient
(
svcClient
core
client
.
ServicesGetter
,
namespace
,
scheme
,
service
,
port
string
)
*
HeapsterMetricsClient
{
func
NewHeapsterMetricsClient
(
svcClient
core
v1
.
ServicesGetter
,
namespace
,
scheme
,
service
,
port
string
)
*
HeapsterMetricsClient
{
return
&
HeapsterMetricsClient
{
SVCClient
:
svcClient
,
HeapsterNamespace
:
namespace
,
...
...
@@ -63,7 +63,7 @@ func NewHeapsterMetricsClient(svcClient coreclient.ServicesGetter, namespace, sc
}
}
func
DefaultHeapsterMetricsClient
(
svcClient
core
client
.
ServicesGetter
)
*
HeapsterMetricsClient
{
func
DefaultHeapsterMetricsClient
(
svcClient
core
v1
.
ServicesGetter
)
*
HeapsterMetricsClient
{
return
NewHeapsterMetricsClient
(
svcClient
,
DefaultHeapsterNamespace
,
DefaultHeapsterScheme
,
DefaultHeapsterService
,
DefaultHeapsterPort
)
}
...
...
pkg/kubectl/metricsutil/metrics_printer.go
View file @
2862fcc6
...
...
@@ -21,17 +21,17 @@ import (
"io"
"sort"
"k8s.io/api/core/v1"
"k8s.io/apimachinery/pkg/api/resource"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/api/legacyscheme"
"k8s.io/kubernetes/pkg/printers"
metricsapi
"k8s.io/metrics/pkg/apis/metrics/v1alpha1"
)
var
(
MeasuredResources
=
[]
api
.
ResourceName
{
api
.
ResourceCPU
,
api
.
ResourceMemory
,
MeasuredResources
=
[]
v1
.
ResourceName
{
v1
.
ResourceCPU
,
v1
.
ResourceMemory
,
}
NodeColumns
=
[]
string
{
"NAME"
,
"CPU(cores)"
,
"CPU%"
,
"MEMORY(bytes)"
,
"MEMORY%"
}
PodColumns
=
[]
string
{
"NAME"
,
"CPU(cores)"
,
"MEMORY(bytes)"
}
...
...
@@ -41,8 +41,8 @@ var (
type
ResourceMetricsInfo
struct
{
Name
string
Metrics
api
.
ResourceList
Available
api
.
ResourceList
Metrics
v1
.
ResourceList
Available
v1
.
ResourceList
}
type
TopCmdPrinter
struct
{
...
...
@@ -53,7 +53,7 @@ func NewTopCmdPrinter(out io.Writer) *TopCmdPrinter {
return
&
TopCmdPrinter
{
out
:
out
}
}
func
(
printer
*
TopCmdPrinter
)
PrintNodeMetrics
(
metrics
[]
metricsapi
.
NodeMetrics
,
availableResources
map
[
string
]
api
.
ResourceList
)
error
{
func
(
printer
*
TopCmdPrinter
)
PrintNodeMetrics
(
metrics
[]
metricsapi
.
NodeMetrics
,
availableResources
map
[
string
]
v1
.
ResourceList
)
error
{
if
len
(
metrics
)
==
0
{
return
nil
}
...
...
@@ -65,7 +65,7 @@ func (printer *TopCmdPrinter) PrintNodeMetrics(metrics []metricsapi.NodeMetrics,
})
printColumnNames
(
w
,
NodeColumns
)
var
usage
api
.
ResourceList
var
usage
v1
.
ResourceList
for
_
,
m
:=
range
metrics
{
err
:=
legacyscheme
.
Scheme
.
Convert
(
&
m
.
Usage
,
&
usage
,
nil
)
if
err
!=
nil
{
...
...
@@ -119,14 +119,14 @@ func printColumnNames(out io.Writer, names []string) {
}
func
printSinglePodMetrics
(
out
io
.
Writer
,
m
*
metricsapi
.
PodMetrics
,
printContainersOnly
bool
,
withNamespace
bool
)
error
{
containers
:=
make
(
map
[
string
]
api
.
ResourceList
)
podMetrics
:=
make
(
api
.
ResourceList
)
containers
:=
make
(
map
[
string
]
v1
.
ResourceList
)
podMetrics
:=
make
(
v1
.
ResourceList
)
for
_
,
res
:=
range
MeasuredResources
{
podMetrics
[
res
],
_
=
resource
.
ParseQuantity
(
"0"
)
}
for
_
,
c
:=
range
m
.
Containers
{
var
usage
api
.
ResourceList
var
usage
v1
.
ResourceList
err
:=
legacyscheme
.
Scheme
.
Convert
(
&
c
.
Usage
,
&
usage
,
nil
)
if
err
!=
nil
{
return
err
...
...
@@ -149,7 +149,7 @@ func printSinglePodMetrics(out io.Writer, m *metricsapi.PodMetrics, printContain
printMetricsLine
(
out
,
&
ResourceMetricsInfo
{
Name
:
contName
,
Metrics
:
containers
[
contName
],
Available
:
api
.
ResourceList
{},
Available
:
v1
.
ResourceList
{},
})
}
}
else
{
...
...
@@ -159,7 +159,7 @@ func printSinglePodMetrics(out io.Writer, m *metricsapi.PodMetrics, printContain
printMetricsLine
(
out
,
&
ResourceMetricsInfo
{
Name
:
m
.
Name
,
Metrics
:
podMetrics
,
Available
:
api
.
ResourceList
{},
Available
:
v1
.
ResourceList
{},
})
}
return
nil
...
...
@@ -187,11 +187,11 @@ func printAllResourceUsages(out io.Writer, metrics *ResourceMetricsInfo) {
}
}
func
printSingleResourceUsage
(
out
io
.
Writer
,
resourceType
api
.
ResourceName
,
quantity
resource
.
Quantity
)
{
func
printSingleResourceUsage
(
out
io
.
Writer
,
resourceType
v1
.
ResourceName
,
quantity
resource
.
Quantity
)
{
switch
resourceType
{
case
api
.
ResourceCPU
:
case
v1
.
ResourceCPU
:
fmt
.
Fprintf
(
out
,
"%vm"
,
quantity
.
MilliValue
())
case
api
.
ResourceMemory
:
case
v1
.
ResourceMemory
:
fmt
.
Fprintf
(
out
,
"%vMi"
,
quantity
.
Value
()
/
(
1024
*
1024
))
default
:
fmt
.
Fprintf
(
out
,
"%v"
,
quantity
.
Value
())
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment