<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Verrazzano Enterprise Container Platform – Diagnostic Tools</title>
    <link>/docs/troubleshooting/diagnostictools/</link>
    <description>Recent content in Diagnostic Tools on Verrazzano Enterprise Container Platform</description>
    <generator>Hugo -- gohugo.io</generator>
    
	  <atom:link href="/docs/troubleshooting/diagnostictools/index.xml" rel="self" type="application/rss+xml" />
    
    
      
        
      
    
    
    <item>
      <title>Docs: Verrazzano Analysis Tools</title>
      <link>/docs/troubleshooting/diagnostictools/verrazzanoanalysistool/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/troubleshooting/diagnostictools/verrazzanoanalysistool/</guid>
      <description>
        
        
        &lt;p&gt;Verrazzano provides tooling which assists in troubleshooting issues in your environment:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;code&gt;k8s-dump-cluster.sh&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;verrazzano-analysis&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;tools-setup&#34;&gt;Tools Setup&lt;/h2&gt;
&lt;p&gt;These tools are available for Linux and Mac: &lt;a href=&#34;https://github.com/verrazzano/verrazzano/releases/&#34;&gt;https://github.com/verrazzano/verrazzano/releases/&lt;/a&gt;.&lt;/p&gt;
&lt;nav&gt;
	&lt;div class=&#34;nav nav-tabs&#34; id=&#34;nav-tab&#34; role=&#34;tablist&#34;&gt;

		
		
		
		

		

		&lt;a class=&#34;nav-item nav-link  active &#34;
		   id=&#34;nav-eacbfd&#34; data-toggle=&#34;tab&#34; href=&#34;#eacbfd&#34;
		   role=&#34;tab&#34; aria-controls=&#34;nav-home&#34; aria-selected=&#34;true&#34;&gt;Linux&lt;/a&gt;

		

		&lt;a class=&#34;nav-item nav-link &#34;
		   id=&#34;nav-aebfdc&#34; data-toggle=&#34;tab&#34; href=&#34;#aebfdc&#34;
		   role=&#34;tab&#34; aria-controls=&#34;nav-home&#34; aria-selected=&#34;true&#34;&gt;macOS&lt;/a&gt;

		

	&lt;/div&gt;
&lt;/nav&gt;

&lt;div class=&#34;tab-content&#34; id=&#34;nav-tab-content&#34;&gt;

	





&lt;div class=&#34;tab-pane fade show active &#34; id=&#34;eacbfd&#34; role=&#34;tabpanel&#34; aria-labelledby=&#34;nav-1&#34;&gt;

	&lt;br&gt;
&lt;h3 id=&#34;linux-instructions&#34;&gt;Linux Instructions&lt;/h3&gt;
&lt;p&gt;Use these instructions to obtain the analysis tools on Linux machines.&lt;/p&gt;
&lt;h4 id=&#34;download-the-tooling&#34;&gt;Download the tooling&lt;/h4&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt; $ wget https://github.com/verrazzano/verrazzano/releases/download/v1.3.8/k8s-dump-cluster.sh
 $ wget https://github.com/verrazzano/verrazzano/releases/download/v1.3.8/k8s-dump-cluster.sh.sha256
 $ wget https://github.com/verrazzano/verrazzano/releases/download/v1.3.8/verrazzano-analysis-linux-amd64.tar.gz
 $ wget https://github.com/verrazzano/verrazzano/releases/download/v1.3.8/verrazzano-analysis-linux-amd64.tar.gz.sha256
&lt;/code&gt;&lt;/pre&gt;&lt;h4 id=&#34;verify-the-downloaded-files&#34;&gt;Verify the downloaded files&lt;/h4&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt; $ sha256sum -c k8s-dump-cluster.sh.sha256
 $ sha256sum -c verrazzano-analysis-linux-amd64.tar.gz.sha256
&lt;/code&gt;&lt;/pre&gt;&lt;h4 id=&#34;unpack-the-verrazzano-analysis-binary&#34;&gt;Unpack the &lt;code&gt;verrazzano-analysis&lt;/code&gt; binary&lt;/h4&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt; $ tar xvf verrazzano-analysis-linux-amd64.tar.gz
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;div class=&#34;tab-pane fade show &#34; id=&#34;aebfdc&#34; role=&#34;tabpanel&#34; aria-labelledby=&#34;nav-1&#34;&gt;

	&lt;br&gt;
&lt;h3 id=&#34;mac-instructions&#34;&gt;Mac Instructions&lt;/h3&gt;
&lt;p&gt;Use these instructions to obtain the analysis tools on Mac machines.&lt;/p&gt;
&lt;h4 id=&#34;download-the-tooling&#34;&gt;Download the tooling&lt;/h4&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt; $ wget https://github.com/verrazzano/verrazzano/releases/download/v1.3.8/k8s-dump-cluster.sh
 $ wget https://github.com/verrazzano/verrazzano/releases/download/v1.3.8/k8s-dump-cluster.sh.sha256
 $ wget https://github.com/verrazzano/verrazzano/releases/download/v1.3.8/verrazzano-analysis-darwin-amd64.tar.gz
 $ wget https://github.com/verrazzano/verrazzano/releases/download/v1.3.8/verrazzano-analysis-darwin-amd64.tar.gz.sha256
&lt;/code&gt;&lt;/pre&gt;&lt;h4 id=&#34;verify-the-downloaded-files&#34;&gt;Verify the downloaded files&lt;/h4&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt; $ shasum -a 256 -c k8s-dump-cluster.sh.sha256
 $ shasum -a 256 -c verrazzano-analysis-darwin-amd64.tar.gz.sha256
&lt;/code&gt;&lt;/pre&gt;&lt;h4 id=&#34;unpack-the-verrazzano-analysis-binary&#34;&gt;Unpack the &lt;code&gt;verrazzano-analysis&lt;/code&gt; binary&lt;/h4&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt; $ tar xvf verrazzano-analysis-darwin-amd64.tar.gz
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;/div&gt;
&lt;h2 id=&#34;use-the-k8s-dump-clustersh-tool&#34;&gt;Use the &lt;code&gt;k8s-dump-cluster.sh&lt;/code&gt; tool&lt;/h2&gt;
&lt;p&gt;The &lt;code&gt;k8s-dump-cluster.sh&lt;/code&gt; tool is a shell script which runs various &lt;code&gt;kubectl&lt;/code&gt; and &lt;code&gt;helm&lt;/code&gt; commands against a cluster.&lt;/p&gt;
&lt;p&gt;Note that the data captured by this script might include sensitive information. This data is under your control; you can choose whether to share it.&lt;/p&gt;
&lt;p&gt;The directory structure created by the &lt;code&gt;k8s-dump-cluster.sh&lt;/code&gt; tool, for a specific cluster dump, appears as follows:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;$ CAPTURE_DIR
  cluster-dump
    directory per namespace (a directory at this level is assumed to represent a namespace)
      acme-orders.json
      application-configurations.json
      certificate-requests.json
      cluster-role-bindings.json
      cluster-roles.json
      cluster-roles.json
      coherence.json
      components.json
      {CONFIGNAME}.configmap (a file at this level for each configmap in the namespace)
      daemonsets.json
      deployments.json
      events.json
      gateways.json
      ingress-traits.json
      jobs.json
      multicluster-application-configurations.json
      multicluster-components.json
      multicluster-config-maps.json
      multicluster-logging-scopes.json
      multicluster-secrets.json
      namespace.json
      persistent-volume-claims.json
      persistent-volumes.json
      pods.json
      replicasets.json
      replication-controllers.json
      role-bindings.json
      services.json
      verrazzano-managed-clusters.json
      verrazzano-projects.json
      verrazzano_resources.json
      virtualservices.json
      weblogic-domains.json
      directory per pod (a directory at this level is assumed to represent a specific pod)
        logs.txt (includes logs for all containers and initContainers)
    api-resources.out
    application-configurations.json
    cluster-issuers.txt
    coherence.json
    configmap_list.out
    crd.json
    es_indexes.out
    gateways.json
    helm-ls.json
    helm-version.out
    images-on-nodes.csv
    ingress.json
    ingress-traits.json
    kubectl-version.json
    namespace_list.out
    network-policies.json
    network-policies.txt
    nodes.json
    pv.json
    verrazzano_resources.out
    virtualservices.json
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The script shows the &lt;code&gt;kubectl&lt;/code&gt; and &lt;code&gt;helm&lt;/code&gt; commands which are run. The basic structure, shown previously, is formed by running the command, &lt;code&gt;$ kubectl cluster-info dump --all-namespaces&lt;/code&gt;, with additional data captured into that directory structure.&lt;/p&gt;
&lt;p&gt;To perform a dump of a cluster into a directory named &lt;code&gt;my-cluster-dump&lt;/code&gt;:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;$ sh k8s-dump-cluster.sh -d my-cluster-dump&lt;/code&gt;&lt;/p&gt;
&lt;h2 id=&#34;use-the-verrazzano-analysis-tool&#34;&gt;Use the &lt;code&gt;verrazzano-analysis&lt;/code&gt; tool&lt;/h2&gt;
&lt;p&gt;The &lt;code&gt;verrazzano-analysis&lt;/code&gt; tool analyzes data from a cluster dump captured using &lt;code&gt;k8s-dump-cluster.sh&lt;/code&gt;, reports the issues found, and prescribes related actions to take.  These tools are continually evolving with regard to what may be captured, the knowledge base of issues and actions, and the types of analysis that can be performed.&lt;/p&gt;
&lt;p&gt;Users, developers, and Continuous Integration (CI) can use this tooling to quickly identify the root cause of encountered problems, determine mitigation actions, and provide a sharable report with other users or tooling.&lt;/p&gt;
&lt;p&gt;The data that the analysis examines follows the structure created by the corresponding capture tooling. For example, &lt;code&gt;k8s-dump-cluster.sh&lt;/code&gt; dumps a cluster into a specific structure, which might contain data that you do not want to share. The tooling analyzes the data and provides you with a report, which identifies issues and provides you with actions to take.&lt;/p&gt;
&lt;p&gt;The &lt;code&gt;verrazzano-analysis&lt;/code&gt; tool will find and analyze all cluster dump directories found under a specified root directory. This lets you create a directory to hold the cluster dumps of related clusters into sub-directories which the tool can analyze.&lt;/p&gt;
&lt;p&gt;For example:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;my-cluster-dumps
    CAPTURE_DIR-1
        cluster-dump
            ...
    CAPTURE_DIR-2
        cluster-dump
            ...
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The tool analyzes each cluster dump directory found; you need to provide only the single root directory.&lt;/p&gt;
&lt;p&gt;To perform an analysis of the clusters:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;$ verrazzano-analysis my-cluster-dumps&lt;/code&gt;&lt;/p&gt;
&lt;h3 id=&#34;usage-information&#34;&gt;Usage information&lt;/h3&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;Usage: verrazzano-analysis [options] captured-data-directory
&lt;/code&gt;&lt;/pre&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Parameter&lt;/th&gt;
&lt;th&gt;Definition&lt;/th&gt;
&lt;th&gt;Default&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;-actions&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Include actions in the report.&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;-help&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Display usage help.&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;-info&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Include informational messages.&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;-minConfidence&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Minimum confidence threshold to report for issues, 0-10.&lt;/td&gt;
&lt;td&gt;&lt;code&gt;0&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;-minImpact&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Minimum impact threshold to report for issues, 0-10.&lt;/td&gt;
&lt;td&gt;&lt;code&gt;0&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;-reportFile&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Name of report output file.&lt;/td&gt;
&lt;td&gt;Output to stdout.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;-support&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Include support data in the report.&lt;/td&gt;
&lt;td&gt;&lt;code&gt;true&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;-version&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Display tool version.&lt;/td&gt;
&lt;td&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;

      </description>
    </item>
    
    <item>
      <title>Docs: Analysis Advice</title>
      <link>/docs/troubleshooting/diagnostictools/analysisadvice/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/troubleshooting/diagnostictools/analysisadvice/</guid>
      <description>
        
        
        
      </description>
    </item>
    
  </channel>
</rss>
