Commit 707ceb23 authored by Greg Sutcliffe's avatar Greg Sutcliffe

Proxies and WIP content results

parent 25b0eb29
......@@ -164,9 +164,8 @@ grid.arrange(monitoring,monitor_foreman,ncol=2)
```
Some nice things to note here. Most people are monitoring hosts (`r 100 -
not_monitor`%), but less
than half are monitoring Foreman or the Proxies. We should perhaps provide a
blog post on what things should be monitored.
not_monitor`%), but less than half are monitoring Foreman or the Proxies. We
should perhaps provide a blog post on what things should be monitored.
Looking at monitoring systems, there's lots of love for Zabbix and Nagios. The
"Other" category contains a lot of one-off answers, but also a few people using
......@@ -175,4 +174,31 @@ sure to be useful to the
[foreman_monitoring](https://github.com/theforeman/smart_proxy_monitoring)
authors for what to support in the future.
## <a name="page1"></a>Proxies
\ No newline at end of file
## <a name="page1"></a>Proxies
Standalone => `r stdalone[stdalone$value == 'Only with Foreman',]$perc %>% round(2)`
features / plugins
```{r plugins}
grid.arrange(proxy_features,proxy_plugins,ncol=2)
```
puppet
```{r puppet}
print(proxy_puppet)
```
## Content
manage-content: `r content[content$value == 'Yes',]$perc %>% round(2)`
solutions:
```{r manage-content}
grid.arrange(content_manage,content_types,repo_types,would_types,ncol=2)
```
note "local other" contains 3 votes for createrepo/yum, but largely is text like "my own scripts". Lack of "createrepo / yum" answers seems a win for Katello. GitLab seems mostly used as a Docker registry. Puppet answers were unclear, they could be "Puppet modules used to manage repos" or possibly "I manage Puppet modules as content".
This diff is collapsed.
......@@ -146,9 +146,8 @@ monitor Foreman and it's hosts, and what you use to do that:
![](InitialAnalysis_files/figure-html/monitoring-1.svg)<!-- -->
Some nice things to note here. Most people are monitoring hosts (89.02%), but less
than half are monitoring Foreman or the Proxies. We should perhaps provide a
blog post on what things should be monitored.
Some nice things to note here. Most people are monitoring hosts (48.57%), but less than half are monitoring Foreman or the Proxies. We
should perhaps provide a blog post on what things should be monitored.
Looking at monitoring systems, there's lots of love for Zabbix and Nagios. The
"Other" category contains a lot of one-off answers, but also a few people using
......@@ -158,3 +157,24 @@ sure to be useful to the
authors for what to support in the future.
## <a name="page1"></a>Proxies
Standalone => 92.81
features / plugins
![](InitialAnalysis_files/figure-html/plugins-1.svg)<!-- -->
puppet
![](InitialAnalysis_files/figure-html/puppet-1.svg)<!-- -->
## Content
manage-content: 63.52
solutions:
![](InitialAnalysis_files/figure-html/manage-content-1.svg)<!-- -->
note "local other" contains 3 votes for createrepo/yum, but largely is text like "my own scripts". Lack of "createrepo / yum" answers seems a win for Katello. GitLab seems mostly used as a Docker registry. Puppet answers were unclear, they could be "Puppet modules used to manage repos" or possibly "I manage Puppet modules as content".
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
This diff is collapsed.
# Content -----------------------------------------------------------------
content = as_tibble(raw_csv$Do.you.manage.content..) %>%
filter(value != '') %>%
group_by(value) %>%
count() %>%
ungroup() %>%
mutate(perc = n / sum(n)*100)
# Manage content ----------------------------------------------------------
# OMG this list is a mess....
data = raw_csv$How.do.you.manage.your.content.
c_m = as.factor(unlist(strsplit(as.character(data),split = ";"))) %>%
fct_relabel(gsub, pattern=".*Satellite.*", replacement="Katello") %>%
fct_relabel(gsub, pattern=".*atomic.*", replacement="createrepo, Atomic") %>%
fct_relabel(gsub, pattern=".*custom setup.*", replacement="apt-mirror, puppet") %>%
fct_relabel(gsub, pattern=".*hiera.*", replacement="Hiera") %>%
fct_relabel(gsub, pattern="^Apache.*", replacement="Local (Other)") %>%
fct_relabel(gsub, pattern="^We have locked.*", replacement="Local (Other)")
c_m = as.factor(unlist(strsplit(as.character(c_m),split = ","))) %>%
fct_relabel(gsub, pattern=".*(puppet|r10k).*", replacement="Puppet", ignore.case=T) %>%
fct_relabel(gsub, pattern=".*(apt|reprepro|debian).*", replacement="Local (Apt)", ignore.case=T) %>%
fct_relabel(gsub, pattern=".*(repo).*", replacement="Local (Other)", ignore.case=T) %>%
fct_relabel(gsub, pattern=".*(RPM mirror).*", replacement="Local (Other)", ignore.case=T) %>%
fct_relabel(gsub, pattern=".*gitlab.*", replacement="GitLab", ignore.case=T) %>%
fct_lump(prop = 0.01) %>%
fct_count(sort=T) %>%
mutate(perc = n/sum(n)*100)
content_manage = ggplot(c_m, aes(x=reorder(f,-perc),y=perc,fill=f)) +
geom_bar(stat='identity') +
labs(x = "", y = "Percent") +
ggtitle("Content Management") +
theme(legend.position = "none")
# What types to manage ----------------------------------------------------
data = raw_csv$Select.all.of.the.ways.you.want.to.manage.content.with.Foreman
c_t = as.factor(unlist(strsplit(as.character(data),split = ";"))) %>%
fct_relabel(gsub, pattern=".*(none|pypi|standalone|kartallo).*", replacement="None", ignore.case=T) %>%
fct_count %>%
filter(f != 'None') %>%
mutate(perc = n/sum(n)*100)
content_types = ggplot(c_t, aes(x = reorder(f, -perc), y = perc, fill = f)) +
geom_bar(stat = 'identity') +
scale_x_discrete(breaks=c("Content for hosts generated by our organisation",
"Lifecycle management for 3rd party sources",
"Lifecycle management for content generated by our organisation",
"Mirroring content from 3rd party sources"),
labels=c("Content - Ours", "Lifecycle - 3rd Party", "Lifecycle - Ours", "Content - 3rd Party")) +
labs(x = "", y = "Percent") +
ggtitle("Content Types (106 responses)") +
theme(legend.position = "none")
# Repos managed -----------------------------------------------------------
data = raw_csv$Select.all.of.the.content.types.you.currently.manage
r_t = as.factor(unlist(strsplit(as.character(data),split = ";"))) %>%
fct_relabel(gsub, pattern=".*(createrepo).*", replacement="", ignore.case=T) %>%
fct_relabel(gsub, pattern=".*(home grown).*", replacement="RPM, DEB", ignore.case=T) %>%
fct_relabel(gsub, pattern=".*(Fedora, etc).*", replacement="RPM", ignore.case=T)
r_t = as.factor(unlist(strsplit(as.character(r_t),split = ","))) %>%
fct_relabel(gsub, pattern=".*(apt|deb|ubuntu).*", replacement="DEB", ignore.case=T) %>%
fct_relabel(gsub, pattern=".*(suse).*", replacement="SuSE", ignore.case=T) %>%
fct_lump(prop=0.01) %>%
fct_count %>%
mutate(perc = n/sum(n)*100)
repo_types = ggplot(r_t, aes(x = reorder(f, -perc), y = perc, fill = f)) +
geom_bar(stat = 'identity') +
labs(x = "", y = "Percent") +
ggtitle("Repository Types (122 responses)") +
theme(legend.position = "none")
# Would manage ------------------------------------------------------------
data = raw_csv$Which.of.the.following.content.types.would.you.manage.with.Katello.if.it.supported.them.
w_t = as.factor(unlist(strsplit(as.character(data),split = ";"))) %>%
fct_relabel(gsub, pattern=".*(i would suggest|not really interest).*", replacement="comment", ignore.case=T) %>%
fct_relabel(gsub, pattern=".*(Debian).*", replacement="Debian packages", ignore.case=T) %>%
fct_lump(prop=0.01) %>%
fct_count %>%
mutate(perc = n/sum(n)*100)
would_types = ggplot(w_t, aes(x = reorder(f, -perc), y = perc, fill = f)) +
geom_bar(stat = 'identity') +
labs(x = "", y = "Percent") +
ggtitle("Would Manage (92 responses)") +
theme(legend.position = "none")
\ No newline at end of file
......@@ -21,7 +21,7 @@ data = raw_csv$Do.you.monitor.your.Foreman.managed.hosts. %>% fct_collapse(
CheckMK = c('check_mk', 'Check_MK', 'Check_mk', 'check_mk (nagios)', 'Check_MK+Nagios')) %>%
fct_lump(n=12) %>%
fct_count %>%
mutate(relative_perc = round((n / sum(n))*100,2) )
mutate(relative_perc = round((n / max(n))*100,2) )
monitoring <- ggplot(data, aes(x = reorder(f,relative_perc), y = relative_perc, label = relative_perc, fill = f)) +
geom_bar(stat = 'identity', position = 'dodge') + coord_flip() +
......
# Standalone --------------------------------------------------------------
stdalone = as_tibble(raw_csv$Do.you.use.the.Smart.Proxy.as.a.standalone.project..or.only.in.conjunction.with.Foreman) %>%
filter(value != '') %>%
group_by(value) %>%
count() %>%
ungroup() %>%
mutate(perc = n / sum(n)*100)
# Number proxies ----------------------------------------------------------
d = as_tibble(factor(raw_csv$How.many.Smart.Proxies.do.you.have, levels = c('0','1','2-4','5-9','10+'))) %>%
filter(value != '') %>%
group_by(value) %>%
count() %>%
ungroup() %>%
mutate(perc = n/sum(n)*100)
num_proxies = ggplot(d, aes(x = value, y = perc, fill = value)) +
geom_bar(stat='identity') +
labs(x = "", y = "Percent") +
ggtitle(paste("Monitoring Systems For Hosts")) +
theme(legend.position = "none")
# Proxy plugins
# Plugins -----------------------------------------------------------------
data <- raw_csv$Do.you.use.any.Smart.Proxy.plugins.
p_d = as.factor(unlist(strsplit(as.character(data),split = ";"))) %>%
fct_count %>%
mutate(perc = n/max(n)*100) %>%
mutate(f = fct_relabel(f, gsub, pattern='smart_proxy_',replacement='')) %>%
mutate(f = fct_relabel(f, gsub, pattern='used by Katello!',replacement='Katello')) %>%
mutate(f = fct_relabel(f, gsub, pattern='_',replacement=' ')) %>%
mutate(f = fct_relabel(f, tools::toTitleCase)) %>%
mutate(f = fct_relabel(f, gsub, pattern="dns",replacement='DNS',ignore.case=T)) %>%
mutate(f = fct_relabel(f, gsub, pattern="dhcp",replacement='DHCP',ignore.case=T))
proxy_plugins <- ggplot(p_d, aes(x = reorder(f,perc), y = perc, fill = f)) +
geom_bar(stat = 'identity', position = 'dodge') + coord_flip() +
labs(x = "", y = "Percent") +
ggtitle("2018 Proxy Plugins") +
theme(legend.position = "none")
# Features ----------------------------------------------------------------
data <- raw_csv$What.features.do.you.use.on.the.Proxy.
p_f = as.factor(unlist(strsplit(as.character(data),split = ";"))) %>%
fct_lump(n=11) %>%
fct_count(sort =T) %>%
mutate(f = fct_relabel(f, tools::toTitleCase)) %>%
mutate(perc = n/max(n)*100)
proxy_features <- ggplot(p_f, aes(x = reorder(f,perc), y = perc, fill = f)) +
geom_bar(stat = 'identity', position = 'dodge') + coord_flip() +
labs(x = "", y = "Percent") +
ggtitle("2018 Proxy Features") +
theme(legend.position = "none")
# Puppet ------------------------------------------------------------------
data = raw_csv$Puppet.users..Do.you.mainly.use.Puppet.3.or.Puppet.4.at.the.moment.
d_pp <- as_tibble(data) %>%
filter(value != '') %>%
group_by(value) %>%
count() %>%
ungroup %>%
mutate(value = fct_relabel(value, gsub, pattern='Mainly ',replacement='')) %>%
mutate(value = fct_recode(value, 'No Puppet' = 'No puppet proxies at all', 'Mixed Versions' = 'Significant mix of major versions')) %>%
mutate(perc = round((n / sum(n))*100,2))
proxy_puppet <- ggplot(d_pp, aes(x = fct_relevel(value,'Puppet 3','Puppet 4','Puppet 5','Mixed Versions'), y = perc, fill = value)) +
geom_bar(stat = 'identity', position = 'dodge') +
labs(x = "", y = "Percent") +
ggtitle("Puppet Proxies") +
theme(legend.position = "none")
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment