Local adaptation is often facilitated by loci clustered in relatively few regions of the genome, termed genomic islands of divergence. However, the mechanisms that create, mold, and maintain these islands are poorly understood. Here, we use sockeye salmon as a model species to investigate the mechanisms responsible for creating islands of divergence linked to adaptive variation. Previous research suggests that multiple islands are involved in adaptive radiation of sockeye salmon. However, these studies were based on low-density genomic methods that genotyped tens to thousands of loci, making it difficult to elucidate the mechanisms responsible for islands. We used whole genome resequencing to genotype millions of loci to investigate these mechanisms. We discovered 64 islands, 16 of which were shared between two isolated populations; these 16 islands were clustered in four genomic regions. Characterization of the shared regions suggested that three of four were likely created by chromosomal inversions, while the other was created by processes not involving structural variation. Additionally, all four regions were relatively small (< 600 kb), suggesting inversions and other low recombination regions do not have to span megabases to be important for adaptive divergence. In sum, our study demonstrates that heterogeneous selection can lead to a mosaic of islands created by different mechanisms within the same genome. Future studies should continue to investigate how gene flow, selection, and the architecture of genetic traits interact to influence the genomic landscape of adaptive divergence.